Modificar detalhes de uma conta de serviço de projeto
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
Resource
PATCH /groups/{PROJECT-ID}/serviceAccounts/{CLIENT-ID}
Parâmetros do caminho da solicitação
Nome | Tipo | Descrição |
---|---|---|
| string | Identificador exclusivo do projeto cuja conta de serviço você deseja atualizar. Use o endpoint /groups para extrair todos os projetos aos quais o usuário autenticado tem acesso. |
| string | Identificador exclusivo da conta de serviço que você deseja atualizar. Solicite o endpoint /groups/{PROJECT-ID}/serviceAccounts para recuperar todas as contas de serviço às quais o usuário autenticado tem acesso para o projeto especificado. |
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). |
| ||||||
itemsPerPage | inteiro | Número de itens a serem devolvidos por página, até um máximo de 500. |
| ||||||
pretty | booleano | Indica se o corpo da resposta deve estar em um prettyprint formato. |
| ||||||
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
O parâmetro do corpo é obrigatório.
Nome | Tipo | necessidade | Descrição | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | Opcional | Nome da conta de serviço. Os caracteres aceitos são | ||||||||||||||||||||||
| string | Opcional | Descrição da conta de serviço. Os caracteres aceitos são | ||||||||||||||||||||||
| array de strings | Obrigatório | Lista de roles que a conta de serviço deve receber. No mínimo, uma função deve ser fornecida. Quaisquer funções fornecidas devem ser válidas para o projeto atribuído:
Inclua todos os roles que você deseja que essa conta de serviço tenha. Quaisquer funções que não estejam nesta array são removidas. |
Resposta
Nome | Tipo | Descrição |
---|---|---|
| string | Identificador exclusivo da conta de serviço. |
| timestamp | Hora de criação da conta de serviço. |
| string | Nome da conta de serviço. |
| string | Descrição da conta de serviço. |
| array de strings | Lista de roles que a conta de serviço tem no projeto. As funções do projeto incluem: |
| array de objetos | Lista de segredos de conta de serviço. |
| string | 24-string exclusivo de caracteres hexadecimais que identifica o segredo. |
| timestamp | Timestamp representando o tempo de criação do segredo. |
| timestamp | Timestamp representando o tempo de expiração secreto. |
| timestamp | Registro de data/hora representando o último uso secreto. |
| string | Segredo oculto que exibe apenas o prefixo e os últimos quatro caracteres. |
Exemplo de solicitação
Observação
O usuário que faz a solicitação pode ser formatado como {PUBLIC-KEY}:{PRIVATE-KEY}
.
1 curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ 2 --header "Accept: application/json" \ 3 --header "Content-Type: application/json" \ 4 --include \ 5 --request PATCH "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/serviceAccounts/{CLIENT-ID}?pretty=true" \ 6 --data '{ 7 "roles": [ "GROUP_OWNER" ] 8 }'
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 "createdAt" : "2024-08-04T01:16:21Z", 3 "description" : "Service account for Cloud Manager users.", 4 "clientId" : "mdb_sa_id_66aed6653e07126244a84cc1", 5 "name" : "Cloud Manager service account", 6 "roles" : [ "GROUP_OWNER" ], 7 "secrets" : [ { 8 "createdAt" : "2024-08-04T01:16:21Z", 9 "expiresAt" : "2024-11-02T01:16:21Z", 10 "lastUsedAt" : "2024-08-24T21:10:35Z", 11 "id" : "66aed6653e07126244a84cc0", 12 "maskedSecretValue" : "mdb_sa_sk_...MeyM" 13 } ] 14 }