

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 什么是 Amazon Verified Permissions？
<a name="what-is-avp"></a>

Amazon Verified Permissions 是一项可扩展、精细的权限管理和授权服务，适用于您构建的自定义应用程序。Verified Permissions 通过将授权外部化和集中策略管理，使开发人员能够更快地构建安全的应用程序。Verified Permissions 使用 Cedar 策略语言来定义精细的权限，以保护应用程序的资源。

有关使用已验证权限设置政策决策点 (PDP) 的指导和示例，请参阅*AWS 规范*性指南中的使用[亚马逊验证权限实施 PDP](https://docs.aws.amazon.com/prescriptive-guidance/latest/saas-multitenant-api-access-authorization/avp.html)。

**Topics**
+ [使用 Verified Permissions 进行授权](#avp-authorization)
+ [Cedar 策略语言](#avp-cedar)
+ [Verified Permissions 的优势](#avp-benefit-overview)
+ [相关服务](#related-services)
+ [访问 Verified Permissions](#acessing-verified-permissions)
+ [Verified Permissions 定价](#verified-permissions-pricing)

## 使用 Verified Permissions 进行授权
<a name="avp-authorization"></a>

Verified Permissions 通过验证是否允许委托人在应用程序的给定上下文中对资源执行操作来提供*授权*。已验证权限假设委托人事先已通过其他方式进行识别和身份验证，例如使用 OpenID Connect 等协议、托管 Amazon Cognito提供商（例如）或其他身份验证解决方案。已验证的权限与委托人的管理位置和身份验证方式无关。

Verified Permissions 是一项服务，它使客户能够在中创建 AWS 管理控制台、维护和测试策略，使用经过验证的权限 APIs以编程方式或通过基础设施即代码解决方案（例如 CloudFormation）。权限是使用 Cedar 策略语言来表达的。客户端应用程序调用授权 APIs 来评估存储在服务中的 Cedar 策略，并提供是否允许操作的访问决策。

## Cedar 策略语言
<a name="avp-cedar"></a>

Verified Permissions 中的授权策略是使用 Cedar 策略语言编写的。Cedar 是一种开源语言，用于编写授权策略并根据这些策略做出授权决策。创建应用程序时，需要确保只有经过授权的委托人（人类用户或计算机）才能访问该应用程序，并且只能执行他们有权执行的操作。使用 Cedar，您可以将业务逻辑与授权逻辑解耦。在应用程序的代码中，您在向操作发出的请求之前，先调用 Cedar 授权引擎，询问“此请求是否获得了授权？”。如果决策为“允许”，则该应用程序可以执行请求的操作；如果决策为“拒绝”，则会返回错误消息。

已验证的权限目前使用 **Cedar 版本 4.7**。

有关 Cedar 的更多信息，请参阅下文：
+ [Cedar 策略语言参考指南](https://docs.cedarpolicy.com/)
+ [雪松 GitHub存储库](https://github.com/cedar-policy/)

## Verified Permissions 的优势
<a name="avp-benefit-overview"></a>

### 加快应用程序开发
<a name="avp-benefit-application-development"></a>

通过将授权与业务逻辑解耦，加快应用程序开发。

Verified Permissions 提供与流行开发框架的集成，因此只需最少的代码更改即可更轻松地在应用程序中实现授权。这些集成使您可以专注于核心业务逻辑，而经过验证的权限则负责处理授权决策。
+ **Express.js** — 基于中间件的集成，使您无需修改现有路由处理程序即可保护 Express 应用程序中的 API 端点。有关更多信息，请参阅 [将 Express 与亚马逊验证权限集成](integration-express.md)。

### 应用程序更安全
<a name="avp-benefit-secure-applications"></a>

Verified Permissions 使开发人员能够构建更安全的应用程序。

### 最终用户功能
<a name="avp-benefit-features"></a>

Verified Permissions 支持您为权限管理提供更丰富的最终用户功能。

## 相关服务
<a name="related-services"></a>
+ **Amazon Cognito** - Amazon Cognito 是 Web 和移动应用程序的身份平台。它是一个用户目录、一个身份验证服务器以及一个用于 OAuth 2.0 访问令牌和 AWS 凭据的授权服务。创建策略存储时，您可以选择从 Amazon Cognito 用户池中构建委托人和群组。有关更多信息，请参阅《[Amazon Cognito 开发人员指南](https://docs.aws.amazon.com/cognito/latest/developerguide/)》。
+ **Amazon API Gat** eway — Amazon API Gateway 是一项用于创建、发布、维护、监控和保护任何规模的 REST、 WebSocket APIs HTTP 的 AWS 服务。创建策略存储库时，您可以选择通过中的 API 构建操作和资源 API Gateway。有关的更多信息 API Gateway，请参阅《[API Gateway 开发人员指南》](https://docs.aws.amazon.com/apigateway/latest/developerguide/)。
+ **AWS IAM Identity Center** - 借助 IAM Identity Center，您可以管理员工身份（也称为员工用户）的登录安全性。IAM Identity Center 提供了一个地方，您可以在其中创建或连接员工用户，并集中管理他们对所有用户 AWS 账户 和应用程序的访问权限。有关更多信息，请参阅 [AWS IAM Identity Center 《用户指南》](https://docs.aws.amazon.com/singlesignon/latest/userguide/)。

## 访问 Verified Permissions
<a name="acessing-verified-permissions"></a>

您可以通过以下任何方式使用 Amazon Verified Permissions。

**AWS 管理控制台**  
该控制台是一个基于浏览器的界面，用于管理 Verified Permissions 和 AWS 资源。有关通过控制台访问 Verified Permissions 的更多信息，请参阅《AWS 登录 用户指南》**中的[如何登录 AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)。  
+ [Amazon 已验证权限控制台](https://console.aws.amazon.com/verifiedpermissions/home)

**AWS 命令行工具**  
您可以使用 AWS 命令行工具在系统的命令行中发出命令以执行已验证的权限和 AWS 任务。与控制台相比，使用命令行更快、更方便。如果要构建执行 AWS 任务的脚本，命令行工具也会十分有用。  
AWS 提供了两组命令行工具：[AWS Command Line Interface](https://aws.amazon.com/cli/)(AWS CLI) 和[AWS Tools for Windows PowerShell](https://aws.amazon.com/powershell/)。有关安装和使用的信息 AWS CLI，请参阅《[AWS Command Line Interface 用户指南》](https://docs.aws.amazon.com/cli/latest/userguide/)。有关安装和使用适用于 Windows 的工具的信息 PowerShell，请参阅《[AWS Tools for PowerShell 用户指南》](https://docs.aws.amazon.com/powershell/latest/userguide/)。  
+ [已验证命令参考中的 AWS CLI 权限](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/verifiedpermissions/index.html)
+ 在 [Amazon 中验证了权限](https://docs.aws.amazon.com/powershell/latest/reference/?page=VerifiedPermissions_cmdlets.html&tocid=VerifiedPermissions_cmdlets) AWS Tools for Windows PowerShell

**AWS SDKs**  
AWS 提供 SDKs （软件开发套件），其中包括适用于各种编程语言和平台（Java、Python、Ruby、.NET、iOS、Android 等）的库和示例代码。 SDKs 提供了一种便捷的方法来创建对已验证权限的编程访问权限和 AWS. 例如，负责处理诸如对请求 SDKs 进行加密签名、管理错误和自动重试请求之类的任务。  
要了解更多信息并进行下载 AWS SDKs，[请参阅工具 Amazon Web Services](https://aws.amazon.com/tools/)。  
以下是各种已验证权限资源的文档链接 AWS SDKs。  
+ [适用于 .NET 的 AWS SDK](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/VerifiedPermissions/NVerifiedPermissions.html)
+ [适用于 C\$1\$1 的 AWS SDK](https://sdk.amazonaws.com/cpp/api/LATEST/aws-cpp-sdk-verifiedpermissions/html/class_aws_1_1_verified_permissions_1_1_verified_permissions_client.html)
+ [适用于 Go 的 AWS SDK](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/service/verifiedpermissions)
+ [适用于 Java 的 AWS SDK](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/verifiedpermissions/package-summary.html)
+ [适用于 JavaScript 的 AWS SDK](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/verifiedpermissions/)
+ [适用于 PHP 的 AWS SDK](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-verifiedpermissions-2021-12-01.html)
+ [AWS SDK for Python (Boto)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/verifiedpermissions.html)
+ [适用于 Ruby 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/VerifiedPermissions/Client.html)
+ [适用于 Rust 的 AWS SDK](https://docs.rs/aws-sdk-verifiedpermissions/latest/aws_sdk_verifiedpermissions/)

**AWS CDK 构造**  
 AWS Cloud Development Kit (AWS CDK) 是一个开源软件开发框架，用于在代码中定义云基础架构并通过它进行配置 CloudFormation。构造或可重复使用的云组件可用于创建 CloudFormation 模板。然后，这些模板可用于部署您的云基础架构。  
要了解更多信息并下载 AWS CDK，请参阅 C [AWS loud Development Kit](https://aws.amazon.com/cdk/)。  
以下是已验证权限 AWS CDK 资源（例如构造）的文档链接。  
+ [Amazon 已验证权限 L2 CDK 构造](https://github.com/cdklabs/cdk-verified-permissions)

**Verified Permissions API**  
您可以使用已验证的权限 API AWS 以编程方式访问已验证的权限，该API允许您直接向服务发出 HTTPS 请求。使用该 API 时，必须添加代码，才能使用您的凭证对请求进行数字化签名。  
+ [Amazon 已验证权限 API 参考指南](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/)

## Verified Permissions 定价
<a name="verified-permissions-pricing"></a>

Verified Permissions 根据您的应用程序每月向 Verified Permissions 发出的授权请求数量提供分层定价。策略管理操作的定价也取决于您的应用程序每月向 Verified Permissions 发出的 cURL（客户端 URL）策略 API 请求的数量。

有关 Verified Permissions 费用和价格的完整列表，请参阅 [Amazon Verified Permissions 定价](https://aws.amazon.com/verified-permissions/pricing/)。

若要查看您的账单，请转到 [AWS 账单与成本管理 控制台](https://console.aws.amazon.com/billing/)中的**账单和成本管理控制面板**。您的账单中包含了提供您的账单详情的使用情况报告的链接。要了解有关 AWS 账户 计费的更多信息，请参阅[AWS Billing 用户指南](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/)。

如果您对 AWS 账单、账号和活动有疑问，[请联系 支持](https://aws.amazon.com/contact-us/)。