サービス アカウントのシークレットを作成
- Cloud Managerへのプログラムによるアクセスのための OAuth 2.0認証はプレビュー機能として利用できます。
- 機能および関連するドキュメントは、プレビュー期間中にいつでも変更される可能性があります。 OAuth2.0 認証を使用するには、 Cloud Manager Public APIへのリクエストで使用する サービス アカウント を作成します。
ベース URL: https://cloud.mongodb.com/api/public/v 1.0
Resource
POST /groups/{PROJECT-ID}/serviceAccounts/{CLIENT-ID}/secrets/
リクエスト パス パラメーター
名前 | タイプ | 説明 |
---|---|---|
| string | ターゲット サービス アカウントが属するプロジェクトの一意の識別子です。 認証済みユーザーがアクセスできるすべてのプロジェクトを取得するには、 /groups エンドポイントを使用します。 |
| string | シークレットを作成するサービス アカウントの一意な識別子です。 /groups/{PROJECT- ID}/serviceAccounts エンドポイントを使用して、指定されたプロジェクトに対して認証済みユーザーがアクセスできるすべてのサービス アカウントを取得します。 |
リクエスト クエリ パラメータ
次のクエリ パラメータは 任意です。
名前 | タイプ | 説明 | default | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | integer | ページ番号(1 インデックス ベース)。 |
| ||||||
itemsPerPage | integer | 1 ページあたりに返す項目の数は最大 500 です。 |
| ||||||
pretty | ブール値 | レスポンス本体を pretty-print にするかどうかを示します 形式。 |
| ||||||
envelope | ブール値 | 応答をエンベロープでラップするかどうかを示します。 一部の APIクライアントは、 HTTPレスポンス ヘッダーまたはステータス コードにアクセスできません。 これを修正するには、クエリで 1 つの結果を返すエンドポイントの場合、レスポンス本体には次のものが含まれます。
結果のリストを返すエンドポイントの場合、 | なし |
リクエスト ボディ パラメータ
この本体パラメーターは必須です。
名前 | タイプ | 説明 |
---|---|---|
| string | このサービス アカウントのシークレットが期限切れになる時間数。 最小値は 8 時間です。最大は 8766 時間(1 年)です。 |
応答
名前 | タイプ | 説明 |
---|---|---|
| string | シークレットを識別する一意の 24桁の 16 進数文字列。string |
| string | サービス アカウント シークレット。作成時にのみ利用可能です。 |
| タイムスタンプ | 作成時刻を表すタイムスタンプ。 |
| タイムスタンプ | シークレットの有効期限を表すタイムスタンプ。 |
リクエストの例
注意
リクエストを行うユーザーは、 {PUBLIC-KEY}:{PRIVATE-KEY}
としてフォーマットできます。
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --request POST "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/serviceAccounts/{CLIENT-ID}/secrets/?pretty=true" \ --data '{ "secretExpiresAfterHours": "3600" }'
応答例
応答ヘッダー
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
201 Created 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}
レスポンス本体
注意
レスポンス本体では secret
は編集されていません。この例は、セキュリティ上の理由から編集されています。
{ "createdAt" : "2024-08-08T22:19:45Z", "expiresAt" : "2025-01-05T22:19:45Z", "id" : "66b544825867ba071c85469d", "secret" : "mdb_sa_sk_...AOk5" }