Importante
Recomendamos que você use contas de serviço em vez de API para se autenticar na API de administração do Atlas. As chaves de API são um método de autenticação legado.
Para utilizar a Administration API do Atlas para gerenciar seus clusters do Atlas, você deve autenticar suas solicitações de API. A API Administration API do Atlas aceita os seguintes métodos de autenticação:
Tokens de acesso à conta de serviço (OAuth) 2.0
Chaves de API (autenticação Digest HTTP)
Para saber como usar contas de serviço e chaves de API para configurar o acesso programático a suas organizações e projetos do Atlas, consulte o guia Administration API primeiros passos.
A Administration API do Atlas não fornece acesso aos dados armazenados em seus clusters. Para ler ou gravar dados em um banco de dados, você deve autenticar em seu cluster usando as credenciais de um usuário de banco de dados com as funções de leitura ou gravação apropriadas. Você pode utilizar a Atlas Administration API para criar e gerenciar usuários de banco de dados.
Observação
Muitos pontos de extremidade da Administration API do Atlas URLs seguem o formato de /api/atlas/<version>/groups/<GROUP-ID>/, em que <GROUP-ID> é o ID do grupo. Para esses recursos, a conta de serviço ou as chaves de API que você usa para autenticar a solicitação devem ser um nó da organização que hospeda o projeto. Caso contrário, o Atlas responde com um erro 401.
As seções a seguir descrevem os métodos de autenticação da Administration API Atlas:
Visão geral das contas de serviço
As contas de serviço são o método recomendado para gerenciar a autenticação na Administration API do Atlas. As contas de serviço fornecem segurança aprimorada para chaves de API usando o protocolo OAuth 2.0 padrão do setor com o fluxo de credenciais do cliente.
Uma conta de serviço permite gerenciar permissões e criar tokens de acesso que autenticam solicitações de API. Cada conta de serviço tem um ID de cliente e um segredo que funciona como um nome de usuário e uma senha para criar tokens de acesso. Para aprender como construir uma solicitação de API com um token de acesso, consulte Fazer uma solicitação de API.
Observação
As listas de acesso IP se aplicam ao uso de tokens de acesso a contas de serviço, não à sua criação ou revogação. Você pode gerar um token a partir de qualquer endereço IP, mas só pode usá-lo para chamar a API se o seu endereço IP estiver na lista de acesso.
Os tokens de acesso são válidos apenas por 1 hora (3600 segundos) de acordo com a especificação OAuth 2.0. Essa vida útil limitada protege contra ataques de repetição, em que um invasor usa um token de acesso vazado sem restrição de tempo.
Cada conta de serviço pertence a exatamente uma organização, e você pode conceder acesso a qualquer número de projetos dentro dessa organização. Para conceder acesso a uma conta de serviço em nível de organização a um projeto, consulte Conceder acesso a uma conta de serviço existente a um projeto.
Atlas funções limitam quais operações uma conta de serviço pode autenticar com seu token de acesso. Você deve atribuir funções às contas de serviço, como faria com os usuários, para garantir que a conta de serviço gere tokens de acesso com as permissões necessárias para as chamadas de API desejadas.
Você não pode usar uma conta de serviço ou seu token de acesso para fazer login no Atlas por meio da IU do Atlas. As contas de serviço só concedem acesso à Administration API do Atlas, que não inclui acesso à IU ou acesso a dados do cluster. Para saber mais sobre as limitações das contas de serviço, consulte Limites e Limiares do MongoDB.
Visão geral das chaves API
Importante
Recomendamos que você utilize contas de serviço em vez de chaves API para autenticar na Administration API do Atlas. As chaves de API são um método de autenticação legado.
As chaves de API são um método legado de autenticação para a Administration API do Atlas que utiliza autenticação Digest HTTP.
As chaves de API têm duas partes: uma chave pública e uma chave privada. Eles servem a mesma função que um nome de usuário e uma senha para autenticar solicitações de API. Para aprender como construir uma API solicitação usando chaves de API, consulte Criar uma solicitação de API.
O Atlas realiza o hash da chave pública e da chave privada usando um valor exclusivo chamado nonce. O nonce só é válido por um curto período de tempo, de acordo com a especificação de autenticação de resumo HTTP. Essa vida útil limitada protege contra ataques de repetição, onde um invasor armazena em cache uma chave privada para usá-la sem restrição de tempo.
Cada par de chaves de API pertence a apenas uma organização e pode conceder acesso a qualquer quantidade de projetos nessa organização. Para conceder acesso a chaves de API em nível de organização a um projeto, consulte Conceder acesso a uma conta de serviço existente a um projeto.
Atlas funções limitam quais operações as chaves de API podem executar. Você deve atribuir funções às chaves de API, como faria com os usuários, para garantir que as chaves de API tenham as permissões necessárias para as chamadas de API desejadas.
Você não pode usar chaves de API para fazer login no Atlas por meio da IU do Atlas. As chaves de API concedem apenas acesso à API de Administration API do Atlas, que não inclui acesso à IU ou acesso a dados do cluster.
Próximos passos
Para aprender como usar e o gerenciamento de contas de serviço e chaves de API, consulte os seguintes procedimentos: