OpenAI Mutual TLS leidžia organizacijoms sukonfigūruoti papildomą saugos sluoksnį savo OpenAI API srautui. Sukonfigūravus, API užklausos turėtų būti siunčiamos į https://mtls.api.openai.com (arba https://mtls-eu.api.openai.com ES duomenų saugojimo vietos klientams), o srautas bus priimamas tik pateikus tinkamą API raktą ir kliento sertifikatą. mTLS netaikoma https://platform.openai.com ataskaitų sričiai. Ši funkcija šiuo metu yra beta versijos.
Kaip nustatyti mTLS integraciją?
Nustatymų naršymo juostoje matysite skirtuką „Abipusis TLS“.
Įkelti sertifikatą
Aktyvinti sertifikatą
Įkėlus sertifikatą, kitas veiksmas yra aktyvinti sertifikatą. Kai sertifikatas aktyvinamas projektui, visoms į tą projektą siunčiamoms API užklausoms taip pat pradedamas reikalauti atitinkamas kliento sertifikatas. Jei projektui aktyvinti keli sertifikatai, galite pateikti bet kurį atitinkamą kliento sertifikatą. Jei sertifikatas aktyvintas organizacijai, jis bus taikomas visoms API užklausoms ir bus „paveldėtas“ visų projektų.
CA sertifikatų reikalavimai
Galite įkelti bet kurį X.509 CA sertifikatą PEM formatu, atitinkantį šiuos reikalavimus:
tiesiogiai pasirašo kliento sertifikatus, kuriuos planuojate naudoti, arba yra jūsų kliento pateiktos galiojančios sertifikatų grandinės patikimumo pagrindas.
turi plėtinius Certificate Authority, Subject Key Identifier ir Authority Key Identifier (KeyIdentifier formatu)
turi Key Usage: „Certificate Sign, CRL Sign“ teises
jo galiojimas nesibaigia per artimiausią 1 dieną
bendras sertifikato dydis turi būti mažesnis nei 16 kb.
Kliento sertifikatų reikalavimai
Jei jūsų organizacijai įjungtas sertifikatų grandinės palaikymas, klientas gali pateikti galutinį kliento sertifikatą ir tarpinius sertifikatus, reikalingus galiojančiai grandinei iki aktyvaus įkelto sertifikato sudaryti. Kitu atveju kliento sertifikatai turi būti tiesiogiai pasirašyti sertifikatais, kuriuos įkėlėte iš anksto. Be to, jūsų kliento sertifikatai turi atitikti šiuos reikalavimus:
turi plėtinius Subject Key Identifier ir Authority Key Identifier (KeyIdentifier formatu)
turi Key Usage: „Digital Signature, Key Encipherment“ teises
turi Extended Key Usage: „TLS Web Client Authentication“ teisę
turi Subject Alternate Name plėtinį
Sertifikatų grandinės palaikymas API mTLS
Sertifikatų grandinės palaikymas leidžia klientui pateikti galutinį kliento sertifikatą su tarpiniais sertifikatais, reikalingais galiojančiai grandinei iki aktyvaus įkelto sertifikato sudaryti.
Tai gali leisti keisti tarpinius sertifikatus neįkeliant kiekvieno naujo tarpinio sertifikato, jei aktyvus įkeltas sertifikatas, naudojamas kaip patikimumo pagrindas, lieka galiojantis.
Sertifikatų grandinės palaikymas šiuo metu suteikiamas pagal prašymą. Norėdami paprašyti prieigos, susisiekite su savo paskyros vadovu arba atidarykite pagalbos užklausą.
Jūsų klientas turi pateikti visus reikiamus tarpinius sertifikatus. OpenAI negauna trūkstamų tarpinių sertifikatų per AIA. CRL ir OCSP patikros vis dar nepalaikomos.
DUK
Ar galiu konfigūruoti mTLS per API?
Taip — daugiau informacijos rasite API nuorodoje adresu https://platform.openai.com/docs/api-reference/.
Kokie prieigos taškai palaiko mTLS?
Šiuo beta laikotarpiu mTLS oficialiai palaikomas šiuose prieigos taškuose
/v1/chat/completions (with all supported extensions e.g. image, audio, streaming, etc.)/v1/completions/v1/embeddings/v1/audio/transcriptions/v1/audio/speech/v1/files/v1/batches/v1/responses/v1/images/v1/moderations/v1/realtime (via server-side web sockets)/v1/fine_tuning/v1/tunnels
Kaip su užklausa siųsti kliento sertifikatus?
cURL užklausoje galite naudoti parinktis --cert ir --key (žr. vadovo puslapį čia). Daugumoje kitų HTTP klientų taip pat yra būdų perduoti kliento sertifikatus. Pavyzdžiai: requests naudojant Python, fetch naudojant JS. Naudojant mūsų oficialius SDK taip pat galima pakeisti HTTP klientą — Python pavyzdį rasite čia.
Kai įjungtas sertifikatų grandinės palaikymas, sukonfigūruokite HTTP klientą taip, kad jis pateiktų galutinį kliento sertifikatą ir visus reikalingus tarpinius sertifikatus. Tiksli konfigūracija priklauso nuo jūsų HTTP kliento.
Prieš taikydami mTLS gamybiniam srautui, įsitikinkite, kad naudojamas HTTP klientas tinkamai veikia su kliento sertifikatų užklausomis (kai kurie, pavyzdžiui, WebSockets tam tikrose naršyklėse, neveikia tinkamai). Atkreipkite dėmesį, kad mūsų serveris kliento sertifikato užklausoje nepateikia certificate_authorities sąrašo.
Kas gali pasiekti ir keisti sertifikatus?
Per https://platform.openai.com/settings/organization/mtls ataskaitų srities UI organizacijos savininkai gali pasiekti ir keisti sertifikatus. Bet kas, turintis administratoriaus API raktą (https://platform.openai.com/settings/organization/admin-keys), taip pat gali pasiekti ir keisti sertifikatus, tačiau atminkite — jei aktyvinsite Mutual TLS organizacijos lygiu, šiems API užklausoms taip pat privalomai taikysite sertifikatus. Visi mTLS pakeitimai matomi audito žurnaluose.
Kiek sertifikatų galiu turėti?
Kiekviena organizacija gali įkelti iki 50 sertifikatų, kuriuos galima bendrinti tarp projektų, bet ne su kitomis organizacijomis. Vienu metu galite atomiškai aktyvinti arba deaktyvinti sertifikatą 10 projektų. Arba vienu metu galite aktyvinti arba deaktyvinti 10 sertifikatų savo organizacijoje arba 1 konkrečiame projekte.
Ar galiu atnaujinti arba ištrinti sertifikatus?
Galite atnaujinti savo sertifikatų pavadinimus, bet ne turinį. Taip pat galite ištrinti sertifikatus, jei jie šiuo metu nėra aktyvūs jokioje aprėptyje.
Kaip veikia sertifikatų atšaukimas?
Šiuo metu nepalaikome CRL arba OCSP patikrų. Vietoj to rekomenduojama ištrinti arba keisti API raktą. Taip pat galite pakeisti CA sertifikatus arba naudoti trumpesnio galiojimo kliento sertifikatus.
Ar galiu naudoti ilgesnes sertifikatų grandines?
Taip, jei jūsų organizacijai įjungtas sertifikatų grandinės palaikymas. Jūsų klientas turi pateikti galutinį kliento sertifikatą ir visus reikiamus tarpinius sertifikatus, kad OpenAI galėtų patikrinti grandinę iki aktyvaus įkelto sertifikato. Norėdami paprašyti prieigos, susisiekite su savo paskyros vadovu arba atidarykite pagalbos užklausą.
Kokia rekomenduojama sąranka?
Pradžioje konfigūruojant šią funkciją rekomenduojame pradėti nuo parengiamojo projekto, kuris neteikia oficialaus gamybinio srauto. Pasinaudokite šia proga įsitikinti, kad jūsų sertifikatai tinkamai nustatyti jūsų įrenginiuose ir kad galite sėkmingai siųsti API srautą. Be to, rekomenduojame pasitarti su savo organizacijos saugos komanda, kad geriausiai suprastumėte savo poreikius.
Papildomas palaikymas
mTLS funkciją galite visiškai savarankiškai valdyti per ataskaitų sritį ir API. Tačiau jei iš pradžių norėtumėte įjungti mTLS šešėliniu režimu, susisiekite su savo paskyros vadovu arba atidarykite pagalbos užklausą pradėdami naują pokalbį šio puslapio apatiniame dešiniajame kampe.
Priedas: terminologija
CA sertifikatas: vienas iš jūsų patikimų sertifikatų, naudojamas kliento sertifikatams tikrinti. Jis gali tiesiogiai pasirašyti kliento sertifikatus, kuriuos siunčiate su užklausomis, arba būti jūsų kliento pateiktos sertifikatų grandinės patikimumo pagrindas. Galite naudoti savarankiškai pasirašytus CA sertifikatus.
Įkelti sertifikatą: CA sertifikato pridėjimas prie paskyros. mTLS dar niekur nereikalauja jo naudoti, bet galite pradėti jį konfigūruoti.
Aprėptis: konkretus projektas arba visa jūsų organizacija.
Aktyvinti CA sertifikatą aprėptyje: įjungia mTLS konkrečiai tai aprėpčiai, o visose API raktu pagrįstose užklausose turi būti kliento sertifikatas, kurį galima patikrinti pagal aktyvų CA sertifikatą.
Išaktyvinti CA sertifikatą aprėptyje: išjungia šio sertifikato naudojimą užklausoms šioje aprėptyje tikrinti. Jei aprėptyje nebelieka sertifikatų, mTLS iš esmės išjungiamas.
Sertifikato paveldėjimas: jei aktyvinsite sertifikatą organizacijai, jis taip pat bus aktyvintas visuose projektuose.
