Menu Docs

Página inicial do DocsMongoDB Ops Manager

Modificar roles de uma chave de API da organização para um projeto

Nesta página

  • Recurso
  • Parâmetros do caminho da solicitação
  • Solicitar parâmetros de query
  • Parâmetros do corpo da solicitação
  • Resposta
  • Exemplo de solicitação
  • Exemplo de resposta
  • Cabeçalho de resposta
  • Corpo de resposta

URL base: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

PATCH /groups/{PROJECT-ID}/apiKeys/{API-KEY-ID}
Nome
Tipo
Descrição
PROJECT-ID
string
Identificador único do Projeto cujas chaves de API você deseja atualizar. Use o endpoint /groups para recuperar todas as organizações para as quais o usuário autenticado tem acesso.
API-KEY-ID
string
Identificador único da chave de API que você deseja atualizar. Solicite ao endpoint /groups/{ID do projeto}/apiKeys que recupere todas as chaves de API às quais o usuário autenticado tem acesso para a organização especificada.

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
boleano
Indica se o corpo da resposta deve estar em um prettyprint formato.
false
envelope
boleano

Indica se deseja ou não envolver a resposta em um envelope.

Alguns clientes de API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, configure "envelope" : true na query.

Para endpoints que retornam um resultado, o corpo da resposta inclui:

Status
Código de resposta HTTP
envelope
Corpo de resposta esperado

Para endpoints que retornam uma lista de resultados, o objeto results é um envelope. O Ops Manager adiciona o campo status ao corpo da resposta.

none

O parâmetro do corpo é obrigatório.

Nome
Tipo
necessidade
Descrição
roles
array de strings
Obrigatório

Lista de funções que a chave API deve receber. No mínimo, uma função deve ser fornecida. Todos os roles fornecidos devem ser válidos para o projeto atribuído:

Valor da função na API
Função
GROUP_AUTOMATION_ADMIN
GROUP_BACKUP_ADMIN
GROUP_DATA_ACCESS_ADMIN
GROUP_DATA_ACCESS_READ_ONLY
GROUP_DATA_ACCESS_READ_WRITE
GROUP_MONITORING_ADMIN
GROUP_OWNER
GROUP_READ_ONLY
GROUP_USER_ADMIN

Observação

Inclua todos os roles que você deseja que essa chave de API tenha. Quaisquer funções que não estejam nesta matriz são removidas.

Nome
Tipo
Descrição
desc
string
Descrição desta chave de API da Organização atribuída a este projeto.
id
string
Identificador único para esta chave de API da Organização atribuída a este projeto.
privateKey
string

Chave privada editada para esta chave de API da Organização atribuída a este projeto.

Observação

Essa chave é exibida sem edição quando criada pela primeira vez.

publicKey
string
Chave pública para esta chave de API da Organização atribuída a este projeto.
roles
array de objetos
Funções que essa chave de API da organização atribuída a esse projeto tem. Essa matriz retorna todos os roles de organização e projeto que o usuário tem no Ops Manager.
roles.groupId
string
Identificador único do projeto ao qual pertence este role.
roles.orgId
string
Identificador único da organização à qual pertence esse role.
roles.roleName
string

Nome da função. Esse recurso retorna todos os roles que o usuário tem no Ops Manager. Os valores possíveis são:

Roles da organização

Se esta for uma roles.orgId (Organização), os valores incluem:

Valor da função na API
Função
ORG_OWNER
ORG_MEMBER
ORG_GROUP_CREATOR
ORG_READ_ONLY

Roles do projeto

Se este for um roles.groupId (Projeto), os valores incluem:

Valor da função na API
Função
GROUP_AUTOMATION_ADMIN
GROUP_BACKUP_ADMIN
GROUP_DATA_ACCESS_ADMIN
GROUP_DATA_ACCESS_READ_ONLY
GROUP_DATA_ACCESS_READ_WRITE
GROUP_MONITORING_ADMIN
GROUP_OWNER
GROUP_READ_ONLY
GROUP_USER_ADMIN

Observação

O usuário que faz a solicitação pode ser formatado como {USERNAME}:{APIKEY} ou {PUBLIC-KEY}:{PRIVATE-KEY}.

1curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
2 --header "Accept: application/json" \
3 --header "Content-Type: application/json" \
4 --include \
5 --request PATCH "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/apiKeys/5d1d143c87d9d63e6d694746?pretty=true" \
6 --data '{
7 "roles": [ "GROUP_READ_ONLY", "GROUP_DATA_ACCESS_READ_WRITE" ]
8 }'
HTTP/1.1 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
HTTP/1.1 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}
1{
2 "desc" : "New API key for test purposes",
3 "id" : "5d1d143c87d9d63e6d694746",
4 "links" : [ {
5 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/5980cfe20b6d97029d82fa63/apiKeys/5d1d143c87d9d63e6d694746",
6 "rel" : "self"
7 } ],
8 "privateKey" : "********-****-****-eac4256753ba",
9 "publicKey" : "{PUBLIC-KEY}",
10 "roles" : [ {
11 "orgId" : "5980cfe20b6d97029d82fa63",
12 "roleName" : "ORG_BILLING_ADMIN"
13 }, {
14 "groupId" : "{PROJECT-ID}",
15 "roleName" : "GROUP_DATA_ACCESS_READ_WRITE"
16 }, {
17 "orgId" : "5980cfe20b6d97029d82fa63",
18 "roleName" : "ORG_MEMBER"
19 }, {
20 "groupId" : "{PROJECT-ID}",
21 "roleName" : "GROUP_READ_ONLY"
22 } ]
23}
← Atribuir uma chave de API da organização a um projeto