Autenticação da API de administração do Atlas
- A autenticação OAuth 2.0 para acesso programático ao Atlas está disponível como um recurso de visualização.
- O recurso e a documentação correspondente podem mudar a qualquer momento durante o período de Pré-visualização. Para utilizar a autenticação OAuth 2.0 , crie umaconta de serviço do para utilizar em seus pedidos para a API de Administração do Atlas .
Você pode usar um dos dois métodos para autenticar na API de administração do Atlas :
Chaves de API | Conta de serviço (prévia) |
---|---|
Método legado de autenticação no Atlas que usa autenticação Digest HTTP. | Novo método de autenticação no Atlas usando o padrão do setor OAuth 2.0 protocolo com o fluxo de Credenciais do Cliente . Atualmente em visualização. |
As chaves de API têm duas partes: uma chave pública e uma chave privada. Essas duas partes têm a mesma função que um nome de usuário e uma senha quando você faz solicitações de API ao Atlas. | Uma conta de serviço permite gerenciar permissões e criar tokens de acesso. Uma 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. Um token de acesso permite fazer solicitações de API para o Atlas. |
O Atlas faz 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 Autenticação de Digest HTTP especificação. Isso é para evitar ataques de repetição, para que você não possa armazenar em cache um nonce e usá-lo para sempre. | Depois de criar uma conta de serviço, você usará o ID do cliente e o segredo para gerar um token de acesso, que autentica suas solicitações de API . Os tokens de acesso são válidos apenas por 1 hora (3600 segundos) de acordo com o OAuth 2.0 especificação. A expiração de tokens de acesso impede ataques de repetição, onde um token de acesso vazado pode ser usado sem uma restrição de tempo. |
As funções do Atlas limitam quais operações as chaves de API podem executar. Você deve conceder funções às chaves de API , como faria com os usuários, para garantir que as chaves de API possam chamar os endpoints de API sem erros. | As funções do Atlas limitam quais operações uma conta de serviço pode realizar com seu token de acesso. Você deve conceder funções às contas de serviço, como faria com os usuários, para garantir que o token de acesso possa chamar os endpoints da API sem erros. |
Atlas vincula muitos recursos a um projeto. Muitos URL de recursos de API seguem o formato de /api/atlas/<version>/groups/<GROUP-ID>/ , onde <GROUP-ID> é o ID do projeto . Para estes recursos, as chaves API devem ser um membro da organização que hospeda o projeto. Caso contrário, o Atlas responde com um 401 erro. Para conceder às chaves API de nível de organização acesso a um projeto, consulte Atribuir acesso de organização existente a um projeto. | Atlas vincula muitos recursos a um projeto. Muitos URL de recursos APIseguem o formato de /api/atlas/<version>/groups/<GROUP-ID>/ , onde <GROUP-ID> é a ID do projeto . Para esses recursos, a conta de serviço deve ser membro da organização que hospeda o projeto. Caso contrário, o Atlas responde com um 401 erro. Para conceder acesso à conta de serviço no nível da organização a um projeto, consulte Atribuir acesso da organização existente a um projeto. |
Cada chave API pertence a apenas uma organização, mas você pode conceder acesso às chaves API a qualquer número de projetos nessa organização. | Cada conta de serviço pertence a apenas uma organização, mas você pode conceder acesso a uma conta de serviço a qualquer número de projetos nessa organização. |
Você não pode usar chaves de API para fazer login no Atlas por meio da interface do usuário do Atlas . | Você não pode usar uma conta de serviço ou seu token de acesso para fazer login no Atlas por meio da interface do usuário do Atlas . |
Para configurar seu método preferido de autenticação na API de administração do Atlas , consulte Conceder acesso programático a uma organização.