Cloudflare OAuth がタスクベースの同意を導入:ユーザーはオプションスコープをオプトアウト可能に
Cloudflare が OAuth スコープのカスタマイズを導入。ユーザーは認可時に狭いアクセス権を付与できるようになります。開発者はスコープをオプションとしてマークし、同意画面が適応します。エージェントや MCP サーバーにとって最小権限への実用的な一歩です。

Cloudflare は OAuth スコープのカスタマイズを展開しています。これは、ユーザーがサードパーティアプリを認可する前に、同意画面でオプションのスコープを選択解除できるようにする機能です。これまで同意画面は全か無かでした。要求されたスコープセット全体を承認するか、すべて拒否するかのどちらかです。これは、MCP サーバーや AI エージェントのような現代のワークロードには不向きです。それらは、常に必要だからではなく、必要になるかもしれないから広範な権限を要求することが多いからです。
この変更は、OAuth 仕様にすでに存在する柔軟性に基づいています。認可サーバーは、要求されたスコープよりも狭いセットを付与することができます。Cloudflare は単にその機能を開発者とユーザーに公開しているのです。
仕組み
OAuth クライアントを設定する際、開発者は特定のスコープを optional_scopes としてマークできます。認可時に、ユーザーは要求されたスコープを確認し、オプションのものをチェック解除できます。必須スコープはロックされたままです。オプションのスコープが要求されていない場合、同意画面は以前とまったく同じように動作します。既存アプリの後退はありません。
重要なニュアンス:オプションと必須のスコープは、クライアントの完全な設定済みスコープセットではなく、特定の認可フローで要求されたスコープに対して評価されます。クライアントがサブセットのみを要求する場合、そのサブセットのみが表示され、強制されます。これにより、同意画面はアプリが理論上使用できるすべての機能ではなく、目の前のタスクに焦点を合わせ続けることができます。
開発者がすべきこと
Cloudflare で OAuth アプリを構築している場合、部分的な付与を処理する必要があります。認可コードを交換した後、完全なリクエストが承認されたと想定するのではなく、実際に付与されたスコープセットを確認してください。狭い権限セット内で優雅に動作するアプリは、より多くのユーザーの信頼を得て、より多くの認可を得るでしょう。
API を介してオプションスコープを持つクライアントを設定する例を次に示します:
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/oauth_clients" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"client_name": "ACME Corp",
"redirect_uris": ["https://acme.org/oauth/callback"],
"grant_types": ["authorization_code"],
"response_types": ["code"],
"token_endpoint_auth_method": "client_secret_basic",
"scopes": ["user-details.read", "workers-scripts.write", "workers-kv-storage.write", "zone.read"],
"optional_scopes": ["workers-kv-storage.write", "zone.read"]
}'この例では、user-details.read と workers-scripts.write は必須のままで、ユーザーは他の 2 つをオプトアウトできます。
エージェントにとって重要な理由
これは AI エージェントと MCP サーバーの台頭への直接的な対応です。MCP サーバーは、エージェントがすべてを使用する可能性があるため、広範な権限セットを要求するかもしれません。しかし、ほとんどのユーザーはそれだけのアクセスを渡したくありません。以前は、唯一の回避策は、アプリ開発者が Cloudflare の同意フローにリダイレクトする前にカスタムスコープ選択画面を構築することでした。今では組み込まれています。
Cloudflare はまた、ほぼすべての製品をカバーするようにアカウントおよびゾーンレベルのロールサーフェスを拡張していると述べており、より詳細な OAuth スコープと API トークンのロールが間もなく登場することを意味します。
この機能は現在利用可能です。既存のクライアントはデフォルトで現在の動作を維持します。オプトインは設定変更であり、移行ではありません。
同意画面は全か無かでした。完全なリクエストを承認するか、完全に拒否するかのどちらかです。今では、ユーザーは認可時にアプリケーションの要求されたアクセスの狭いサブセットを付与できます。
ディスカッション
0 件のコメント
最初のコメントを投稿しましょう。