Acesso programático ao Cloud Manager
Nesta página
- A autenticação OAuth 2.0 para acesso programático ao Cloud Manager 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 usar a 2.0 autenticação OAuth, crie uma conta de serviço para usar em suas solicitações para a API pública do Cloud Manager .
Para conceder acesso programático a uma organização ou projeto usando somente a API, crie uma chave de API ou uma conta de serviço. Isso garante que as chaves e tokens de acesso que servem como nomes de usuário e senhas nunca sejam enviados pela rede. Chaves deAPI e contas de serviço:
Não pode ser usado para fazer login no Cloud Manager por meio da UI.
Deve receber funções como você faria com os usuários para garantir que as chaves da API e as contas de serviço possam chamar os endpoints da API sem erros.
Pertence a uma organização, mas pode ter acesso a qualquer número de projetos nessa organização.
Para saber mais sobre esses dois métodos de autenticação,consulte Autenticação.
Manage Programmatic Access to an Organization
Observação
Permissões necessárias
Você pode visualizar o acesso programático a uma organização com qualquer papel.
Para executar qualquer outra ação, você deve ter o Organization Owner
role.
Gerenciar Acesso Programático a uma Organização
Faça os procedimentos a seguir para conceder acesso programático a uma organização por meio de chaves de API ou de uma conta de serviço. Para saber mais sobre esses dois métodos de autenticação,consulte Autenticação.
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Preencha o API Key Information formulário.
Na etapa API Key Information da página Add API Key :
Campo | Valor |
---|---|
Descrição | Insira uma descrição para a nova chave de API . |
Permissões da organização | Selecione o novo role ou roles para a chave API . |
Adicione valores de lista de acesso para esta chave de API.
Na etapa Private Key & Access List da página Add API Key , clique em Add Access List Entry.
Para esta chave de API , você pode optar por:
Insira um endereço IPv4 do qual o Cloud Manager deve aceitar solicitações de API , ou
Clique em Use Current IP Address se o host que você está usando para acessar o Cloud Manager fizer solicitações de API .
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Insira as informações da conta de serviço.
Insira um Name.
Insira um Description.
Selecione uma duração no menu Client Secret Expiration.
No menu Permissões da organização, selecione a nova função ou funções para a conta de serviço.
Adicione uma API Access List Entry.
Clique em Add Access List Entry.
Insira um endereço IP ou bloco CIDR a partir do qual você deseja que o Cloud Manager aceite solicitações de API para essa conta de serviço.
Você também pode clicar Use Current IP Address em se o host que você está usando para acessar o Cloud Manager também fizer solicitações de API usando essa conta de serviço.
Clique em Save.
Visualizar acesso de programação a uma organização
Você pode visualizar os detalhes de todas as chaves API ou contas de serviço que têm acesso à sua organização.
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Navegue até View Details.
Ao lado da chave API , clique em .
Clique em View Details.
O modal <Public Key> API Key Details exibe o:
Private Key ofuscado.
Data em que a chave foi usada pela última vez.
Data em que a chave foi criada.
Endereços IPv4 nos quais a chave está na lista de acesso.
projeto aos quais a Chave recebeu acesso.
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Clique em Service Accounts.
Todas as contas de serviço com acesso à sua organização estão listadas.
Clique no nome de uma conta de serviço para visualizar seus detalhes, incluindo:
O segredo ofuscado do cliente para a conta de serviço
A data em que o segredo do cliente foi usado pela última vez
A data em que o segredo do cliente foi criado
Os endereços IP a partir dos quais a conta de serviço pode acessar a API
Os roles que a conta de serviço recebeu
Atualizar acesso de programação a uma organização
Você pode alterar as funções, a descrição ou a lista de acesso de uma chave de API ou conta de serviço em uma organização. Você também pode gerar um novo segredo do cliente para uma conta de serviço.
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Preencha o API Key Information formulário.
Na etapa API Key Information da página Add API Key :
Campo | Valor |
---|---|
Descrição | Insira uma descrição para a nova chave de API . |
Permissões da organização | Selecione o novo role ou roles para a chave API . |
Adicione valores de lista de acesso para esta chave de API.
Na etapa Private Key & Access List da página Add API Key , clique em Add Access List Entry.
Para esta chave de API , você pode optar por:
Insira um endereço IPv4 do qual o Cloud Manager deve aceitar solicitações de API , ou
Clique em Use Current IP Address se o host que você está usando para acessar o Cloud Manager fizer solicitações de API .
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Gere um novo segredo do cliente .
Clique em Generate New Client Secret
Escolha uma duração para o segredo do cliente no menu. O segredo do cliente expira após essa duração.
Clique em Generate New.
Clique em Copy e salve o segredo do cliente em um local seguro. Esta é a única vez que você pode visualizar o segredo completo do cliente .
Edite o Organization Permissions.
Clique em Edit Permissions.
No Organization Permissions menu, selecione o novo role ou roles para a conta de serviço.
Clique em Save and next.
Importante
As credenciais da conta de serviço permanecem ativas até que expirem ou um usuário as revogue.
Edite o API Access List.
Para adicionar um endereço IP ou bloco CIDR a partir do qual você deseja que o Cloud Manager aceite solicitações de API para essa conta de serviço, clique em Add Access List Entry e digite um endereço IP.
Você também pode clicar Use Current IP Address em se o host que você está usando para acessar o Cloud Manager também fizer solicitações de API usando essa conta de serviço.
Para remover um endereço IP da lista de acesso, clique em à direita do endereço IP .
Clique em Save.
Revogar acesso de programação a uma organização
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Excluir a chave API.
Clique em ao lado da chave de API que você deseja excluir.
Clique em Delete para confirmar que você deseja excluir esta chave API ou Cancel para deixar a chave na organização.
Observação
Remover uma chave de API de uma organização também remove essa chave de todos os projeto aos quais a chave recebeu acesso.
No MongoDB Cloud Manager, váGo para a Organization Settings página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Clique no ícone Organization Settings próximo ao menu Organizations.
A página Configurações da organização é exibida.
Acesse a página Organization Access Manager.
Clique em Access Manager na barra lateral.
A página Organization Access Manager é exibida.
Managed acesso de programação a um projeto
Observação
Permissões necessárias
Você pode visualizar o acesso de programação a um projeto com qualquer função.
Para executar qualquer outra ação, você deve ter a Project User Admin
função.
Conceder acesso de programação a um projeto
Faça os procedimentos a seguir para conceder acesso programático a um projeto por meio de chaves de API ou de uma conta de serviço. Para saber mais sobre esses dois métodos de autenticação,consulte Autenticação.
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Preencha o API Key Information formulário.
Na etapa API Key Information da página Add API Key :
Campo | Valor |
---|---|
Descrição | Insira uma descrição para a nova chave de API . |
Permissões do projeto | Selecione o novo role ou roles para a chave API . |
Adicione valores de lista de acesso para esta chave de API.
Na etapa Private Key & Access List da página Add API Key , clique em Add Access List Entry.
Para esta chave de API , você pode optar por:
Insira um endereço IPv4 do qual o Cloud Manager deve aceitar solicitações de API , ou
Clique em Use Current IP Address se o host que você está usando para acessar o Cloud Manager fizer solicitações de API .
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Insira as informações da conta de serviço.
Insira um Name.
Insira um Description.
Selecione uma duração no menu Client Secret Expiration.
No menu Permissões do projeto, selecione a nova função ou funções da conta de serviço.
Adicione uma API Access List Entry.
Clique em Add Access List Entry.
Insira um endereço IP ou bloco CIDR a partir do qual você deseja que o Cloud Manager aceite solicitações de API para essa conta de serviço.
Você também pode clicar Use Current IP Address em se o host que você está usando para acessar o Cloud Manager também fizer solicitações de API usando essa conta de serviço.
Clique em Save.
Visualizar acesso de programação a um projeto
Você pode visualizar os detalhes de todas as chaves de API ou contas de serviço que têm acesso ao seu projeto.
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Navegue até View Details.
Ao lado da chave API , clique em .
Clique em View Details.
O modal <Public Key> API Key Details exibe o:
Private Key ofuscado.
Data em que a chave foi usada pela última vez.
Data em que a chave foi criada.
Endereços IPv4 nos quais a chave está na lista de acesso.
projeto aos quais a Chave recebeu acesso.
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Clique em Service Accounts.
Todas as contas de serviço com acesso ao seu projeto estão listadas.
Clique no nome de uma conta de serviço para visualizar seus detalhes, incluindo:
O segredo ofuscado do cliente para a conta de serviço
A data em que o segredo do cliente foi usado pela última vez
A data em que o segredo do cliente foi criado
Os endereços IP a partir dos quais a conta de serviço pode acessar a API
Os roles que a conta de serviço recebeu
Atualizar acesso de programação a um projeto
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Preencha o API Key Information formulário.
Na etapa API Key Information da página Add API Key :
Campo | Valor |
---|---|
Descrição | Insira uma descrição para a nova chave de API . |
Permissões do projeto | Selecione o novo role ou roles para a chave API . |
Adicione valores de lista de acesso para esta chave de API.
Na etapa Private Key & Access List da página Add API Key , clique em Add Access List Entry.
Para esta chave de API , você pode optar por:
Insira um endereço IPv4 do qual o Cloud Manager deve aceitar solicitações de API , ou
Clique em Use Current IP Address se o host que você está usando para acessar o Cloud Manager fizer solicitações de API .
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Gere um novo segredo do cliente .
Clique em Generate New Client Secret
Escolha uma duração para o segredo do cliente no menu. O segredo do cliente expira após essa duração.
Clique em Generate New.
Clique em Copy e salve o segredo do cliente em um local seguro. Esta é a única vez que você pode visualizar o segredo completo do cliente .
Edite o Project Permissions.
Clique em Edit Permissions.
No Project Permissions menu, selecione o novo role ou roles para a conta de serviço.
Clique em Save and next.
Importante
As credenciais da conta de serviço permanecem ativas até que expirem ou um usuário as revogue.
Edite o API Access List.
Para adicionar um endereço IP ou bloco CIDR a partir do qual você deseja que o Cloud Manager aceite solicitações de API para essa conta de serviço, clique em Add Access List Entry e digite um endereço IP.
Você também pode clicar Use Current IP Address em se o host que você está usando para acessar o Cloud Manager também fizer solicitações de API usando essa conta de serviço.
Para remover um endereço IP da lista de acesso, clique em à direita do endereço IP .
Clique em Save.
Revogar acesso de programação a um projeto
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Excluir a chave API.
Clique em ao lado da chave de API que você deseja excluir.
Clique em Delete para confirmar que você deseja excluir esta chave API ou Cancel para deixar a chave na organização.
Observação
Remover uma chave de API de uma organização também remove essa chave de todos os projeto aos quais a chave recebeu acesso.
No MongoDB Cloud Manager, váGo para a Project Access Manager página.
Se ainda não estiver exibido, selecione sua organização desejada no Menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Execute uma das seguintes etapas:
Selecione Project Access no menu Access Manager na barra de navegação.
Ao lado do menu Projects, expanda o menu Options, clique em Project Settings e clique em Access Manager na barra lateral.
A página Project Access Manager (Gerente de acesso do projeto) é exibida.
Remova a conta de serviço.
Clique no ícone em Actions à direita da conta de serviço que você deseja remover do projeto.
Clique em Remove from this project.
Importante
A conta de serviço ainda existe na organização e quaisquer credenciais existentes permanecem ativas até expirarem ou revogadas manualmente.
Solicitação API: como fazer
A API do Cloud Manager usa um dos dois métodos de autenticação para autenticar solicitações: chaves deAPI ou uma conta de serviço. Você precisará das chaves ou do segredo que salvou ao configurar seu método de autenticação preferido para concluir os procedimentos a seguir.
Sua solicitação deve se parecer com os exemplos a seguir, em que {PUBLIC-KEY}
é a chave pública da API e {PRIVATE-KEY}
é a chave privada correspondente.
A seguinte amostra de solicitação GET
retorna todos os projetos para o usuário atual:
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true"
A seguinte amostra de solicitação POST
recebe um corpo da solicitação e cria um projeto denominado MyProject
na sua organização:
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request POST "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true" \ --data ' { "name": "MyProject", "orgId": "deffb2031b938da53f16d714" }'
Para fazer uma solicitação de API usando uma conta de serviço, use a conta de serviço para gerar um token de acesso e, em seguida, use o token de acesso em sua solicitação:
Recupere o segredo do cliente para sua conta de serviço.
Localize o segredo do cliente que começa com mdb_sa_sk_
que você salvou imediatamente após criar a conta de serviço, que foi a única vez que você pôde visualizar o segredo do cliente. Se você não salvou o segredo do cliente, deve gerar um novo.
Solicitar um token de acesso.
Substitua {BASE64-AUTH}
no exemplo a seguir pela saída da etapa anterior e execute:
1 curl --request POST \ 2 --url https://cloud.mongodb.com/api/oauth/token \ 3 --header 'accept: application/json' \ 4 --header 'cache-control: no-cache' \ 5 --header 'authorization: Basic {BASE64-AUTH}' \ 6 --header 'content-type: application/x-www-form-urlencoded' \ 7 --data 'grant_type=client_credentials'
{"access_token":"eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCIsImtpZCI6ImYyZjE2YmE4LTkwYjUtNDRlZS1iMWYLTRkNWE2OTllYzVhNyJ9eyJpc3MiOiJodHRwczovL2Nsb3VkLWRldi5tb25nb2RiLmNvbSIsImF1ZCI6ImFwaTovL2FkbWluIiwic3ViIjoibWRi3NhX2lkXzY2MjgxYmM2MDNhNzFhNDMwYjkwNmVmNyIsImNpZCI6Im1kYl9zYV9pZF82NjI4MWJjNjAzYTcxYTQzMGI5MZlZjciLCJhY3RvcklkIjoibWRiX3NhX2lkXzY2MjgxYmM2MDNhNzFhNDMwYjkwNmVmNyIsImlhdCI6MTcxMzkwNTM1OSiZXhwIjoxNzEzOTA4OTU5LCJqdGkiOiI4ZTg1MTM3YS0wZGU1LTQ0N2YtYTA0OS1hMmVmNTIwZGJhNTIifQAZSFvhcjwVcJYmvW6E_K5UnDmeiX2sJgL27vo5ElzeBuPawRciKkn6ervZ6IpUTx2HHllGgAAMmhaP9B66NywhfjAXC67X9KcOzm81DTtvDjLrFeRSc_3vFmeGvfUKKXljEdWBnbmwCwtBlO5SJuBxb1V5swAl-Sbq9Ymo4NbyepSnF""expires_in":3600,"token_type":"Bearer"}%
Importante
O token de acesso é válido por 1 hora (3600 segundos). Você não pode atualizar um token de acesso. Quando esse token de acesso expirar, repita essa etapa para gerar um novo.
Faça uma chamada de API.
Substitua {ACCESS-TOKEN}
no exemplo a seguir pela saída da etapa anterior. Por exemplo, --header 'Authorization: Bearer eyJ...pSnF' \
.
A seguinte amostra de solicitação GET
retorna todos os projetos para o usuário atual:
curl --request GET \ --url https://cloud.mongodb.com/api/public/v1.0/groups \ --header 'Authorization: Bearer {ACCESS-TOKEN}' \ --header 'Accept: application/json' \
A seguinte amostra de solicitação POST
recebe um corpo da solicitação e cria um projeto denominado MyProject
na sua organização:
curl --header 'Authorization: Bearer {ACCESS-TOKEN}' \ --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --include \ --request POST 'https://cloud.mongodb.com/api/public/v1.0/groups' \ --data ' { "name": "MyProject", "orgId": "5a0a1e7e0f2912c554080adc" }'