AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

サービス アカウント付きのCloud Managerへのプログラムによるアクセス

APIのみを使用して組織またはプロジェクトへのプログラムによるアクセスを許可するには、 APIキーまたはサービス アカウントを作成します。これにより、ユーザー名とパスワードとして機能するキーとアクセス トークンがネットワーク経由で送信されることがなくなります。 APIキーと サービス アカウント

  • UIを介してCloud Managerにログするために使用することはできません。

  • APIキーとサービス アカウントで、エラーなくAPIエンドポイントを呼び出せるようにするには、ユーザーと同様にロールを付与する必要があります。

  • は 1 つの組織に属していますが、その組織内の任意の数のプロジェクトにアクセスできます。

これら 2 つの認証方法の詳細については、「 認証 」を参照してください。

注意

必要な権限

任意のロールを持つ組織への、プログラムによるアクセスを表示できます。

その他のアクションを実行するには、Organization Owner ロールが必要です。

API キーまたはサービスアカウントを使用して、プログラムによって組織へのアクセス権を付与するには、以下の手順を使用します。これら 2 つの認証方法の詳細については、「 認証 」を参照してください。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3
  1. Nameと入力します。

  2. Descriptionと入力します。

  3. Client Secret Expiration メニューから期間を選択します。

  4. [Organization Permissions] メニューから、サービスアカウントの新しいロールを選択します。

4
5

クライアント シークレットは、アクセス トークンを作成するときにパスワードとして機能します。

警告

クライアント シークレットをすべて見ることができるのはこの時だけです。[Copy] をクリックして、安全な場所に保存します。それ以外の場合は、新しいクライアント シークレットを作成する必要があります。

6
  1. [Add Access List Entry] をクリックします。

  2. Cloud Managerがこのサービス APIIPアカウントのAPIリクエストを受け入れるIPアドレスまたは CIDR ブロックを入力します。Cloud Manager

    Use Current IP AddressCloud Managerにアクセスするために使用しているホストもこのサービス アカウントを使用してAPIリクエストを行う場合は、 をクリックすることもできます。

  3. [Save] をクリックします。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3

Add API KeyページのAPI Key Informationステップから以下の操作を行います。

フィールド

説明

新しいAPIキーの説明を入力します。

組織権限

API キーの 新しいロール を 選択します。

4
5

Add API KeyページのPrivate Key & Access Listステップから、 Add Access List Entryをクリックします。

このAPIキーは、次のいずれかを選択できます。

  • Cloud Manager がAPIリクエストを受け入れる IPv4 アドレスを入力するか、

  • Cloud Manager にアクセスするために使用しているホストがAPIリクエストを行う場合は、 Use Current IP Addressをクリックします。

6

警告

このページを終了する前に秘密キーをコピーする

