Docs Menu
Docs Home
/
MongoDB Atlas
/ /

カスタムデータベースロールの設定

項目一覧

  • Considerations
  • 必要なアクセス権
  • カスタムロールを追加する
  • カスタムロールを表示する
  • カスタムロールを変更する
  • カスタムロールを削除する
  • カスタムロールを割り当てる

組み込みロールに必要な権限セットが含まれていない場合は、Atlas でカスタムロールを作成できます。Atlas は、各データベース ユーザーのカスタムロールを次の内容とともに適用します。

  • データベース ユーザーを追加するとき、または データベース ユーザーを変更するときに割り当てる、任意の 組み込みロール

  • データベース ユーザーを追加するとき、または データベース ユーザーを変更するときに割り当てる 特定の権限

各データベース ユーザーに複数のカスタムロールを割り当てることができます。

注意

無料クラスター、共有クラスター、サーバーレスインスタンスの制限

カスタムロールへの変更を M0 個の無料クラスタ、M2/M5 個の共有クラスタ、およびサーバーレス インスタンスに配置するには、最大 30 秒かかる場合があります。

権限アクションカスタムロール で使用可能)と カスタムロール API は、組み込みロール で使用可能な権限アクションのサブセットを表します。

カスタムロール権限のリストを確認するには、API リファレンスを参照してください。

重要

Atlas クラスターでデータベース ロールを追加、変更、または削除するには、Atlas CLIAtlas Administration API、Atlas UI、またはサポートされている 統合 を使用する必要があります。そうでない場合、Atlas はすべてのロールの修正をロールバックします。

  • 1 人の データベース ユーザー に最大 20 個のカスタムロールを割り当てることができ、プロジェクトごとに最大 100 個のカスタムロールを作成できます。データベース ユーザーごとまたはプロジェクトごとに追加のカスタムロールが必要な場合は、Atlas サポート にお問い合わせください。

  • Atlas は、プロジェクトの アクティビティ フィード 内のカスタム MongoDB ロールの作成、削除、更新を監査します。

  • ユーザーに複数のロールを割り当て、それらのロールがオブジェクトに対して競合する権限を付与する場合、Atlas はロール内で最も高い権限を尊重します。

    2 つのカスタムロールを作成し、両方をユーザー A に割り当てます。

    • 最初のカスタムロールは、データベースに対する read 特権のみを付与します。また、データベースに bypassDocumentValidation も付与します。

    • 2 番目のロールは、データベースに対する dbAdmin 特権を付与します。バイパス権限の暗黙的な拒否である bypassDocumentValidation は付与されません。

    dbAdmin のほうがデータベース アクセス権限が高いため、ユーザー A はデータベースに対するすべての dbAdmin 特権を持ちます。bypassDocumentValidation はより上位のバイパス権限であるため、ユーザー A にも bypassDocumentValidation が付与されます。

カスタム データベース ロールを構成するには、Atlas に対する Organization Owner または Project Owner アクセス権が必要です。

Atlas CLI を使用してプロジェクトのカスタム データベース ロールを作成するには、以下のコマンドを実行します。

atlas customDbRoles create <roleName> [options]

コマンド構文とパラメータについて詳しくは、Atlas CLI ドキュメントで atlas customDbRoles create をご覧ください。

Tip

参照: 関連リンク

Atlas Administration API でカスタムロールを作成するには、「Create One」を参照してください。

Atlas UI でカスタムロールを作成するには、次の手順を行います。

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

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

  3. サイドバーで、 Security見出しの下のDatabase Accessをクリックします。

    [データベース アクセス ]ページが表示されます。

2
  1. [Custom Roles] タブをクリックします。

  2. Add New Custom Role をクリックします。

3
フィールド
説明
Custom Role Name

カスタムロール名。

重要

指定されたロール名には、文字、数字、アンダースコア、ダッシュのみを含めることができます。また、次のいずれかの条件を満たすロール名は指定できません。

  • プロジェクト内の既存のカスタムロールで既に使用されている名前

  • 組み込みロールの名前です

  • とは atlasAdmin

  • で始まる xgen-

Action or Role

ロールによって付与される権限。利用可能な権限アクションロールを一覧表示するには、ドロップダウンをクリックします。

Atlas はアクションとロールを次のカテゴリに分類します。

  • Collection Actions,

  • Database Actions and Roles,

  • Global Actions and Roles,

  • Custom Roles (if any)

