Atlas App Connections は、 MongoDB Atlas OAuth 2.1 プラットフォームであり、ユーザー指定のアクセスを通じてアプリが Atlas ユーザーに代わって動作します。ユーザーがアプリを認証 すると、アプリはトークンを受け取ります。このトークンは、ユーザーが Atlas 組織で保持する権限と同じ権限で Atlas Administration API を呼び出すために使用できます。
アプリには以下を含めることができます。
MongoDB MCP サーバーを介して Atlas に接続するAIクライアント
パートナー アプリケーション
MongoDBアプリケーション
このページでは、 Atlas App Connections を通じてユーザーによるアクセスを可能にする概念について説明します。 AIクライアントを使用してMongoDBデータを操作する方法の詳細については、このページ全体にリンクしているMongoDB MCP サーバーのドキュメントを参照してください。
委任アクセスの仕組み
ユーザーがアプリを認可する と、アプリは別個のエンティティとしてではなく、そのユーザーの代わりに機能します。このアプリは、ユーザーが Atlas 組織とプロジェクトで保持するのと同じ権限を持つ Atlas Administration API を呼び出すためのトークンを受け取ります。ユーザーがアクションを実行できない場合、アプリはユーザーに代わってそれを実行できません。アプリは、ユーザーのパスワードや有効期間の認証情報を受け取りません。
具体的には、 AIクライアントの場合、有効なアクセスは、認可ユーザーの既存の Atlas 権限、および組織所有者が組織に対して設定する読み取り専用または読み取り書込みアクセスモードの 2 つの要素のうち、より制限的なものです。アクセスモード、 AIクライアントが実行できる操作数を減らすことができますが、ユーザー自身の権限で許可される以上のアクセスが許可されることはありません。
アクセスはユーザー自身の権限から継承されるため、次のことが起きます。
アプリの有効な権限は、ユーザーのロールが変更されると自動的に変更されます。
組織に対する操作は、その組織がAIクライアント接続を許可しており、認可ユーザーが操作に必要なロールを持っている場合にのみ成功します。
ユーザーはクライアントを認可する ときは常にすべてのアクセスを委任します。これは、 特定のタスクにクライアントが必要とするものよりも多くなる可能性があります。自身の組織への削除を制限するには、組織の所有者は次のアクションを実行できます。
Atlas は、既存の組織と既存の Atlas ユーザーが作成した新しい組織の場合、デフォルトでAIクライアントアクセスを無効にします。
組織所有者は、必要な組織のみにAIクライアントアクセスを有効にできます。
組織の所有者は、 AIクライアントの読み取り専用または読み取り/書込みアクセスモードを指定できます。
詳細については、 「 MongoDB Atlasの MCP アクセス モデル 」を参照してください。
認可と同意
アプリは、コード交換のプロトコル キー(PKCE)を使用して、OAuth 2.1 認証コード フローを介して遅延アクセスを取得します。 PKCE フローは次のとおりです。
ユーザーは、Atlas ではなくアプリから接続を開始します。
接続を開始するための正確な手順は、アプリによって異なります。 AIクライアントの場合、 MongoDB MCP Server のドキュメントで クライアント固有の設定ガイダンスを参照してください。
アプリは、新しい ブラウザウィンドウ、ポップアップ、または既存のウィンドウ内のリダイレクトなど、ユーザーを認可ページに誘導する方法を制御します。
Atlas は、ユーザーがまだサインインしていない場合、サインインするように要求します。
Atlas アカウントをまだ持っていず、このステップ中に作成したユーザーは、アプリから接続を再起動する 必要があります 。 Atlas は、新しく登録されたユーザーを自動的にアプリにリダイレクトしません。
Atlas に、リクエストされる権限を一覧表示する同意画面が表示されます。
ユーザーは、アクセス権を付与するには「許可」を選択し、キャンセルするには「拒否」を選択します。
Atlas はユーザーをアプリにリダイレクトします。
接続がアクティブになりました。
組織レベルのガバナンス
Atlas は、既存の組織および既存の Atlas ユーザーが作成した新しい組織のAIクライアント接続をデフォルトで無効にします。組織の所有者は、 AIクライアントがその組織に対して委任されたアクセスを使用する前に、 AIクライアントアクセスを明示的に有効にする必要があります。 Atlas では、ユーザーが既存の Atlas アカウントを持っていない場合、サインアップ中に新しいユーザーが作成した組織に対して、デフォルトでAIクライアントアクセスが有効になります。
組織の所有者は、次のことが可能です。
組織のAIクライアントアクセスを有効または無効にします。
読み取り専用アクセスモードまたは読み取り/書込みアクセスモードのいずれかを選択します 。
承認された接続の最大トークン有効期間を設定します。
構成するアクセスモードと認可ユーザー独自の Atlas 権限によって、 AIクライアントが実行できる操作が決まります。 AIクライアントの有効なアクセスは、常に 2 つのうち最も制限的なものです。
セットアップと構成の手順については、「 組織へのAIクライアント アクセスの管理 」を参照してください。
アクセスの取り消しとタイミング
ユーザーがアプリへのアクセスの委任を承認すると、アプリはアクセス トークンとリフレッシュ トークンを受け取ります。このアプリは、Atlas Administration API を呼び出すごとにアクセス トークンを提示します。アクセス トークンの有効期限が切れると、アプリはリフレッシュ トークンを使用して新しいアクセス トークンを取得し、ユーザーが再度サインインする必要はありません。
AIクライアントがアクセス取り消しを有効にするまでにかかる時間は、アクセスを取り消すユーザーによって異なります。
組織所有者は、組織のAIクライアントアクセスを無効にします。コントロールプレーンのアクセスは、組織に接続されているすべてのAIクライアントに対して直ちに取り消されます。
10ユーザーが個々のAIクライアントのアクセスを取り消します。変更が有効になるまでに最大 分かかる場合があります。
警告
フェデレーティッドユーザーの迅速なプロビジョニング
組織がロール マッピング を使用して IdP グループを通じて Atlas ユーザー アクセスを管理している場合、Atlas でのフェデレーテッド ユーザーの権限は、そのユーザーがログインしたときにのみ更新されます。これは、JIT(Just-In-Time、実行時)プロビジョニングと呼ばれます。組織がAtlas Administration APIを通じてユーザーのプロビジョニングを解除しない場合、ユーザーがアクセスを失った場合、そのユーザーの更新トークンを保持するAIクライアントは、引き続きそのユーザーに代わってアクションを続けることができます。
このリスクを制限するには、以下の対策を取ります。
Atlas Administration APIを通じてユーザーがアクセスできなくなったらすぐに、ユーザーのプロビジョニングを解除します。
組織の最大リフレッシュ トークンの有効期間を設定して、ユーザーがプロビジョニングを解除した後にクライアントがアクセスを保持できる期間を短縮します。
詳細については、 「 AIクライアントのアクセス有効期間 」を参照してください。
制限
統合を計画する際には、Atlas App Connection の次の範囲と境界を考慮してください。
組織の所有者は、 ユーザーからクライアントに付与された個々のアクセスを取り消すことはできません。組織内のいずれかのユーザーによるアクセスを削除するには、組織全体のAIクライアントアクセスを無効にします。組織のAIクライアントアクセスを有効にすると、委任されたアクセスをサポートする現在および将来のすべてのAIクライアントが有効になります。
Atlas Administration API IPアクセス リストは、委任されたアクセス トラフィックには適用されません。 AIクライアントの委任アクセス呼び出しは、 AIクライアントが接続するIPアドレスに基づいてブロックすることはできません。
取り消しでは、クライアントが認可されたアクセス中に作成したセキュリティ アーティファクトは削除されません。これらのアーティファクトは、クライアントの失効したトークンとは無関係に有効のままになります。
サービス アカウントとAPIキーは、コントロールプレーンのアーティファクトです。これらを監査、削除またはローテーションして、クライアントのコントロールプレーンへのアクセスを終了します。詳細については、「 サービス アカウントのシークレットのローテーション 」を参照してください。
データベースユーザーは データプレーン アーティファクトです。プロジェクト内の他のデータベースID と一緒に確認します。詳細については、 「データベースユーザーの設定」 を参照してください。