

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon Verified Permissions 和 Cedar 政策語言術語和概念
<a name="terminology"></a>

您應該了解下列使用 Amazon Verified Permissions 的概念。

**Topics**
+ [授權模型](#term-authorization-model)
+ [授權請求](#term-authorization-request)
+ [授權回應](#term-authorization-response)
+ [考慮的政策](#term-considered-policies)
+ [內容資料](#term-context-data)
+ [決定政策](#term-determining-policies)
+ [實體資料](#term-entity-data)
+ [許可、授權和委託人](#term-permissions-authorization-principals)
+ [政策強制執行](#term-policy-enforcement)
+ [政策存放區](#term-policy-store)
+ [政策存放區別名](#term-policy-store-alias)
+ [政策名稱](#term-policy-name)
+ [政策範本名稱](#term-policy-template-name)
+ [滿足的政策](#term-satisfied-policies)
+ [Amazon Verified Permissions 與 Cedar 政策語言之間的差異](terminology-differences-avp-cedar.md)

**Cedar 政策語言概念**
+ [授權](https://docs.cedarpolicy.com/overview/terminology.html#authorization)
+ [實體](https://docs.cedarpolicy.com/overview/terminology.html#entity)
+ [群組和階層](https://docs.cedarpolicy.com/overview/terminology.html#term-group)
+ [命名空間](https://docs.cedarpolicy.com/policies/validation.html#namespaces)
+ [政策](https://docs.cedarpolicy.com/overview/terminology.html#policy)
+ [政策範本](https://docs.cedarpolicy.com/overview/terminology.html#policy-template)
+ [結構描述](https://docs.cedarpolicy.com/overview/terminology.html#schema)

## 授權模型
<a name="term-authorization-model"></a>

*授權模型*說明應用程式提出[的授權請求](#term-authorization-request)範圍，以及評估這些請求的基礎。它根據不同類型的資源、對這些資源採取的動作，以及採取這些動作的委託人類型來定義。它也會考慮採取這些動作的內容。

*角色型存取控制 (RBAC)* 是評估基礎，其中定義角色並與一組許可相關聯。然後，這些角色可以指派給一或多個身分。指派的身分會取得與角色相關聯的許可。如果修改與角色相關聯的許可，則修改會自動影響角色指派的任何身分。Cedar 可以透過使用委託人群組來支援 RBAC 決策。

*屬性型存取控制 (ABAC)* 是一種評估基礎，其中與身分相關聯的許可由該身分的屬性決定。Cedar 可以透過使用參考委託人的屬性的政策條件來支援 ABAC 決策。

Cedar 政策語言允許為具有屬性型條件的使用者群組定義許可，從而在單一政策中啟用 RBAC 和 ABAC 的組合。

## 授權請求
<a name="term-authorization-request"></a>

*授權請求*是由應用程式提出的 Verified Permissions 請求，以評估一組政策，以判斷委託人是否可以對特定內容的資源執行動作。

## 授權回應
<a name="term-authorization-response"></a>

*授權回應*是對[授權請求](#term-authorization-request)的回應。它包含允許或拒絕決策，以及其他資訊，例如決定政策IDs。

## 考慮的政策
<a name="term-considered-policies"></a>

*考慮的政策*是在評估[授權請求](#term-authorization-request)時，由 Verified Permissions 選取的整組政策。

## 內容資料
<a name="term-context-data"></a>

*內容資料*是屬性值，可提供要評估的其他資訊。

## 決定政策
<a name="term-determining-policies"></a>

*決定政策*是決定[授權回應](#term-authorization-response)的政策。例如，如果有兩個[滿意的政策](#term-satisfied-policies)，其中一個是拒絕，另一個是允許，則拒絕政策將是決定政策。如果有多個符合的許可政策，而沒有符合的禁止政策，則有多個決定政策。如果沒有政策相符且回應遭拒，則沒有決定性政策。

## 實體資料
<a name="term-entity-data"></a>

*實體資料*是有關委託人、動作和資源的資料。與政策評估相關的實體資料是群組成員資格，一直增加主體和資源的實體階層和屬性值。

## 許可、授權和委託人
<a name="term-permissions-authorization-principals"></a>

Verified Permissions 會在您建置的自訂應用程式中管理精細的*許可*和*授權*。

*委託*人是人類或機器應用程式的使用者，其身分繫結至識別符，例如使用者名稱或機器 ID。身分驗證程序會判斷委託人是否為其宣告的真實身分。

與該身分相關聯的是一組應用程式*許可*，用於決定該主體在該應用程式中被允許執行的動作。*授權*是評估這些許可的程序，以判斷是否允許委託人在應用程式中執行特定動作。這些許可可以表示為[政策](https://docs.cedarpolicy.com/overview/terminology.html#policy)。

## 政策強制執行
<a name="term-policy-enforcement"></a>

*政策強制執行*是在 Verified Permissions 外部的應用程式內強制執行評估決策的程序。如果 Verified Permissions 評估傳回拒絕，則強制執行會確保委託人無法存取資源。

## 政策存放區
<a name="term-policy-store"></a>

*政策存放區*是政策和範本的容器。每個存放區都包含一個結構描述，用於驗證新增至存放區的政策。根據預設，每個應用程式都有自己的政策存放區，但多個應用程式可以共用單一政策存放區。當應用程式提出授權請求時，它會識別用於評估該請求的政策存放區。政策存放區提供隔離一組政策的方法，因此可用於多租用戶應用程式中，以包含每個租用戶的結構描述和政策。每個租用戶的單一應用程式可以有不同的政策存放區。

評估[授權請求](#term-authorization-request)時，Verified Permissions 只會考慮與請求相關的政策存放區中的政策子集。相關性取決於政策*的範圍*。範圍會識別政策適用的特定委託人和資源，以及委託人可在資源上執行的動作。定義範圍有助於透過縮小考慮的政策集來改善效能。

## 政策存放區別名
<a name="term-policy-store-alias"></a>

*政策存放區別名*是政策存放區的易記名稱。您可以使用政策存放區別名來識別接受`policyStoreId`參數之任何 Verified Permissions 操作中的政策存放區。政策存放區別名是具有自己的 ARNs的獨立 AWS 資源。每個別名一次與一個政策存放區相關聯，多個別名可以與相同的政策存放區相關聯。如需詳細資訊，請參閱[Amazon Verified Permissions 政策存放區別名](policy-store-aliases.md)。

## 政策名稱
<a name="term-policy-name"></a>

*政策名稱*是政策的選用易記名稱。對於政策存放區中的所有政策，政策名稱必須是唯一的，字首必須是 `name/`。您可以在接受`policyId`參數的控制平面操作中使用政策名稱來取代政策 ID。您可以在建立或更新政策時設定名稱。只有 `GetPolicy`和 會在輸出中`ListPolicies`傳回名稱。

## 政策範本名稱
<a name="term-policy-template-name"></a>

*政策範本名稱*是政策範本的選用易記名稱。對於政策存放區中的所有政策範本，政策範本名稱必須是唯一的，字首必須是 `name/`。您可以在接受`policyTemplateId`參數的控制平面操作中使用政策範本名稱來取代政策範本 ID。您可以在建立或更新政策範本時設定名稱。只有 `GetPolicyTemplate`和 會在輸出中`ListPolicyTemplates`傳回名稱。

## 滿足的政策
<a name="term-satisfied-policies"></a>

*滿意的政策*是符合[授權請求](#term-authorization-request)參數的政策。