Menu Docs
Página inicial do Docs
/ /

Criar uma configuração do Key Vault

Cria uma configuração de cofre de chave que o gerente de operações usa para ler credenciais do HashiCorp Vault.

Requer que a chave de API que chama esse endpoint tenha a Global Owner função.

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

POST /keyVault

Este endpoint não usa parâmetros de caminho de solicitação HTTP.

Os seguintes parâmetros de query são opcionais:

Nome
Tipo
necessidade
Descrição
Default

pretty

booleano

Opcional

Sinalizador que indica se o corpo da resposta está em um pretty-print formato.

false

envelope

booleano

Opcional

Sinalizador que indica se deve 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, defina envelope=true na query.

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

  • status: Código de resposta HTTP

  • content: Corpo de resposta esperado

false

Nome
Tipo
necessidade
Descrição

Amigável

string

Obrigatório

Etiqueta legível por humanos que identifica esta configuração de cofre de chaves. O Ops Manager exibe este valor na lista Key Vault e no campo Vault Name.

type

string

Obrigatório

Tipo de fornecedor de cofre de chaves. O Ops Manager aceita apenas HASHI_CORP, que representa o HashiCorp Vault.

URL

string

Obrigatório

Endereço do servidor HashiCorp Vault ao qual o Ops Manager se conecta, como https://localhost:8200/.

auth

objeto

Obrigatório

Detalhes de autenticação que o Ops Manager usa para se conectar ao HashiCorp Vault.

auth.mecanismo

string

Obrigatório

Método de autenticação que o gerente de operações usa para se conectar ao HashiCorp Vault. O Ops Manager aceita os seguintes valores:

  • TOKEN

  • JWT

auth.secret

string

Obrigatório

Credenciais que o gerente de operações usa para autenticar no HashiCorp Vault.

Quando auth.mechanism TOKENfor, defina este valor para o token do Vault. Quando auth.mechanism JWTfor, defina esse valor para a chave privada RSA formatada em PEM que assina o JWT.

O Ops Manager criptografa esse valor em repouso e o edita em respostas de API.

auth.jwtClaims

objeto

Condicional

Declarações que o gerente de operações envia quando solicita um login JWT do HashiCorp Vault. Obrigatório auth.mechanism quando JWT é. Inclua as reivindicações user role e.

customCertificates

array

Opcional

Lista de certificados de autoridade de certificação personalizados que o Ops Manager usa para verificação TLS quando se conecta ao servidor HashiCorp Vault.

customCertificates[n].filename

string

Condicional

Nome que identifica o arquivo PEM da Autoridade de certificação. Necessário para cada entrada customCertificates no.

customCertificates[n].certString

string

Condicional

Conteúdo do arquivo PEM da Autoridade de certificação. Necessário para cada entrada customCertificates no. O Ops Manager edita esse valor nas respostas da API.

Nome
Tipo
Descrição

id

string

Identificador exclusivo que o Ops Manager gera para essa configuração de cofre de chaves. Use esse valor como vaultId ao configurar um armazenamento de snapshots de armazenamento compatível com S3para usar esse cofre de chave.

Amigável

string

Etiqueta legível por humanos que identifica esta configuração de cofre de chaves.

type

string

Tipo de fornecedor de cofre de chaves. O Ops Manager retorna HASHI_CORP, que representa o HashiCorp Vault.

URL

string

Endereço do servidor do HashiCorp Vault ao qual o Ops Manager se conecta.

auth

objeto

Detalhes de autenticação que o Ops Manager usa para se conectar ao HashiCorp Vault.

auth.mecanismo

string

Método de autenticação que o gerente de operações usa para se conectar ao HashiCorp Vault. O Ops Manager retorna um dos seguintes valores:

  • TOKEN

  • JWT

auth.secret

string

Credenciais que o gerente de operações usa para autenticar no HashiCorp Vault. O Ops Manager criptografa esse valor em repouso e retorna [REDACTED] em vez do valor armazenado.

auth.jwtClaims

objeto

Declarações que o gerente de operações envia quando solicita um login JWT do HashiCorp Vault. O Ops Manager retorna este objeto somente quando auth.mechanism JWTestá.

customCertificates

array

Lista de certificados de autoridade de certificação personalizados que o Ops Manager usa para verificação TLS quando se conecta ao servidor HashiCorp Vault.

customCertificates[n].filename

string

Nome que identifica o arquivo PEM da Autoridade de certificação.

customCertificates[n].certString

string

Conteúdo do arquivo PEM da Autoridade de certificação. O Ops Manager retorna [REDACTED] em vez do valor armazenado.

links

array de objetos

Um ou mais links para sub-recursos ou recursos relacionados. Todas as arrays links nas respostas incluem pelo menos um link chamado self. Os relacionamentos entre URLs são explicados na Especificação de links da web.

curl --user '{PUBLIC-KEY}:{PRIVATE-KEY}' --digest \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--include \
--request POST 'https://<OpsManagerHost>:<Port>/api/public/v1.0/admin/keyVault?pretty=true' \
--data '{
"friendlyName": "myVault",
"type": "HASHI_CORP",
"url": "https://localhost:8200/",
"auth": {
"mechanism": "TOKEN",
"secret": "<vault-token>"
}
}'
curl --user '{PUBLIC-KEY}:{PRIVATE-KEY}' --digest \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--include \
--request POST 'https://<OpsManagerHost>:<Port>/api/public/v1.0/admin/keyVault?pretty=true' \
--data '{
"friendlyName": "myVault",
"type": "HASHI_CORP",
"url": "https://localhost:8200/",
"auth": {
"mechanism": "JWT",
"secret": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----",
"jwtClaims": {
"user": "ops-manager",
"role": "ops-manager-role"
}
}
}'
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}
{
"id": "{KEY-VAULT-ID}",
"friendlyName": "myVault",
"type": "HASHI_CORP",
"url": "https://localhost:8200/",
"auth": {
"mechanism": "TOKEN",
"secret": "[REDACTED]"
},
"links": [
{
"href": "https://<OpsManagerHost>:<Port>/api/public/v1.0/admin/keyVault/{KEY-VAULT-ID}",
"rel": "self"
}
]
}

Voltar

Obter todos

Nesta página