OpenAI
Questa pagina è stata tradotta automaticamente. Visualizza l'articolo originale in inglese.

Programma beta OpenAI Mutual TLS

Aggiornato: 5 days ago

OpenAI Mutual TLS consente alle organizzazioni di configurare un ulteriore livello di sicurezza per il traffico della loro API OpenAI. Una volta configurato, le richieste API devono essere effettuate a https://mtls.api.openai.com (o a https://mtls-eu.api.openai.com per i clienti con residenza dei dati nell’UE) e il traffico sarà accettato solo se vengono forniti la chiave API e il certificato client corretti. mTLS non si applica alla dashboard https://platform.openai.com. Questa funzionalità è attualmente in beta.

Come configuro l’integrazione mTLS?

Nella barra di navigazione delle impostazioni vedrai una scheda «TLS reciproco».

Mutual TLS settings page prompting the user to upload a client certificate to enable mTLS

Carica certificato

Upload a certificate dialog for mutual TLS with name field and PEM certificate text area

Attiva certificato

Dopo aver caricato il certificato, il passaggio successivo è attivare il certificato. Una volta che un certificato è attivato per un progetto, tutte le richieste API dirette a quel progetto inizieranno a richiedere anche un certificato client corrispondente. Se un progetto ha più certificati attivati, puoi passare qualsiasi certificato client corrispondente. Se un certificato è attivato per l’organizzazione, si applicherà a tutte le richieste API e sarà “ereditato” da tutti i progetti.

Image

Requisiti dei certificati CA

Puoi caricare qualsiasi certificato CA X.509 in formato PEM che soddisfi i seguenti requisiti:

  1. firma direttamente i certificati client che intendi usare oppure funge da ancora per una catena di certificati valida presentata dal tuo client.

  2. ha le estensioni Certificate Authority, Subject Key Identifier e Authority Key Identifier (in formato KeyIdentifier)

  3. ha le autorizzazioni Key Usage: «Certificate Sign, CRL Sign»

  4. non scade entro 1 giorno

  5. la dimensione totale del certificato deve essere inferiore a 16kb.

Requisiti dei certificati client

Se il supporto per le catene di certificati è abilitato per la tua organizzazione, il tuo client può presentare un certificato client foglia e i certificati intermedi necessari per costruire una catena valida fino a un certificato caricato attivo. In caso contrario, i certificati client devono essere firmati direttamente dai certificati che hai caricato in anticipo. A parte questo, i tuoi certificati client devono soddisfare i seguenti requisiti:

  1. ha le estensioni Subject Key Identifier e Authority Key Identifier (in formato KeyIdentifier)

  2. ha le autorizzazioni Key Usage: «Digital Signature, Key Encipherment»

  3. ha l'autorizzazione Extended Key Usage: «TLS Web Client Authentication»

  4. ha l'estensione Subject Alternate Name

Supporto per le catene di certificati per mTLS API

Il supporto per le catene di certificati consente al tuo client di presentare un certificato client foglia con i certificati intermedi necessari per costruire una catena valida fino a un certificato caricato attivo.

Questo può consentirti di ruotare i certificati intermedi senza caricare ogni nuovo certificato intermedio, purché il certificato caricato attivo usato come ancora di attendibilità rimanga valido.

Il supporto per le catene di certificati è attualmente disponibile su richiesta. Contatta il tuo Account Director o apri un ticket di supporto per richiedere l’accesso.

Il tuo client deve presentare tutti i certificati intermedi richiesti. OpenAI non recupera i certificati intermedi mancanti tramite AIA. I controlli CRL e OCSP continuano a non essere supportati.

Domande frequenti

Posso configurare mTLS tramite API?

Sì: puoi consultare il Riferimento API all’indirizzo https://platform.openai.com/docs/api-reference/ per ulteriori informazioni.

Quali endpoint supportano mTLS?

Durante questo periodo beta, mTLS è supportato ufficialmente in

  • /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

Come posso inviare certificati client con la mia richiesta?

Per una richiesta cURL, puoi usare le opzioni --cert e --key (consulta la pagina man qui). Nella maggior parte degli altri client HTTP, è possibile passare anche certificati client. Esempi: requests in Python, fetch in JS. Tramite i nostri SDK ufficiali, supportiamo anche l'override del client HTTP: vedi qui per un esempio in Python.

