OpenAI
Ova stranica je mašinski prevedena. Pogledaj originalni članak na engleskom jeziku.

Najbolje prakse za sigurnost API ključeva

Zaštitite svoje API ključeve sigurnom pohranom, kontrolama pristupa, nadzorom, rotacijom i ograničenjima IP adresa.

Ažurirano: 15 days ago

1. Uvijek koristite zaseban API ključ za svakog člana tima na svom računu.

API ključ je jedinstveni kod koji identificira vaše zahtjeve prema API-ju. Vaš API ključ namijenjen je samo vama. Dijeljenje API ključeva protivno je Uslovima upotrebe.

Kada počnete isprobavati API, možda ćete poželjeti omogućiti pristup i svom timu. OpenAI ne podržava dijeljenje API ključeva. Pozovite nove članove na svoj račun sa stranice Članovi i oni će ubrzo nakon prijave dobiti vlastiti jedinstveni ključ. Možete i dodijeliti dozvole pojedinačnim API ključevima.

2. Kreirajte API ključeve s datumom isteka i uspostavite proces njihove redovne zamjene

Projektni ključevi mogu se kreirati s datumom isteka, nakon kojeg će svi zahtjevi poslani tim ključevima biti odbijeni. Izričito preporučujemo da kreirate ključeve s datumom isteka i uspostavite proces njihove redovne zamjene. Prije nego što ključ istekne, kreirajte novi, ažurirajte aplikacije tako da ga koriste i opozovite stari ključ nakon što provjerite da novi radi. Ove prakse mogu znatno ublažiti posljedice otkrivanja API ključeva neovlaštenim osobama.

Administratori mogu nametnuti maksimalni rok važenja API ključeva na nivou organizacije ili projekta u postavkama platforme. Novi ključevi moraju biti podešeni unutar dozvoljenih ograničenja, čime se sprečava da ostanu važeći neograničeno dugo. Ograničenja na nivou projekta ne mogu premašiti ograničenje organizacije.

Za podržana radna opterećenja koristite federaciju identiteta radnih opterećenja umjesto pohranjivanja OpenAI API ključa s dugim rokom važenja. Vaše radno opterećenje razmjenjuje identitet pouzdanog pružaoca usluga za OpenAI pristupni token s kratkim rokom važenja. Podesite namjenski servisni račun samo s dozvolama koje su potrebne radnom opterećenju.

3. Nikada ne ugrađujte ključ u klijentska okruženja poput preglednika ili mobilnih aplikacija.

Izlaganje vašeg OpenAI API ključa u klijentskim okruženjima poput preglednika ili mobilnih aplikacija omogućava zlonamjernim korisnicima da preuzmu taj ključ i šalju zahtjeve u vaše ime, što može dovesti do neočekivanih troškova ili ugrožavanja određenih podataka na računu. Zahtjeve treba uvijek usmjeravati preko vlastitog pozadinskog servera, na kojem možete sigurno čuvati svoj API ključ.

4. Nikada ne pohranjujte ključ u repozitorij

Pohranjivanje API ključa u izvorni kôd čest je način kompromitovanja pristupnih podataka. Ako imate javne repozitorije, na ovaj način možete nesvjesno podijeliti ključ s cijelim internetom. Privatni repozitoriji su sigurniji, ali curenje podataka također može dovesti do otkrivanja vaših ključeva. Zbog toga izričito preporučujemo korištenje varijabli okruženja kao proaktivne mjere zaštite ključeva.

5. Koristite varijable okruženja umjesto direktnog navođenja API ključa

Postavljanje na Windowsu

Varijabla okruženja je varijabla koja se postavlja u operativnom sistemu, a ne unutar aplikacije. Sastoji se od naziva i vrijednosti. Preporučujemo da varijablu nazovete OPENAI_API_KEY. Ako svi u timu koriste isti naziv varijable, možete pohranjivati izmjene koda u repozitorij i dijeliti kod bez rizika od otkrivanja API ključa.


Opcija 1: Postavite varijablu okruženja „OPENAI_API_KEY“ putem komandne linije cmd

Pokrenite sljedeće u komandnoj liniji cmd, pri čemu <yourkey> zamijenite svojim API ključem:

setx OPENAI_API_KEY "<yourkey>"

Ovo će se primjenjivati na buduće prozore komandne linije cmd, pa morate otvoriti novi prozor da biste tu varijablu koristili uz curl. Da biste provjerili je li varijabla postavljena, otvorite novi prozor komandne linije cmd i unesite

echo %OPENAI_API_KEY%

Opcija 2: Postavite varijablu okruženja „OPENAI_API_KEY“ putem kontrolne ploče

  1. Otvorite svojstva sistema i odaberite Napredne postavke sistema

