Amazon Cognito が、マシンツーマシン (M2M) 認証フローのコンテキストサポートを強化

投稿日: 2025年4月30日

Amazon Cognito では、M2M アクセストークンリクエストの OAuth 2.0 クライアント認証情報フローに追加のコンテキスト情報を含めることができるようになりました。これにより、マシンベースのインタラクションの制御が強化されます。M2M 認証は通常、データ同期、イベント駆動型ワークフロー、マイクロサービス通信などの自動化プロセスに使用されます。この機能により、お客様はマシンベースのインタラクション用のアクセストークンをリクエストするときに、コンテキスト固有の詳細情報 (IP アドレス、場所、環境などのマシン属性、またはアプリケーション名、テナント ID などのビジネスコンテキスト等) を提供できます。例えば、開発環境と本番環境で異なるアクセスパターンを必要とする組織の内部 API サービスについて考えてみます。今後は、ClientMetadata を使用して、アクセストークンをリクエストするときに {"environment": "dev"} または {"environment": "prod"} を指定できます。Cognito はトークン生成前の Lambda トリガーをサポートしているため、このコンテキストを処理してトークンスコープ (api:read_all、api:write_restricted など) をカスタマイズしたり、レート制限などの環境固有のクレームを追加したりできます。その後、API でこれらのスコープやクレームを調べて、適切なアクセス制御とレート制限を実施できます。

ClientMetadata パラメータがないと、お客様はコンテキスト情報を表現するために個別のアプリケーションクライアント (例えば、'internal-api-dev、'internal-api-prod' など) を必要とすることが多く、アプリケーションクライアントが乱立する原因になります。現在では、単一の M2M アプリケーションクライアントにリクエストごとにコンテキストメタデータを含めることができるため、アプリケーションクライアントを複数使用する必要性が減り、コンテキストに応じた認証を提供しながらアプリケーションクライアントのコストを最適化できます。

この機能は、AWS GovCloud (米国) リージョンを含む Cognito が利用可能な AWS リージョンで Essentials ティアまたは Plus ティアを使用する Amazon Cognito のお客様にご利用いただけます。詳細については、このデベロッパーガイドと M2M 認証フローの料金に関する料金詳細ページを参照してください。