OpenAI Mutual TLS umožňuje organizáciám nakonfigurovať ďalšiu vrstvu zabezpečenia pre ich prevádzku OpenAI API. Po nakonfigurovaní by sa požiadavky API mali odosielať na https://mtls.api.openai.com (alebo na https://mtls-eu.api.openai.com pre zákazníkov s rezidenciou údajov v EÚ) a prevádzka bude prijatá iba vtedy, ak bude poskytnutý správny kľúč API a klientsky certifikát. mTLS sa nevzťahuje na informačný panel https://platform.openai.com. Táto funkcia je momentálne vo fáze beta.
Ako nastavím integráciu mTLS?
Na navigačnom paneli nastavení uvidíte kartu „Mutual TLS“.
Nahrať certifikát
Aktivovať certifikát
Po nahraní certifikátu je ďalším krokom aktivácia certifikátu. Keď je certifikát pre projekt aktivovaný, všetky požiadavky API smerujúce do daného projektu začnú vyžadovať aj zodpovedajúci klientsky certifikát. Ak má projekt aktivovaných viacero certifikátov, môžete odovzdať ktorýkoľvek zodpovedajúci klientsky certifikát. Ak je certifikát aktivovaný pre organizáciu, bude sa vzťahovať na všetky požiadavky API a „zdedia“ ho všetky projekty.
Požiadavky na certifikát CA
Môžete nahrať ľubovoľný certifikát X.509 CA vo formáte PEM, ktorý spĺňa nasledujúce požiadavky:
priamo podpisuje vaše klientske certifikáty, s ktorými plánujete odosielať požiadavky
má rozšírenia Certificate Authority, Subject Key Identifier a Authority Key Identifier (vo formáte KeyIdentifier)
má oprávnenia Key Usage: „Certificate Sign, CRL Sign“
jeho platnosť nevyprší v priebehu 1 dňa
celková veľkosť certifikátu musí byť menšia než 16 kb.
Požiadavky na klientsky certifikát
Klientske certifikáty musia byť priamo podpísané certifikátmi, ktoré ste vopred nahrali. Momentálne podporujeme iba reťazce certifikátov s jednou úrovňou. Okrem toho musia vaše klientske certifikáty spĺňať nasledujúce požiadavky:
má rozšírenia Subject Key Identifier a Authority Key Identifier (vo formáte KeyIdentifier)
má oprávnenia Key Usage: „Digital Signature, Key Encipherment“
má oprávnenie Extended Key Usage: „TLS Web Client Authentication“
má rozšírenie Subject Alternate Name
Najčastejšie otázky
Môžem nakonfigurovať mTLS cez API?
Áno — ďalšie informácie nájdete v referenčnej dokumentácii API na adrese https://platform.openai.com/docs/api-reference/.
Ktoré koncové body podporujú mTLS?
Počas tohto beta obdobia je mTLS oficiálne podporované v
/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
Ako môžem odoslať klientske certifikáty so svojou požiadavkou?
Pri požiadavke cURL môžete použiť voľby --cert a --key (pozrite si manuálovú stránku tu). Vo väčšine ostatných klientov HTTP existujú tiež spôsoby, ako odovzdať klientske certifikáty. Príklady: requests v jazyku python, fetch v js. Prostredníctvom našich oficiálnych SDK podporujeme aj prepísanie klienta HTTP — príklad pre Python nájdete tu.
Pred vynútením mTLS pre produkčnú prevádzku sa uistite, že klient HTTP, ktorý používate, sa správa správne pri požiadavkách na klientske certifikáty (niektoré, napríklad WebSockets v určitých prehliadačoch, sa tak nesprávajú). Upozorňujeme, že náš server v požiadavke na klientsky certifikát neposkytuje zoznam certificate_authorities.
Kto môže pristupovať k certifikátom a upravovať ich?
Prostredníctvom používateľského rozhrania informačného panela https://platform.openai.com/settings/organization/mtls môžu k certifikátom pristupovať a upravovať ich vlastníci organizácie. Ktokoľvek s kľúčom Admin API Key (https://platform.openai.com/settings/organization/admin-keys) môže tiež pristupovať k certifikátom/upravovať ich, ale dávajte pozor — ak aktivujete Mutual TLS na úrovni organizácie, budete certifikáty vynucovať aj pri týchto požiadavkách API. Všetky zmeny mTLS sú viditeľné v auditných denníkoch.
Koľko certifikátov môžem mať?
Každá organizácia môže nahrať až 50 certifikátov, ktoré možno zdieľať medzi projektmi, ale nie s inými organizáciami. Certifikát môžete atomicky aktivovať/deaktivovať naraz pre 10 projektov. Prípadne môžete aktivovať/deaktivovať naraz 10 certifikátov pre svoju organizáciu alebo pre 1 konkrétny projekt.
Môžem certifikáty aktualizovať alebo odstrániť?
Názvy svojich certifikátov môžete aktualizovať, ale nie ich obsah. Certifikáty môžete tiež odstrániť, ak aktuálne nie sú aktívne v žiadnom rozsahu.
Ako funguje odvolanie certifikátu?
Momentálne nepodporujeme zoznamy CRL ani OCSP stapling. Odporúčanou alternatívou je namiesto toho odstrániť alebo obmeniť váš kľúč API. Môžete tiež vymeniť svoje certifikáty CA alebo použiť klientske certifikáty s kratšími obdobiami platnosti.
Môžem používať dlhšie reťazce certifikátov?
Momentálne podporujeme iba reťazce s jednou úrovňou — t. j. váš certifikát CA by mal priamo podpisovať vaše klientske certifikáty. Ak máte ďalšie otázky, obráťte sa na svojho Account Director.
Aké je odporúčané nastavenie?
Pri počiatočnom nastavovaní tejto funkcie odporúčame začať s prípravným projektom, ktorý neobsluhuje oficiálnu produkčnú prevádzku. Využite túto príležitosť na overenie, že certifikáty sú na vašich počítačoch správne nastavené a že môžete úspešne odosielať prevádzku API. Okrem toho odporúčame konzultovať s bezpečnostným tímom vašej organizácie, aby ste čo najlepšie porozumeli svojim potrebám.
Ďalšia podpora
Funkciu mTLS môžete plne obsluhovať sami cez informačný panel a API. Ak však chcete mTLS najprv povoliť v tieňovom režime, obráťte sa na svojho Account Director alebo otvorte lístok podpory spustením nového chatu v pravom dolnom rohu tejto stránky.
Príloha: Terminológia
Certifikát CA: Jeden z vašich dôveryhodných certifikátov, ktorý priamo podpísal klientske certifikáty, ktoré budete odosielať s požiadavkami. Môžete použiť aj certifikáty CA podpísané samým sebou.
Nahrať certifikát: pridanie certifikátu CA do vášho účtu. Zatiaľ sa nikde pre mTLS nevynucuje, ale môžete ho začať konfigurovať.
Rozsah: konkrétny projekt alebo celá vaša organizácia.
Aktivovať certifikát CA v rozsahu: povolí mTLS konkrétne pre tento rozsah a všetky požiadavky založené na kľúči API budú musieť vyžadovať klientsky certifikát podpísaný certifikátom CA.
Deaktivovať certifikát CA v rozsahu: zakáže používanie tohto certifikátu na overovanie požiadaviek v tomto rozsahu. Ak pre daný rozsah nezostali žiadne certifikáty, mTLS je v skutočnosti vypnuté.
Dedenie certifikátu: Ak aktivujete certifikát pre svoju organizáciu, aktivuje sa aj pre všetky projekty.
