OpenAI

Melhores práticas para segurança de chaves de API

Atualizado: 3 days ago

1. Utilize sempre uma chave de API exclusiva para cada membro da equipe em sua conta.

Uma chave de API é um código único que identifica suas solicitações à API. Sua chave API é destinada a ser usada por você. O compartilhamento de chaves de API viola os Termos de Uso.

Ao começar a experimentar, você pode querer expandir o acesso à API para sua equipe. A OpenAI não oferece suporte ao compartilhamento de chaves de API. Por favor, convide novos membros para sua conta na página de Membros e eles rapidamente receberão sua própria chave única ao fazer login. Você também pode atribuir permissões a chaves de API individuais .

2. Nunca implemente sua chave em ambientes do lado do cliente, como navegadores ou aplicativos móveis.

Expor sua chave de API da OpenAI em ambientes do lado do cliente, como navegadores ou aplicativos móveis, permite que usuários mal-intencionados obtenham essa chave e façam solicitações em seu nome, o que pode levar a cobranças inesperadas ou ao comprometimento de determinados dados da conta. As solicitações devem sempre ser encaminhadas através do seu próprio servidor de backend, onde você pode manter sua chave de API em segurança.

3. Nunca envie sua chave para o seu repositório.

Incorporar uma chave de API ao código-fonte é uma forma comum de comprometer credenciais. Para quem possui repositórios públicos, essa é uma forma comum de compartilhar sua chave na internet sem saber. Repositórios privados são mais seguros, mas uma violação de dados também pode resultar no vazamento de suas chaves. Por essas razões, recomendamos enfaticamente o uso de variáveis ambientais como uma importante medida de segurança proativa.

4. Utilize variáveis de ambiente em vez da sua chave de API.

Uma variável de ambiente é uma variável definida no seu sistema operacional, e não dentro do seu aplicativo. Ela consiste em um nome e um valor. Recomendamos que você defina o nome da variável como OPENAI_API_KEY. Ao manter o mesmo nome de variável em toda a sua equipe, você pode enviar e compartilhar seu código sem o risco de expor sua chave de API.

Configuração do Windows

Opção 1: Defina sua variável de ambiente 'OPENAI_API_KEY' através do prompt de comando.

Execute o seguinte comando no prompt de comando, substituindo <yourkey> pela sua chave de API:

setx OPENAI_API_KEY "<yourkey>"

Isso se aplicará a futuras janelas do prompt de comando, portanto, você precisará abrir uma nova para usar essa variável com o curl. Você pode verificar se essa variável foi definida abrindo uma nova janela do prompt de comando e digitando:

echo %OPENAI_API_KEY%

Opção 2: Defina sua variável de ambiente 'OPENAI_API_KEY' através do Painel de Controle.

1. Abra as propriedades do sistema e selecione Configurações avançadas do sistema.

Windows 10 System settings with Advanced system settings highlighted in Control Panel

2. Selecione as variáveis de ambiente...

Windows System Properties Advanced tab with Environment Variables button highlighted

3. Selecione Novo… na seção Variáveis do usuário (parte superior). Adicione seu par nome/valor de chave, substituindo <yourkey> pela sua chave de API.

Nome da variável: OPENAI_API_KEY
Valor da variável: <yourkey>

Configuração do Linux/MacOS

Opção 1: Defina sua variável de ambiente 'OPENAI_API_KEY' usando o zsh

1. Execute o seguinte comando no seu terminal, substituindo yourkey pela sua chave de API.

echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc

2. Atualize o shell com a nova variável:

source ~/.zshrc

3. Confirme se você configurou sua variável de ambiente usando o seguinte comando.

echo $OPENAI_API_KEY

O valor da sua chave de API será o resultado obtido.

Opção 2: Defina sua variável de ambiente 'OPENAI_API_KEY' usando o bash.

Siga as instruções da Opção 1, substituindo o arquivo .zshrc. com .bash_profile.

Tudo pronto! Agora você pode referenciar a chave no curl ou carregá-la em seu projeto Python:

importar os
importar openai

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

5. Utilize um serviço de gerenciamento de chaves

Existem diversos produtos disponíveis para gerenciar chaves de API secretas com segurança. Essas ferramentas permitem que você controle o acesso às suas chaves e melhore a segurança geral dos dados. Em caso de violação de dados em seu aplicativo, suas chaves não seriam comprometidas, pois estariam criptografadas e gerenciadas em um local completamente separado.

Para equipes que implantam seus aplicativos em produção, recomendamos que considerem um destes serviços.

6. Monitore o uso da sua conta e alterne suas chaves quando necessário.

Uma chave de API comprometida permite que uma pessoa acesse a sua cota de dados da conta sem o seu consentimento. Isso pode resultar em perda de dados, cobranças inesperadas, esgotamento da sua cota mensal e interrupção do seu acesso à API.

O uso da plataforma pelas suas equipes pode ser acompanhado na página de Uso . Caso tenha alguma preocupação com o uso indevido da sua conta, existem algumas medidas que você pode tomar para protegê-la:

  • Analise a sua utilização para verificar se está alinhada com o trabalho da sua equipe. Para usuários pertencentes a várias organizações (ex.: (corporativo e pessoal), certifique-se de que o usuário habilitou o rastreamento e definiu sua organização padrão para uso e rastreamento.

  • Se você acredita que sua chave foi vazada, troque-a imediatamente na página de Chaves de API . Para clientes com aplicações em produção, será necessário atualizar os valores-chave de acordo.

  • Entre em contato conosco através do help.openai.com para obter mais informações.

7. Restrinja o acesso à API usando lista de IPs permitidos

A lista de IPs permitidos permite restringir quais endereços IP podem acessar sua API da OpenAI. Quando ativada, apenas solicitações originadas dos endereços IP ou intervalos configurados são permitidas, e todas as demais são rejeitadas, mesmo que incluam uma chave de API válida.

Isso adiciona uma camada extra de proteção, garantindo que a API só possa ser acessada a partir de infraestrutura confiável, como seus servidores de back-end ou ambiente em nuvem.

Para mais informações, consulte o artigo sobre a lista de IPs permitidos para a API OpenAI.

Este artigo foi útil?