Quando il supporto per le catene di certificati è abilitato, configura il tuo client HTTP in modo che presenti il certificato client foglia e tutti i certificati intermedi richiesti. La configurazione esatta dipende dal client HTTP.

Prima di applicare mTLS al traffico di produzione, assicurati che il client HTTP che usi gestisca correttamente le richieste di certificato client (alcuni, come WebSocket in alcuni browser, non lo fanno). Tieni presente che il nostro server non fornisce alcun elenco certificate_authorities nella richiesta di certificato client.

Chi può accedere ai certificati e modificarli?

Tramite l’interfaccia utente della dashboard https://platform.openai.com/settings/organization/mtls, i proprietari dell’organizzazione possono accedere ai certificati e modificarli. Chiunque disponga di una chiave API amministratore (https://platform.openai.com/settings/organization/admin-keys) può accedere ai certificati e modificarli; tuttavia fai attenzione: se attivi Mutual TLS a livello di organizzazione, imporrai i certificati anche a queste richieste API. Tutte le modifiche mTLS sono visibili nei log di audit.

Quanti certificati posso avere?

Ogni organizzazione può caricare fino a 50 certificati, che possono essere condivisi tra progetti ma non con altre organizzazioni. Puoi attivare/disattivare atomicamente un certificato per 10 progetti alla volta. In alternativa, puoi attivare/disattivare 10 certificati alla volta per la tua organizzazione o per 1 progetto specifico.

Posso aggiornare o eliminare i certificati?

Puoi aggiornare i nomi dei tuoi certificati, ma non il contenuto. Puoi anche eliminare i certificati se non sono attualmente attivi in alcun ambito.

Come funziona la revoca dei certificati?

Al momento non supportiamo i controlli CRL o OCSP. L’alternativa consigliata è invece eliminare o ruotare la tua chiave API. Puoi anche sostituire i tuoi certificati CA o usare certificati client con periodi di validità più brevi.

Posso usare catene di certificati più lunghe?

Sì, se il supporto per le catene di certificati è abilitato per la tua organizzazione. Il tuo client deve presentare il certificato client foglia e tutti i certificati intermedi richiesti, in modo che OpenAI possa verificare la catena fino a un certificato caricato attivo. Contatta il tuo Account Director o apri un ticket di supporto per richiedere l’accesso.

Qual è la configurazione consigliata?

Quando configuri inizialmente questa funzionalità, ti consigliamo di iniziare con un progetto di staging che non gestisca traffico di produzione ufficiale. Sfrutta questa occasione per assicurarti che i certificati siano configurati correttamente sulle tue macchine e che tu possa inviare traffico API con successo. Oltre a questo, consigliamo di consultare il team di sicurezza della tua organizzazione per comprendere al meglio le tue esigenze.

Supporto aggiuntivo

Puoi gestire autonomamente la funzionalità mTLS tramite la dashboard e l’API. Tuttavia, se vuoi abilitare inizialmente mTLS in modalità shadow, contatta il tuo Account Director oppure apri un ticket di supporto avviando una nuova chat nell’angolo in basso a destra di questa pagina.

Appendice: terminologia

  • Certificato CA: uno dei tuoi certificati attendibili usato per verificare i certificati client. Può firmare direttamente i certificati client che invii con le richieste oppure fungere da ancora per una catena di certificati presentata dal tuo client. Puoi usare certificati CA autofirmati.

  • Caricare un certificato: aggiungere un certificato CA al tuo account. Non viene ancora applicato da nessuna parte per mTLS, ma puoi iniziare a configurarlo.

  • Ambito: un progetto specifico o l'intera organizzazione.

  • Attivare un certificato CA in un ambito: abilita mTLS specificamente per quell'ambito e tutte le richieste basate su chiave API devono includere un certificato client verificabile rispetto al certificato CA attivo.

  • Disattivare un certificato CA in un ambito: disabilita l'uso di questo certificato per verificare le richieste in questo ambito. Se non rimangono certificati per l'ambito, mTLS è di fatto disattivato.

  • Ereditare un certificato: se attivi un certificato per la tua organizzazione, verrà attivato anche per tutti i progetti.

Questo articolo è stato utile?