OpenAI
Esta página foi traduzida automaticamente. Ver o artigo original em inglês.

Programa Beta de Mutual TLS da OpenAI

Atualizado: 14 days ago

O Mutual TLS da OpenAI permite que as organizações configurem uma camada adicional de segurança para o tráfego da API da OpenAI. Depois de configurado, os pedidos de API devem ser feitos para https://mtls.api.openai.com (ou https://mtls-eu.api.openai.com para clientes de residência de dados da UE) e o tráfego só será aceite se forem fornecidos a chave de API e o certificado de cliente corretos. O mTLS não se aplica ao painel https://platform.openai.com. Esta funcionalidade está atualmente em beta.

Como configuro a integração mTLS?

Na barra de navegação das definições, verá um separador «TLS mútuo».

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

Carregar certificado

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

Ativar certificado

Depois de carregar o seu certificado, o passo seguinte é ativar o seu certificado. Assim que um certificado for ativado para um projeto, todos os pedidos de API destinados a esse projeto passarão também a exigir um certificado de cliente correspondente. Se um projeto tiver vários certificados ativados, pode passar qualquer certificado de cliente correspondente. Se um certificado for ativado para a organização, aplicar-se-á a todos os pedidos de API e será «herdado» por todos os projetos.

Image

Requisitos do certificado de CA

Pode carregar qualquer certificado de CA X.509 em formato PEM que cumpra os seguintes requisitos:

  1. assina diretamente os certificados de cliente com os quais planeia fazer pedidos

  2. tem as extensões Certificate Authority, Subject Key Identifier e Authority Key Identifier (em formato KeyIdentifier)

  3. tem as permissões Key Usage: «Certificate Sign, CRL Sign»

  4. não está definido para expirar no prazo de 1 dia

  5. o tamanho total do certificado deve ser inferior a 16 kb.

Requisitos do certificado de cliente

Os certificados de cliente devem ser assinados diretamente pelos certificados que carregou previamente. De momento, suportamos apenas cadeias de certificados de comprimento único. Além disso, os seus certificados de cliente devem cumprir os seguintes requisitos:

  1. tem as extensões Subject Key Identifier e Authority Key Identifier (em formato KeyIdentifier)

  2. tem as permissões Key Usage: «Digital Signature, Key Encipherment»

  3. tem a permissão Extended Key Usage: «TLS Web Client Authentication»

  4. tem a extensão Subject Alternate Name

Perguntas frequentes

Posso configurar o mTLS através da API?

Sim — pode consultar a Referência da API em https://platform.openai.com/docs/api-reference/ para obter mais informações.

Que endpoints suportam mTLS?

Durante este período beta, o mTLS é oficialmente suportado em

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

Como envio certificados de cliente com o meu pedido?

Para um pedido cURL, pode utilizar as opções --cert e --key (consulte a página de manual aqui). Na maioria dos outros clientes HTTP, também existem formas de passar certificados de cliente. Exemplos: requests em Python, fetch em JS. Através dos nossos SDKs oficiais, também suportamos a substituição do cliente HTTP — consulte aqui para ver um exemplo em Python.

Antes de impor o mTLS ao tráfego de produção, certifique-se de que o cliente HTTP que está a utilizar se comporta corretamente perante pedidos de certificado de cliente (alguns, como WebSockets em determinados navegadores, não o fazem). Tenha em atenção que o nosso servidor não fornece uma lista certificate_authorities no pedido de certificado de cliente.

Quem pode aceder e modificar certificados?

Através da IU do painel https://platform.openai.com/settings/organization/mtls, os proprietários da organização podem aceder e modificar certificados. Qualquer pessoa com uma chave de API de administrador (https://platform.openai.com/settings/organization/admin-keys) também pode aceder/modificar certificados, mas tenha atenção — se ativar o Mutual TLS ao nível da organização, também estará a impor certificados nestes pedidos de API. Todas as alterações de mTLS ficam visíveis nos registos de auditoria.

Quantos certificados posso ter?

Cada organização pode carregar até 50 certificados, que podem ser partilhados entre projetos, mas não com outras organizações. Pode ativar/desativar atomicamente um certificado para 10 projetos de cada vez. Em alternativa, pode ativar/desativar 10 certificados de cada vez para a sua organização ou para 1 projeto específico.

Posso atualizar ou eliminar certificados?

Pode atualizar os nomes dos seus certificados, mas não o conteúdo. Também pode eliminar certificados se não estiverem atualmente ativos em nenhum âmbito.

Como funciona a revogação de certificados?

De momento, não suportamos CRLs nem OCSP stapling. A alternativa recomendada é eliminar ou rodar a sua chave de API. Também pode substituir os seus certificados de CA ou utilizar certificados de cliente com períodos de validade mais curtos.

Posso utilizar cadeias de certificados mais longas?

De momento, apenas suportamos cadeias de comprimento único — ou seja, o seu certificado de CA deve assinar diretamente os seus certificados de cliente. Contacte o seu Diretor de Conta se tiver mais perguntas.

Qual é a configuração recomendada?

Ao configurar inicialmente esta funcionalidade, recomendamos que comece com um projeto de teste que não sirva tráfego oficial de produção. Aproveite esta oportunidade para garantir que os seus certificados estão devidamente configurados nas suas máquinas e que consegue enviar tráfego de API com êxito. Além disso, recomendamos que consulte a equipa de segurança da sua organização para compreender melhor as suas necessidades.

Suporte adicional

Pode gerir autonomamente a funcionalidade mTLS através do painel e da API. No entanto, se quiser ativar o mTLS inicialmente num modo sombra, contacte o seu Diretor de Conta ou abra um pedido de suporte iniciando uma nova conversa no canto inferior direito desta página.

Anexo: Terminologia

  • Certificado de CA: Um dos seus certificados fidedignos que assinou diretamente os certificados de cliente que enviará com os pedidos. Pode utilizar certificados de CA autoassinados.

  • Carregar um certificado: adicionar um certificado de CA à sua conta. Ainda não é imposto em lado nenhum para mTLS, mas pode começar a configurá-lo.

  • Âmbito: um projeto específico ou toda a sua organização.

  • Ativar um certificado de CA num âmbito: ativa o mTLS especificamente para esse âmbito, e todos os pedidos baseados em chave de API terão de exigir um certificado de cliente assinado pelo certificado de CA.

  • Desativar um certificado de CA num âmbito: desativa a utilização deste certificado para verificar pedidos neste âmbito. Se não restarem certificados para o âmbito, o mTLS fica efetivamente desativado.

  • Herdar um certificado: Se ativar um certificado para a sua organização, este também será ativado para todos os projetos.

Este artigo foi útil?