Docs Menu
Docs Home
/ /

1 つのキーヴォールト構成を作成

Ops Manager が HashiCorp Vault から認証情報を読み取るために使用する 1 つのキーヴォールト構成を作成します。

このエンドポイントを呼び出す APIキーにGlobal Owner ロールが必要です。

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

POST /keyVault

このエンドポイントは、HTTP リクエスト パス パラメーターを使用しません。

次のクエリ パラメータは 任意です。

名前
タイプ
必要性
説明
default

pretty

ブール値

任意

レスポンス本体が pretty-print 形式であるかどうかを示すフラグ。

false

envelope

ブール値

任意

応答をエンベロープでラップするかどうかを示すフラグ。

一部のAPIクライアントは、 HTTPレスポンス ヘッダーまたはステータス コードにアクセスできません。 これを修正するには、クエリでenvelope=trueを設定します。

1 つの結果を返すエンドポイントの場合、レスポンス本体には次のものが含まれます。

  • status: HTTP レスポンス コード

  • content: 期待される応答本体

false

名前
タイプ
必要性
説明

prettyName

string

必須

このキーヴォールト構成を識別する、人間が判読できるラベル。 MongoDB Ops Manager は、Key Vault リストと Vault Nameフィールドにこの値を表示します。

タイプ

string

必須

キーヴォールト プロバイダーの種類。 MongoDB Ops Manager は、HashiCorp Vault を表す HASHI_CORP のみを受け入れます。

URL

string

必須

MongoDB Ops Manager が接続する HashiCorp Vaultサーバーのアドレス(https://localhost:8200/など)。

認証

オブジェクト

必須

Ops Manager が HashiCorp Vault に接続するために使用する認証の詳細。

auth.mechanism

string

必須

Ops Manager が HashiCorp Vault に接続するために使用する認証方法。 MongoDB Ops Manager は、次の値を受け入れます。

  • TOKEN

  • JWT

auth.secret

string

必須

Ops Manager が HashiCorp Vault に認証するために使用する認証情報。

auth.mechanismTOKEN の場合は、この値を Vault トークンに設定します。auth.mechanismJWT の場合は、この値を JWT に署名する PEM 形式の RSA秘密キーに設定します。

MongoDB Ops Manager は、保管時にこの値を暗号化し、 API応答で編集します。

auth.jwtClaims

オブジェクト

条件付き

MongoDB Ops Manager が HashiCorp Vault から JWT ログインを要求するときに送信するクレーム。auth.mechanismJWT の場合に必須です。userrole のクレームを含めます。

customCertificates

配列

任意

HashiCorp Vaultサーバーに接続するときに MongoDB Ops Manager が TLS 検証に使用するカスタム認証局証明書のリスト。

customCertificates[n].filename

string

条件付き

認証局 PEMファイルを識別する名前。customCertificates の各エントリに必要です。

customCertificates[n].certString

string

条件付き

認証局 PEMファイルの内容。 の各エントリに必要です。customCertificates MongoDB Ops Manager は、 API応答でこの値を編集します。

名前
タイプ
説明

id

string

MongoDB Ops Manager がこのキーヴォールト構成に対して生成する一意の識別子。このキーヴォールトを使用するように S3 互換ストレージ読み取りを構成する場合は、この値を vaultId として使用します。

prettyName

string

このキーヴォールト構成を識別する、人間が判読できるラベル。

タイプ

string

キーヴォールト プロバイダーの種類。 MongoDB Ops Manager では、HashiCorp Vault を表す HASHI_CORP が返されます。

URL

string

MongoDB Ops Manager が接続する HashiCorp Vaultサーバーのアドレス。

認証

オブジェクト

Ops Manager が HashiCorp Vault に接続するために使用する認証の詳細。

auth.mechanism

string

Ops Manager が HashiCorp Vault に接続するために使用する認証方法。 MongoDB Ops Manager は、次のいずれかの値を返します。

  • TOKEN

  • JWT

auth.secret

string

Ops Manager が HashiCorp Vault に認証するために使用する認証情報。 MongoDB Ops Manager は保管時にこの値を暗号化し、保存された値の代わりに [REDACTED] を返します。

auth.jwtClaims

オブジェクト

MongoDB Ops Manager が HashiCorp Vault から JWT ログインを要求するときに送信するクレーム。 MongoDB Ops Managerauth.mechanism は、 がJWT の場合にのみこのオブジェクトを返します。

customCertificates

配列

HashiCorp Vaultサーバーに接続するときに MongoDB Ops Manager が TLS 検証に使用するカスタム認証局証明書のリスト。

customCertificates[n].filename

string

認証局PEMファイルを識別する名前。

customCertificates[n].certString

string

認証局 PEMファイルの内容。 MongoDB Ops Manager[REDACTED] は、保存された値の代わりに を返します。

Links

オブジェクト配列

サブリソースまたは関連リソースへの 1 つ以上のリンク。応答内のすべての links 配列には、self と呼ばれるリンクが少なくとも 1 つ含まれています。URLの関係は、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"
}
]
}

戻る

すべて取得

項目一覧