OpenAI
Ta strona została przetłumaczona maszynowo. Wyświetl oryginalny artykuł w języku angielskim.

Najlepsze praktyki bezpieczeństwa kluczy API

Chroń klucze API dzięki bezpiecznemu przechowywaniu, kontroli dostępu, monitorowaniu, rotacji i ograniczeniom adresów IP.

Zaktualizowano: 4 days ago

1. Zawsze używaj unikalnego klucza API dla każdego członka zespołu na swoim koncie.

Klucz API to unikalny kod, który identyfikuje Twoje żądania do API. Twój klucz API jest przeznaczony do użycia przez Ciebie. Udostępnianie kluczy API jest niezgodne z Warunkami użytkowania.

Gdy zaczniesz eksperymentować, możesz chcieć rozszerzyć dostęp do API na swój zespół. OpenAI nie wspiera udostępniania kluczy API. Zaproś nowych członków do swojego konta ze strony Członkowie, a po zalogowaniu szybko otrzymają własny unikalny klucz. Możesz także przypisywać uprawnienia do poszczególnych kluczy API.

2. Twórz klucze API z datą wygaśnięcia i stosuj procedurę ich rotacji

Klucze projektu można tworzyć z datą wygaśnięcia, po której wszystkie wysyłane z ich użyciem żądania będą odrzucane. Zdecydowanie zalecamy tworzenie kluczy z datą wygaśnięcia i ustanowienie procedury ich regularnej rotacji. Zanim klucz wygaśnie, utwórz nowy, zaktualizuj aplikacje, aby z niego korzystały, a po sprawdzeniu jego działania unieważnij stary klucz. Te praktyki mogą znacznie ograniczyć skutki wycieku kluczy API.

Administratorzy mogą określić maksymalny okres ważności klucza API na poziomie organizacji lub projektu w ustawieniach platformy. Nowe klucze muszą mieścić się w dozwolonych limitach, dzięki czemu nie mogą pozostawać ważne bezterminowo. Limit projektu nie może przekraczać limitu organizacji.

3. Nigdy nie wdrażaj klucza w środowiskach klienckich, takich jak przeglądarki lub aplikacje mobilne.

Ujawnienie klucza API OpenAI w środowisku klienckim, takim jak przeglądarka lub aplikacja mobilna, pozwala złośliwym użytkownikom przejąć go i wysyłać żądania w Twoim imieniu. Może to prowadzić do nieoczekiwanych opłat lub naruszenia bezpieczeństwa niektórych danych konta. Żądania należy zawsze kierować przez własny serwer zaplecza, na którym można bezpiecznie przechowywać klucz API.

4. Nigdy nie zapisuj klucza w repozytorium

Zapisywanie klucza API w kodzie źródłowym jest częstą przyczyną przejęcia danych uwierzytelniających. W przypadku publicznych repozytoriów jest to częsty sposób nieświadomego udostępnienia klucza w internecie. Prywatne repozytoria są bezpieczniejsze, ale naruszenie ochrony danych również może doprowadzić do wycieku kluczy. Z tych powodów zdecydowanie zalecamy używanie zmiennych środowiskowych jako aktywnego środka ochrony kluczy.

5. Używaj zmiennych środowiskowych zamiast klucza API

Zmienna środowiskowa to zmienna ustawiana w systemie operacyjnym, a nie w aplikacji. Składa się z nazwy i wartości. Zalecamy nadanie zmiennej nazwy OPENAI_API_KEY. Stosowanie tej samej nazwy zmiennej w całym zespole pozwala zapisywać i udostępniać kod bez ryzyka ujawnienia klucza API.


Konfiguracja w systemie Windows

Opcja 1: Ustaw zmienną środowiskową „OPENAI_API_KEY” za pomocą wiersza polecenia cmd

Uruchom poniższe polecenie w wierszu polecenia cmd, zastępując <yourkey> swoim kluczem API:

setx OPENAI_API_KEY "<yourkey>"

Zmiana będzie obowiązywać w kolejnych oknach wiersza polecenia cmd, dlatego aby użyć tej zmiennej z curl, musisz otworzyć nowe okno. Aby sprawdzić, czy zmienna została ustawiona, otwórz nowe okno wiersza polecenia cmd i wpisz

echo %OPENAI_API_KEY%

