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

Najlepsze praktyki bezpieczeństwa kluczy API

Zaktualizowano: 3 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żytku wyłącznie przez Ciebie. Udostępnianie kluczy API jest niezgodne z Warunkami użytkowania.

Gdy zaczynasz eksperymentować, możesz chcieć rozszerzyć dostęp do API na swój zespół. OpenAI nie wspiera współdzielenia 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 też przypisywać uprawnienia do poszczególnych kluczy API.

2. Nigdy nie wdrażaj swojego klucza w środowiskach po stronie klienta, takich jak przeglądarki czy aplikacje mobilne.

Ujawnienie klucza OpenAI API w środowiskach po stronie klienta, takich jak przeglądarki czy aplikacje mobilne, pozwala złośliwym użytkownikom przejąć ten klucz i wysyłać żądania w Twoim imieniu — co może prowadzić do nieoczekiwanych opłat lub naruszenia niektórych danych konta. Żądania zawsze powinny być kierowane przez Twój własny serwer backendowy, gdzie możesz bezpiecznie przechowywać klucz API.

3. Nigdy nie zapisuj swojego klucza w repozytorium

Zapisanie klucza API w kodzie źródłowym jest częstą drogą do naruszenia bezpieczeństwa poświadczeń. W przypadku publicznych repozytoriów jest to częsty sposób, w jaki możesz nieświadomie udostępnić swój klucz w internecie. Prywatne repozytoria są bezpieczniejsze, ale wyciek danych także może spowodować ujawnienie Twoich kluczy. Z tych powodów zdecydowanie zalecamy używanie zmiennych środowiskowych jako proaktywnego środka bezpieczeństwa kluczy.

4. 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 ustawienie nazwy zmiennej na OPENAI_API_KEY. Zachowując tę samą nazwę zmiennej w całym zespole, możesz zapisywać i udostępniać kod bez ryzyka ujawnienia klucza API.

Konfiguracja Windows

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

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

setx OPENAI_API_KEY "<yourkey>"

To zadziała w przyszłych oknach wiersza cmd, więc aby użyć tej zmiennej z curl, musisz otworzyć nowe okno. Możesz sprawdzić, czy ta zmienna została ustawiona, otwierając nowe okno wiersza cmd i wpisując

echo %OPENAI_API_KEY%

Opcja 2: Ustaw zmienną środowiskową „OPENAI_API_KEY” przez Panel sterowania

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

Windows 10 System settings with Advanced system settings highlighted in Control Panel

2. Wybierz Zmienne środowiskowe...

Windows System Properties Advanced tab with Environment Variables button highlighted

3. Wybierz Nowa… w sekcji zmiennych użytkownika (u góry). Dodaj parę nazwa/wartość klucza, zastępując <yourkey> swoim kluczem API.

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

Konfiguracja Linux / MacOS

Opcja 1: Ustaw zmienną środowiskową „OPENAI_API_KEY” przy użyciu zsh

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

echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc

2. Zaktualizuj powłokę nową zmienną:

source ~/.zshrc

3. Potwierdź ustawienie zmiennej środowiskowej za pomocą poniższego polecenia.

echo $OPENAI_API_KEY

Wynikiem będzie wartość Twojego klucza API.

Opcja 2: Ustaw zmienną środowiskową „OPENAI_API_KEY” przy użyciu bash

Postępuj zgodnie ze wskazówkami z opcji 1, zastępując .zshrc przez .bash_profile.

Gotowe! Teraz możesz odwoływać się do klucza w curl lub załadować go w Pythonie:

import os
import openai

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

5. Używaj usługi zarządzania kluczami

Dostępnych jest wiele produktów do bezpiecznego zarządzania tajnymi kluczami API. Narzędzia te pozwalają kontrolować dostęp do kluczy i poprawiają ogólne bezpieczeństwo danych. W przypadku naruszenia danych w Twojej aplikacji klucz(e) nie zostałyby ujawnione, ponieważ byłyby zaszyfrowane i zarządzane w całkowicie odrębnej lokalizacji.

Zespołom wdrażającym aplikacje na produkcję zalecamy rozważenie jednej z tych usług.

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

Przejęty klucz API pozwala komuś uzyskać dostęp do limitu Twojego konta bez Twojej zgody. Może to skutkować utratą danych, nieoczekiwanymi opłatami, wyczerpaniem miesięcznego limitu oraz przerwaniem dostępu do API.

Użycie Twojego zespołu można śledzić na stronie Użycie. Jeśli kiedykolwiek będziesz mieć obawy dotyczące nadużyć, możesz podjąć kilka działań, aby chronić swoje konto:

  • Przejrzyj użycie, aby sprawdzić, czy odpowiada pracy Twojego zespołu. W przypadku użytkowników należących do wielu organizacji (np. firmowej i osobistej) upewnij się, że użytkownik włączył śledzenie i ustawił domyślną organizację dla użycia i śledzenia.

  • Jeśli uważasz, że Twój klucz wyciekł, natychmiast zrotuj go na stronie Klucze API. Klienci z aplikacjami na produkcji będą musieli odpowiednio zaktualizować wartości kluczy.

  • Skontaktuj się z nami przez help.openai.com w celu dalszego zbadania sprawy.

7. 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 OpenAI API. Po włączeniu dozwolone są tylko żądania z skonfigurowanych adresów lub zakresów IP, a wszystkie pozostałe są odrzucane — nawet jeśli zawierają prawidłowy klucz API.

Dodaje to dodatkową warstwę ochrony, zapewniając, że dostęp do API jest możliwy tylko z zaufanej infrastruktury, takiej jak Twoje serwery backendowe lub środowisko chmurowe.

Aby uzyskać więcej informacji, zobacz artykuł o liście dozwolonych adresów IP dla OpenAI API.

Czy ten artykuł był pomocny?