Criar entradas da lista de acesso para uma conta de serviço da organização
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 .
URL base: https://cloud.mongodb.com/api/public/v1.0
Crie uma ou mais novas entradas de lista de acesso para a conta de serviço especificada.
Resource
POST /orgs/{ORG-ID}/serviceAccounts/{CLIENT-ID}/accessList
Parâmetros do caminho da solicitação
Nome | Tipo | Descrição |
---|---|---|
ORG-ID | string | Identificador exclusivo da organização à qual pertence a conta de serviço de destino. Use o endpoint /orgs para recuperar todas as organizações às quais o usuário autenticado tem acesso. |
CLIENT-ID | string | Identificador exclusivo da conta de serviço da organização para a qual você deseja criar uma nova entrada da lista de acesso. |
Solicitar parâmetros de query
Os seguintes parâmetros de query são opcionais:
Nome | Tipo | Descrição | Default | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | inteiro | Número da página (com base em índice 1). | 1 | ||||||
itemsPerPage | inteiro | Número de itens a serem devolvidos por página, até um máximo de 500. | 100 | ||||||
pretty | booleano | Indica se o corpo da resposta deve estar em um prettyprint formato. | false | ||||||
envelope | booleano | Indica se deseja ou não envolver a resposta em um envelope. Alguns clientes do API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, configure Para endpoints que retornam um resultado, o corpo da resposta inclui:
Para endpoints que retornam uma lista de resultados, o objeto | none |
Parâmetros do corpo da solicitação
Especifique uma matriz de documentos, onde cada documento representa uma entrada da lista de acesso que você deseja adicionar ao projeto. Você deve especificar uma matriz mesmo se estiver associando apenas uma única entrada da lista de acesso ao projeto.
Quando você envia uma solicitação de POST
contendo ipAddress
ou cidrBlock
valores que ainda não estão presentes na lista de acesso, o Cloud Manager adiciona essas entradas à lista de entradas existentes na lista de acesso. O Cloud Manager não define a lista de acesso para conter apenas as entradas especificadas na solicitação.
Na tabela seguinte, [i]
representa um índice de array.
Nome | Tipo | Descrição |
---|---|---|
[i].ipAddress | string | Endereço IP a ser adicionado à lista de acesso da conta de serviço. Este campo é mutuamente exclusivo com o campo cidrBlock . |
[i].cidrBlock | string | Entrada da lista de acesso na notação CIDR a ser adicionada à conta de serviço. Este campo é mutuamente exclusivo com o campo ipAddress . |
Resposta
documento de resposta
O documento JSON de resposta inclui uma array de objetos result , uma array de objetos link e uma contagem do número total de objetos result recuperados.
Nome | Tipo | Descrição |
---|---|---|
results | array | A array inclui um objeto para cada item detalhado na seção Documento incorporado results . |
links | array | A array inclui um ou mais links para sub-recursos e/ou recursos relacionados. As relações entre URLs são explicadas na Especificação de links da web. |
totalCount | número | Contagem de números inteiros do número total de itens no conjunto de resultados. Pode ser maior que o número de objetos na array results se todo o conjunto de resultados for paginado. |
results
documento incorporado
Cada objeto na matriz results
é uma entrada da lista de acesso.
Nome | Tipo | Descrição |
---|---|---|
cidrBlock | string | Faixa de endereços IP com notação CIDR na lista de acesso. |
requestCount | número | Número total de solicitações originadas deste endereço IP. |
createdAt | data | Data em que este endereço IP foi adicionado à lista de acesso. |
ipAddress | string | Endereço IP na lista de acesso. |
lastUsedAt | data | Data da solicitação mais recente originada deste endereço IP. Esse campo só aparece se pelo menos uma solicitação tiver sido originada desse endereço IP e só é atualizado quando um recurso é recuperado da lista de acesso. |
lastUsedAddress | string | Endereço IP do qual foi emitida a última chamada para a API. Este campo só aparece se pelo menos uma solicitação tiver sido originada deste endereço IP. |
Exemplo de solicitação
1 curl --user '{PUBLIC-KEY}:{PRIVATE-KEY}' --digest \ 2 --header 'Accept: application/json' \ 3 --header 'Content-Type: application/json' \ 4 --include \ 5 --request POST "https://cloud.mongodb.com/api/public/v1.0/orgs/{ORG-ID}/serviceAccounts/{CLIENT-ID}/accessList?pretty=true" \ 6 --data ' 7 [{ 8 "ipAddress" : "77.54.32.11" 9 }]'
Exemplo de resposta
Cabeçalho de resposta
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
Corpo de resposta
1 { 2 "links" : [ { 3 "href" : "https://cloud.mongodb.com/api/public/v1.0/orgs/{ORG-ID}/serviceAccounts/{CLIENT-ID}/accessList?pretty=true&pageNum=1&itemsPerPage=100", 4 "rel" : "self" 5 } ], 6 "results" : [ { 7 "cidrBlock" : "206.252.195.126/32", 8 "requestCount" : 47, 9 "createdAt" : "2019-01-24T16:26:37Z", 10 "ipAddress" : "206.252.195.126", 11 "lastUsed" : "2019-01-25T16:32:47Z", 12 "lastUsedAddress" : "206.252.195.126" 13 14 } ], 15 "totalCount" : 1 16 }