1 つのカテゴリからアクションまたはロールを選択します。アクションまたはロールを選択すると、Atlas により、次の例外を除いたカテゴリが無効になります。Global Actions and Roles からアクションまたはロールを選択した場合でも、Custom Roles からもアクションやロールを選択できます。

別カテゴリのアクションとロールを付与するには、[Add an action or role] をクリックして新しい行を追加します。

Atlas は、プロジェクト内のどのクラスター バージョンでも使用できないアクションを無効にします。カスタムロールはプロジェクト レベルで定義され、プロジェクトのクラスターで使用される各 MongoDB バージョンと互換性がある必要があります。

Database

選択したアクションとロールが付与されるデータベース(該当する場合)。

このフィールドは、Collection Actions および Database Actions and Roles カテゴリのすべてのロールとアクションに必須です。

Collection

指定のデータベース内で、アクションとロールが付与されるコレクション(該当する場合)。

このフィールドは、Collection Actions のすべてのロールとアクションに必須です。

複数のデータベースとコレクションに同じ権限セットを付与するには、[Add a database or collection] をクリックします。

4

Atlas CLI を使用してプロジェクトのすべてのカスタム データベース ロールを一覧表示するには、次のコマンドを実行します。

atlas customDbRoles list [options]

Atlas CLI を使用して指定したプロジェクト内の単一のカスタム データベース ロールの詳細を返すには、次のコマンドを実行します。

atlas customDbRoles describe <roleName> [options]

前のコマンドの構文とパラメータの詳細については、Atlas CLI ドキュメントの atlas customDbRoles list および atlas customDbRoles describe. を参照してください。

Atlas Administration API でカスタムロールを表示するには、「Get All」を参照してください。

Atlas UI でカスタムロールを表示する方法は次の通りです。

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

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

  3. サイドバーで、 Security見出しの下のDatabase Accessをクリックします。

    [データベース アクセス ]ページが表示されます。

2

Atlas CLI を使用してプロジェクトのカスタム データベース ロールをアップデートするには、次のコマンドを実行します。

atlas customDbRoles update <roleName> [options]

コマンドの構文とパラメータについて詳しくは、Atlas CLI ドキュメントで atlas customDbRoles update をご覧ください。

Atlas Administration API でカスタムロールを変更するには、「Update One」を参照してください。

Atlas UI でカスタムロールを変更するには、次の手順を行います。

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

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

  3. サイドバーで、 Security見出しの下のDatabase Accessをクリックします。

    [データベース アクセス ]ページが表示されます。

2
  1. [Custom Roles] タブをクリックします。

  2. 変更するロールの隣にある [ Edit ] をクリックします。変更できるロールのコンポーネントは次の通りです。

    • カスタムロールに継承されるアクションまたはロール。

    • それらの権限が適用されるデータベースとコレクション。

  3. [Update Custom Role] をクリックして、変更を保存します。

Atlas CLI を使用してプロジェクトからカスタム データベース ロールを削除するには、次のコマンドを実行します。

atlas customDbRoles delete <roleName> [options]

コマンド構文とパラメータについて詳しくは、Atlas CLI ドキュメントで atlas customDbRoles create をご覧ください。

Atlas Administration API でカスタムロールを削除するには、「Remove One」を参照してください。

Atlas UI でカスタムロールを削除するには、次の手順を行います。

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

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

  3. サイドバーで、 Security見出しの下のDatabase Accessをクリックします。

    [データベース アクセス ]ページが表示されます。

2
  1. [Custom Roles] タブをクリックします。

  2. 変更するロールの隣にある [ Delete] をクリックします。

  3. 削除を確認するには、ダイアログ ボックスで Delete をクリックします。

次のシナリオではカスタムロールを削除できません。

  • ロールを削除すると、親ロールまたはアクションのない 1 つ以上の子ロールが残ります。

  • ロールを削除すると、ロールを持たない 1 人以上の データベース ユーザー が残ります。

データベース ユーザーを追加するとき、または データベース ユーザーを変更するときに、Atlas UI でカスタムロールを割り当てることができます。Atlas 管理 API を通じてカスタムロールを割り当てるには、「データベース ユーザーの作成」または「データベース ユーザーの更新」を参照してください。

戻る

組み込みのロールと特権