Amazon Verified Permissions と Cedar ポリシー言語の用語と概念 - Amazon Verified Permissions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Verified Permissions と Cedar ポリシー言語の用語と概念

Amazon Verified Permissions を使用するには、以下の概念を理解する必要があります。

Cedar ポリシー言語の概念

認可コード

認可モデルでは、アプリケーションによって行われた認可リクエストの範囲と、それらのリクエストを評価するための基盤について説明します。さまざまな種類のリソース、それらのリソースで実行されるアクション、およびそれらのアクションを実行するプリンシパルのタイプに基づいて定義されます。また、それらのアクションが実行される背景も考慮されます。

ロールベースのアクセスコントロール (RBAC) は、ロールが定義され、一連のアクセス許可に関連付けられる評価基準です。その後、これらのロールを 1 個またはそれ以上の ID に割り当てることができます。割り当てられた ID には、そのロールに関連する権限が付与されます。ロールに関連付けられている権限が変更されると、その変更はそのロールが割り当てられているすべての ID に自動的に影響します。Cedar は、プリンシパルグループを使用してRBAC決定をサポートできます。

属性ベースのアクセスコントロール (ABAC) は、アイデンティティに関連付けられたアクセス許可がそのアイデンティティの属性によって決定される評価基準です。Cedar は、プリンシパルの属性を参照するポリシー条件を使用してABAC決定をサポートできます。

Cedar ポリシー言語は、属性ベースの条件を持つユーザーのグループに対してアクセス許可を定義できるようにすることで、単一のポリシーABACで RBACと の組み合わせを可能にします。

認可リクエスト

認可リクエストは、プリンシパルが特定のコンテキストのリソースに対してアクションを実行できるかどうかを決定するために、一連のポリシーを評価するアプリケーションによって Verified Permissions で行われたリクエストです。

認可レスポンス

認可レスポンスは、認可リクエストに対するレスポンスです。これには、許可または拒否の決定に加えて、決定ポリシーIDsの などの追加情報が含まれます。

考慮済みポリシー

考慮されるポリシーは、Verified Permissions によって選択されたポリシーの完全なセットであり、認可リクエストを評価する際に含めることができます。

コンテキストデータ

コンテキストデータは、評価すべき追加情報を提供する属性値です。

決定ポリシー

ポリシーの決定は、認可レスポンスを決定するポリシーです。たとえば、充足ポリシーが2つあり、1 つが拒否、もう 1 つが許容である場合、拒否ポリシーが決定ポリシーになります。充足した許可ポリシーが複数あり、充足した禁止ポリシーが存在しない場合、決定ポリシーが複数存在することになります。当てはまるポリシーがなく、レスポンスが拒否された場合、決定ポリシーは存在しません。

エンティティデータ

エンティティデータは、プリンシパル、アクション、リソースに関するデータです。ポリシー評価に関連するエンティティデータは、エンティティ階層の上位にあるグループメンバーシップと、プリンシパルおよびリソースの属性値です。

権限、認可、プリンシパル

Verified Permissions は、構築するカスタムアプリケーション内のきめ細かなアクセス許可認可を管理します。

プリンシパルとは、ユーザー名やマシン ID などの識別子に結び付けられた ID を持つ、アプリケーションのユーザー(人間か機械かを問わない)です。認証プロセスによって、プリンシパルが本当に本人が主張する ID であるかどうかが決まります。

その ID には、そのプリンシパルがそのアプリケーション内で許可される操作を決定する一連のアプリケーション権限が関連付けられています。認可は、これらのアクセス許可を評価して、プリンシパルがアプリケーションで特定のアクションを実行できるかどうかを決定するプロセスです。これらの権限はポリシーとして表現できます。

ポリシーの実施

ポリシー実施とは、Verified Permissions 以外のアプリケーション内で評価決定を強制するプロセスです。Verified Permissions の評価で拒否が返された場合、強制はプリンシパルがリソースにアクセスできないようにします。

ポリシーストア

ポリシーストアはポリシーとテンプレートのコンテナです。各ストアには、ストアに追加されたポリシーを検証するためのスキーマが含まれています。デフォルトでは、各アプリケーションには独自のポリシーストアがありますが、複数のアプリケーションが 1 つのポリシーストアを共有できます。アプリケーションが認可リクエストを行うと、そのリクエストを評価するために使用されるポリシーストアが特定されます。ポリシーストアはポリシーセットを分離する方法を提供するため、マルチテナントアプリケーションで使用して各テナントのスキーマとポリシーを格納できます。1 つのアプリケーションで、テナントごとに別々のポリシーストアを設定できます。

認可リクエストを評価する際、Verified Permissions は、リクエストに関連するポリシーストア内のポリシーのサブセットのみを考慮します。関連性はポリシーのスコープに基づいて決定されます。スコープは、ポリシーが適用される特定のプリンシパルとリソース、およびプリンシパルがリソースに対して実行できるアクションを識別します。スコープを定義すると、考慮するポリシーのセットが絞り込まれるため、パフォーマンスの向上に役立ちます。

充足ポリシー

満たすポリシーは、認可リクエストのパラメータに一致するポリシーです。