Windows 10 System settings with Advanced system settings highlighted in Control Panel
  1. Odaberite Varijable okruženja...

Windows System Properties Advanced tab with Environment Variables button highlighted
  1. Odaberite Novo… u odjeljku Korisničke varijable (pri vrhu). Dodajte par koji čine naziv i vrijednost ključa, pri čemu <yourkey> zamijenite svojim API ključem.

Naziv varijable: OPENAI_API_KEY
Vrijednost varijable: <yourkey>

Postavljanje na Linuxu i macOS-u

Opcija 1: Postavite varijablu okruženja „OPENAI_API_KEY“ pomoću ljuske zsh

  1. Pokrenite sljedeću naredbu u terminalu, pri čemu yourkey zamijenite svojim API ključem.

echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc
  1. Ažurirajte shell novom varijablom:

source ~/.zshrc
  1. Potvrdite da ste postavili varijablu okruženja pomoću sljedeće naredbe.

echo $OPENAI_API_KEY

Vrijednost vašeg API ključa bit će dobijeni izlaz.


Opcija 2: Postavite varijablu okruženja ‘OPENAI_API_KEY’ koristeći bash

Slijedite upute iz Opcije 1, zamjenjujući .zshrc sa .bash_profile.

Spremni ste! Sada možete referencirati ključ u curlu ili ga učitati u Pythonu:

import os
import openai

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

6. Koristite uslugu za upravljanje ključevima

Dostupni su razni proizvodi za sigurno upravljanje tajnim API ključevima. Ovi alati omogućavaju vam da kontrolišete pristup ključevima i poboljšate ukupnu sigurnost podataka. Ako dođe do neovlaštenog pristupa podacima vaše aplikacije, vaši ključevi ne bi bili ugroženi jer bi bili šifrirani i njima bi se upravljalo na potpuno odvojenoj lokaciji.

Timovima koji puštaju aplikacije u produkciju preporučujemo da razmotre neku od ovih usluga.

7. Pratite upotrebu na svom računu i po potrebi zamijenite ključeve

Postavite mjesečna ograničenja potrošnje za svoju organizaciju ili projekte i uključite njihovo strogo provođenje kako biste ograničili neočekivane troškove ako ključ procuri. Sama upozorenja o potrošnji ne zaustavljaju API promet. Strogo provođenje ograničenja može blokirati legitimne zahtjeve, a potrošnja može neznatno premašiti ograničenje jer se ono ne provodi trenutno.

Kompromitovani API ključ omogućava drugoj osobi da koristi kvotu vašeg računa bez vašeg pristanka. To može dovesti do gubitka podataka, neočekivanih troškova, iscrpljivanja mjesečne kvote i prekida pristupa API-ju.

Upotrebu svojih timova možete pratiti na stranici Upotreba. Ako posumnjate na zloupotrebu, možete poduzeti nekoliko koraka da zaštitite svoj račun:

  • Pregledajte podatke o upotrebi i provjerite odgovaraju li radu vašeg tima. Za korisnike koji pripadaju većem broju organizacija (npr. poslovnoj i ličnoj), provjerite jesu li uključili praćenje i postavili zadanu organizaciju za upotrebu i praćenje.

  • Ako smatrate da je vaš ključ procurio, odmah ga zamijenite na stranici API ključevi. Ako imate aplikacije u produkciji, morat ćete u njima ažurirati vrijednosti ključeva.

  • Obratite nam se putem stranice help.openai.com radi daljnje istrage.

8. Zaštitite pristup API-ju mrežnim kontrolama

Lista dozvoljenih IP adresa omogućava vam da ograničite s kojih se IP adresa može pristupiti vašem OpenAI API-ju. Kada je ova opcija uključena, dozvoljeni su samo zahtjevi s navedenih IP adresa ili raspona, a svi ostali se odbijaju — čak i ako sadrže važeći API ključ.

Time se dodaje još jedan sloj zaštite jer se vašem API-ju može pristupiti samo iz pouzdane infrastrukture, poput vaših pozadinskih servera ili okruženja u oblaku.

Više informacija potražite u članku o listi dozvoljenih IP adresa za OpenAI API.

Private Link je još jedna opcija za organizacije kojima je potreban pristup putem privatne mreže. Omogućava radnim opterećenjima u Azureu da se povežu s regionalnim krajnjim tačkama OpenAI API-ja putem usluge Azure Private Link. Za pristup se obratite svom predstavniku kompanije OpenAI ili prodajnom timu. Autentifikacija za API i dalje je obavezna, a Private Link nije kompatibilan s listom dozvoljenih IP adresa ni s uzajamnim TLS-om (mTLS). Detalje o postavljanju potražite u vodiču za Private Link.

Da li je ovaj članak bio koristan?