Cloud Manager は、このページにPrivate Keyを 1 回表示します。 [ Copyをクリックして、秘密キーをクリップボードに追加します。 この秘密キーを他のパスワードと同様に安全に保存します。

組織へのアクセス権を持つすべてのAPIキーまたはサービス アカウントの詳細を表示できます。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3

組織へのアクセス権を持つすべてのサービス アカウントが表示されます。

サービス アカウントの名前をクリックすると、次のような詳細が表示されます。

  • サービス アカウントの難読化されたクライアントシークレット

  • クライアントシークレットが最後に使用された日付

  • クライアントシークレットが作成された日付

  • サービス アカウントがAPIにアクセスできるIPアドレス

  • サービス アカウントに割り当てられたロール

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3
  1. APIキーの横にある [] をクリックします。

  2. [View Details] をクリックします。

    <Public Key> API Key Detailsモーダルには次の内容が表示されます。

    • 難読化されたPrivate Key

    • キーが最後に使用された日付。

    • キーが作成された日付。

    • アクセス リスト内のキーがある IPv4 アドレス。

    • キーがアクセス権を付与されたプロジェクト。

組織内のAPIキーまたはサービス アカウントのロール、説明、またはアクセス リストを変更できます。サービス アカウント用に新しいクライアントシークレットを生成することもできます。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3
4

Name または Description を変更するには、 をクリックします。

5
  1. クリック Generate New Client Secret

  2. メニューからクライアントシークレットの期間を選択します。 この期間が経過すると、クライアントシークレットは期限切れになります。

  3. [Generate New] をクリックします。

  4. Copy をクリックして、クライアントシークレットを安全な場所に保存します。この時間は、完全なクライアントシークレットを表示できる唯一の時間です。

6
  1. [Edit Permissions] をクリックします。

  2. Organization Permissionsメニューから、サービス アカウントの 新しいロール を選択します。

  3. [Save and next] をクリックします。

    重要

    サービス アカウントの認証情報は、有効期限が切れるか、ユーザーが取り消すまでアクティブのままになります。

7
  1. To add an IP address or CIDR block from which you want Cloud Manager to accept API requests for this service account, click Add Access List Entry and type an IP address.

    Use Current IP AddressCloud Managerにアクセスするために使用しているホストもこのサービス アカウントを使用してAPIリクエストを行う場合は、 をクリックすることもできます。

  2. アクセス リストからIPアドレスを削除するには、クリックします許可されIP

  3. [Save] をクリックします。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3
  1. をクリックします変更するAPIキーの横にある 。

  2. [Edit] をクリックします。

4

Add API KeyページのAPI Key Informationステップから以下の操作を行います。

フィールド

説明

新しいAPIキーの説明を入力します。

組織権限

API キーの 新しいロール を 選択します。

5
6

Add API KeyページのPrivate Key & Access Listステップから、 Add Access List Entryをクリックします。

このAPIキーは、次のいずれかを選択できます。

  • Cloud Manager がAPIリクエストを受け入れる IPv4 アドレスを入力するか、

  • Cloud Manager にアクセスするために使用しているホストがAPIリクエストを行う場合は、 Use Current IP Addressをクリックします。

7

警告

このページを終了する前に秘密キーをコピーする

Cloud Manager は、このページにPrivate Keyを 1 回表示します。 [ Copyをクリックして、秘密キーをクリップボードに追加します。 この秘密キーを他のパスワードと同様に安全に保存します。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3
  1. Actions削除するサービス アカウントの右側にある の下のアイコンをクリックします。

  2. [Delete] をクリックします。

組織からサービス アカウントを削除すると、サービス アカウントがアクセスを許可されていたすべてのプロジェクトからもそのサービス アカウントが削除されます。

1
  1. まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. サイドバーで、 Identity & Access見出しの下のApplications`をクリックします。

アプリケーション ページが表示されます。

2
3
  1. をクリックしますを、削除するAPIキーの横にあります。

  2. Click Delete to confirm that you want to delete this API Key or Cancel to leave the key in the Organization.

注意

組織からAPIキーを削除すると、キーにアクセスが付与されていたすべてのプロジェクトからそのキーも削除されます。

注意

必要な権限

任意のロールを持つプロジェクトへの、プログラムによるアクセスを表示できます。

その他のアクションを実行するには、Project User Admin ロールが必要です。

API キーまたはサービス アカウントのいずれかを使用して、プロジェクトへのプログラムによるアクセス権を許可するには、次の手順に従います。これら 2 つの認証方法の詳細については、「 認証 」を参照してください。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4
  1. Nameと入力します。

  2. Descriptionと入力します。

  3. Client Secret Expiration メニューから期間を選択します。

  4. [Project Permissions(プロジェクト権限)] メニューから、サービスアカウントの新しいロールを選択します。

5
6

クライアント シークレットは、アクセス トークンを作成するときにパスワードとして機能します。

警告

クライアント シークレットをすべて見ることができるのはこの時だけです。[Copy] をクリックして、安全な場所に保存します。それ以外の場合は、新しいクライアント シークレットを作成する必要があります。

7
  1. [Add Access List Entry] をクリックします。

  2. Cloud Managerがこのサービス APIIPアカウントのAPIリクエストを受け入れるIPアドレスまたは CIDR ブロックを入力します。Cloud Manager

    Use Current IP AddressCloud Managerにアクセスするために使用しているホストもこのサービス アカウントを使用してAPIリクエストを行う場合は、 をクリックすることもできます。

  3. [Save] をクリックします。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4

Add API KeyページのAPI Key Informationステップから以下の操作を行います。

フィールド

説明

新しいAPIキーの説明を入力します。

プロジェクト権限

API キーの 新しいロール を 選択します。

5
6

Add API KeyページのPrivate Key & Access Listステップから、 Add Access List Entryをクリックします。

このAPIキーは、次のいずれかを選択できます。

  • Cloud Manager がAPIリクエストを受け入れる IPv4 アドレスを入力するか、

  • Cloud Manager にアクセスするために使用しているホストがAPIリクエストを行う場合は、 Use Current IP Addressをクリックします。

7

警告

このページを終了する前に秘密キーをコピーする

Cloud Manager は、このページにPrivate Keyを 1 回表示します。 [ Copyをクリックして、秘密キーをクリップボードに追加します。 この秘密キーを他のパスワードと同様に安全に保存します。

プロジェクトへのアクセス権を持つすべてのAPIキーまたはサービス アカウントの詳細を表示できます。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3

プロジェクトへのアクセス権を持つすべてのサービス アカウントが表示されます。

サービス アカウントの名前をクリックすると、次のような詳細が表示されます。

  • サービス アカウントの難読化されたクライアントシークレット

  • クライアントシークレットが最後に使用された日付

  • クライアントシークレットが作成された日付

  • サービス アカウントがAPIにアクセスできるIPアドレス

  • サービス アカウントに割り当てられたロール

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4
  1. APIキーの横にある [] をクリックします。

  2. [View Details] をクリックします。

    <Public Key> API Key Detailsモーダルには次の内容が表示されます。

    • 難読化されたPrivate Key

    • キーが最後に使用された日付。

    • キーが作成された日付。

    • アクセス リスト内のキーがある IPv4 アドレス。

    • キーがアクセス権を付与されたプロジェクト。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4
5

Name または Description を変更するには、 をクリックします。

6
  1. クリック Generate New Client Secret

  2. メニューからクライアントシークレットの期間を選択します。 この期間が経過すると、クライアントシークレットは期限切れになります。

  3. [Generate New] をクリックします。

  4. Copy をクリックして、クライアントシークレットを安全な場所に保存します。この時間は、完全なクライアントシークレットを表示できる唯一の時間です。

7
  1. [Edit Permissions] をクリックします。

  2. Project Permissionsメニューから、サービス アカウントの 新しいロール を選択します。

  3. [Save and next] をクリックします。

    重要

    サービス アカウントの認証情報は、有効期限が切れるか、ユーザーが取り消すまでアクティブのままになります。

8
  1. To add an IP address or CIDR block from which you want Cloud Manager to accept API requests for this service account, click Add Access List Entry and type an IP address.

    Use Current IP AddressCloud Managerにアクセスするために使用しているホストもこのサービス アカウントを使用してAPIリクエストを行う場合は、 をクリックすることもできます。

  2. アクセス リストからIPアドレスを削除するには、クリックします許可されIP

  3. [Save] をクリックします。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4
  1. をクリックします変更するAPIキーの横にある 。

  2. [Edit] をクリックします。

5

Add API KeyページのAPI Key Informationステップから以下の操作を行います。

フィールド

説明

新しいAPIキーの説明を入力します。

プロジェクト権限

API キーの 新しいロール を 選択します。

6
7

Add API KeyページのPrivate Key & Access Listステップから、 Add Access List Entryをクリックします。

このAPIキーは、次のいずれかを選択できます。

  • Cloud Manager がAPIリクエストを受け入れる IPv4 アドレスを入力するか、

  • Cloud Manager にアクセスするために使用しているホストがAPIリクエストを行う場合は、 Use Current IP Addressをクリックします。

8

警告

このページを終了する前に秘密キーをコピーする

Cloud Manager は、このページにPrivate Keyを 1 回表示します。 [ Copyをクリックして、秘密キーをクリップボードに追加します。 この秘密キーを他のパスワードと同様に安全に保存します。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4
  1. プロジェクトから削除するサービス アカウントの右側にある の下のアイコンをクリックします。Actions

  2. [Remove from this project] をクリックします。

重要

サービス アカウントは引き続き組織内に存在し、有効期限が切れるか手動で取り消されるまで、既存の認証情報はアクティブのままになります。

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、Project Settings をクリックします。

    [ Project Settings ]ページが表示されます。

2

サイドバーで、 Identity & Access見出しの下のApplicationsをクリックします。

アプリケーション ページが表示されます。

3
4
  1. をクリックしますを、削除するAPIキーの横にあります。

  2. Click Delete to confirm that you want to delete this API Key or Cancel to leave the key in the Organization.

注意

組織からAPIキーを削除すると、キーにアクセスが付与されていたすべてのプロジェクトからそのキーも削除されます。

Cloud Manager API は、 APIキーまたはサービスアカウントの 2 つの認証方法のいずれかを使用してリクエストを認証します。次の手順を完了するには、希望する認証方法を構成するときに保存したキーまたはシークレットが必要です。

サービス アカウントを使用して API リクエストを行うには、サービス アカウントを使用してアクセス トークンを生成し、そのアクセス トークンをリクエストで使用します。

1

サービスアカウントの作成直後に保存した、mdb_sa_sk_ で始まるクライアント シークレットを見つけます。クライアント シークレットを表示できるのは、このときだけです。クライアント シークレットを保存しなかった場合は、新しいクライアント シークレットを生成する必要があります。

2

たとえば、次を実行します。

echo -n {clientId}:{clientSecret} | base64 -w0
3

次の例の {base64Auth} を前のステップの出力に置き換え、実行します。

1curl --request POST \
2 --url https://cloud.mongodb.com/api/oauth/token \
3 --header 'accept: application/json' \
4 --header 'cache-control: no-cache' \
5 --header 'authorization: Basic {base64Auth}' \
6 --header 'content-type: application/x-www-form-urlencoded' \
7 --data 'grant_type=client_credentials'
{"access_token":"{accessToken}""expires_in":3600,"token_type":"Bearer"}%

重要

アクセス トークンは 1 時間(3600 秒)有効です。アクセス トークンを更新することはできません。このアクセス トークンの有効期限が切れたら、この手順を繰り返して新しいアクセス トークンを生成します。

4

次の例の {accessToken} を前のステップの出力に置き換えます。例、 --header 'Authorization: Bearer eyJ...pSnF' \

次のサンプルGETリクエストは、現在のユーザーの すべてのプロジェクトを返します。

curl --request GET \
--url https://cloud.mongodb.com/api/public/v1.0/groups \
--header 'Authorization: Bearer {accessToken}' \
--header 'Accept: application/json' \

次のサンプルPOSTリクエストは、リクエスト本文を受け取り、組織内に MyProject という名前のプロジェクトを作成 します。

curl --header 'Authorization: Bearer {accessToken}' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--include \
--request POST 'https://cloud.mongodb.com/api/public/v1.0/groups' \
--data '
{
"name": "MyProject",
"orgId": "5a0a1e7e0f2912c554080adc"
}'

リクエストは次の例のようになります。ここで、{publicKey} はAPI公開キー、{privateKey} は対応する秘密キーです。

次のサンプルGETリクエストは、現在のユーザーの すべてのプロジェクトを返します。

curl --user "{publicKey}:{privateKey}" --digest \
--header "Accept: application/json" \
--include \
--request GET "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true"

次のサンプルPOSTリクエストは、リクエスト本文を受け取り、組織内に MyProject という名前のプロジェクトを作成 します。

curl --user "{publicKey}:{privateKey}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request POST "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true" \
--data '
{
"name": "MyProject",
"orgId": "deffb2031b938da53f16d714"
}'