Opcja 2: Ustaw zmienną środowiskową „OPENAI_API_KEY” w Panelu sterowania

  1. Otwórz właściwości Systemu i wybierz Zaawansowane ustawienia systemu

Windows 10 System settings with Advanced system settings highlighted in Control Panel
  1. Wybierz Zmienne środowiskowe...

Windows System Properties Advanced tab with Environment Variables button highlighted
  1. W sekcji Zmienne użytkownika (u góry) wybierz Nowa…. Dodaj parę nazwy i wartości klucza, zastępując <yourkey> swoim kluczem API.

Nazwa zmiennej: OPENAI_API_KEY
Wartość zmiennej: <yourkey>

Konfiguracja w systemie Linux/macOS

Opcja 1: Ustaw zmienną środowiskową „OPENAI_API_KEY” za pomocą zsh

  1. Uruchom poniższe polecenie w terminalu, zastępując yourkey swoim kluczem API.

echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc
  1. Zaktualizuj powłokę za pomocą nowej zmiennej:

source ~/.zshrc
  1. Potwierdź, że zmienna środowiskowa została ustawiona, używając następującego polecenia.

echo $OPENAI_API_KEY

Wartością Twojego klucza API będzie wynikowe wyjście.


Opcja 2: Ustaw zmienną środowiskową „OPENAI_API_KEY” za pomocą bash

Postępuj zgodnie z instrukcjami z Opcji 1, zastępując .zshrc przez .bash_profile.

Gotowe! Możesz teraz odwoływać się do klucza w curl lub wczytać go w Pythonie:

import os
import openai

openai.api_key = os.environ["OPENAI_API_KEY"]

6. Korzystaj z usługi zarządzania kluczami

Dostępne są różne produkty umożliwiające bezpieczne zarządzanie tajnymi kluczami API. Narzędzia te pozwalają kontrolować dostęp do kluczy i zwiększać ogólne bezpieczeństwo danych. W przypadku naruszenia ochrony danych aplikacji klucze nie zostaną przejęte, ponieważ są zaszyfrowane i zarządzane w całkowicie oddzielnej lokalizacji.

Zespołom wdrażającym aplikacje w środowisku produkcyjnym zalecamy rozważenie skorzystania z jednej z takich usług.

7. Monitoruj użycie konta i w razie potrzeby rotuj klucze

Przejęty klucz API pozwala innej osobie bez Twojej zgody korzystać z limitu przypisanego do Twojego konta. Może to prowadzić do utraty danych, nieoczekiwanych opłat, wyczerpania miesięcznego limitu oraz przerwania dostępu do API.

Użycie API przez zespoły można śledzić na stronie Użycie. Jeśli podejrzewasz niewłaściwe użycie, możesz podjąć kilka działań w celu ochrony konta:

  • Sprawdź użycie i upewnij się, że odpowiada ono pracy Twojego zespołu. W przypadku użytkowników należących do wielu organizacji (np. służbowej i prywatnej) upewnij się, że użytkownik włączył śledzenie i ustawił domyślną organizację na potrzeby użycia i monitorowania.

  • Jeśli podejrzewasz wyciek klucza, natychmiast przeprowadź jego rotację na stronie Klucze API. Jeśli Twoje aplikacje działają w środowisku produkcyjnym, musisz odpowiednio zaktualizować w nich wartości kluczy.

  • Aby umożliwić dalsze zbadanie sprawy, skontaktuj się z nami przez stronę help.openai.com.

8. Ogranicz dostęp do API za pomocą listy dozwolonych adresów IP

Lista dozwolonych adresów IP pozwala ograniczyć, które adresy IP mogą uzyskiwać dostęp do interfejsu API OpenAI. Po włączeniu tej funkcji akceptowane są tylko żądania ze skonfigurowanych adresów lub zakresów adresów IP, a wszystkie pozostałe są odrzucane — nawet jeśli zawierają prawidłowy klucz API.

Zapewnia to dodatkową warstwę ochrony, ponieważ dostęp do API jest możliwy tylko z zaufanej infrastruktury, takiej jak serwery zaplecza lub środowisko chmurowe.

Więcej informacji znajdziesz w artykule Lista dozwolonych adresów IP dla interfejsu API OpenAI.

Czy ten artykuł był pomocny?