1 つのプロジェクトに 1 つの組織 API キーを作成・割り当て
このエンドポイントへのすべてのリクエストは、MongoDB Ops Manager ユーザーの API アクセス リストの IP アドレスから送信される必要があります。 API アクセス リストの構成に関する詳細なドキュメントについては、「 組織に対して API アクセス リストが必要 」を参照してください。
ベース URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
Resource
POST /groups/{PROJECT-ID}/apiKeys
リクエスト パス パラメーター
名前 | タイプ | 説明 |
---|---|---|
PROJECT-ID | string | APIキーを取得するプロジェクトの一意の識別子。 認証済みユーザーがアクセスできるすべての組織を取得するには、 /groupsエンドポイントを使用します。 |
リクエスト クエリ パラメータ
次のクエリ パラメータは 任意です。
名前 | タイプ | 説明 | default | ||||
---|---|---|---|---|---|---|---|
pageNum | integer | ページ番号(1 インデックス ベース)。 | 1 | ||||
itemsPerPage | integer | 1 ページあたりに返す項目の数は最大 500 です。 | 100 | ||||
pretty | ブール値 | レスポンス本体を pretty-print に含めるかどうかを示します 形式。 | false | ||||
envelope | ブール値 | 応答をエンベロープでラップするかどうかを示します。 一部のAPIクライアントは、 HTTPレスポンス ヘッダーまたはステータス コードにアクセスできません。 これを修正するには、クエリで 1 つの結果を返すエンドポイントの場合、レスポンス本体には次のものが含まれます。
結果のリストを返すエンドポイントの場合、 | なし |
リクエスト ボディ パラメータ
2 つの本体パラメーターのうち少なくとも 1 つが必要です。
名前 | タイプ | 説明 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
desc | string | APIキーの説明。 1250長さは 文字と 文字の間でなくてはなりません。 | ||||||||||||||||||||
roles | string 配列 | APIキーが持つ必要があるロールのリスト。
プロジェクト ロールには、以下が含まれます。
|
応答
名前 | タイプ | 説明 | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
desc | string | このプロジェクトに割り当てられた組織APIキーの説明。 | ||||||||||||||||||||||||||||||
id | string | このプロジェクトに割り当てられた組織APIキーの一意の識別子。 | ||||||||||||||||||||||||||||||
privateKey | string | このプロジェクトに割り当てられた組織APIキーの編集済み秘密キー。 このキーは、最初に作成したときは編集されずに表示されます。 | ||||||||||||||||||||||||||||||
publicKey | string | このプロジェクトに割り当てられた組織APIキーの公開キー。 | ||||||||||||||||||||||||||||||
roles | オブジェクト配列 | このプロジェクトに割り当てられたこの組織APIキーが持つロール。 この配列は、MongoDB Ops Manager でユーザーが持っているすべての組織ロールとプロジェクト ロールを返します。 | ||||||||||||||||||||||||||||||
roles.groupId | string | このロールが属するプロジェクトの一意の識別子。 | ||||||||||||||||||||||||||||||
roles.orgId | string | このロールが属する組織の一意の識別子。 | ||||||||||||||||||||||||||||||
roles.roleName | string | ロールの名前。 このリソースは、MongoDB Ops Manager でユーザーが持っているすべてのロールを返します。 可能な値は次のとおりです。 組織ロール これが
プロジェクト ロール これが
|
リクエストの例
注意
リクエストを行うユーザーは、 {USERNAME}:{APIKEY}
または{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 POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/apiKeys?pretty=true" \ 6 --data '{ 7 "desc" : "New API key for test purposes", 8 "roles": ["GROUP_READ_ONLY", "GROUP_DATA_ACCESS_ADMIN"] 9 }'
応答例
応答ヘッダー
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}
レスポンス本体
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" : "********-****-****-db2c132ca78d", 9 "publicKey" : "{PUBLIC-KEY}", 10 "roles" : [ { 11 "groupId" : "{PROJECT-ID}", 12 "roleName" : "GROUP_READ_ONLY" 13 }, { 14 "groupId" : "{PROJECT-ID}", 15 "roleName" : "GROUP_DATA_ACCESS_ADMIN" 16 } ] 17 }