什么是 Amazon Verified Permissions? - Amazon Verified Permissions

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

什么是 Amazon Verified Permissions?

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

使用 Verified Permissions 进行授权

Verified Permissions 通过验证在自定义应用程序的给定上下文中是否允许主体对资源执行操作,来提供授权。Verified Permissions 假设该主体事先已通过其他方式进行了身份识别和身份验证,例如使用 OpenID Connect 等协议、托管提供商(如 Amazon Cognito)或其他身份验证解决方案。Verified Permissions 不受限于用户的托管位置和身份验证方式。

Verified Permissions 是一项服务,支持客户在 AWS Management Console中创建、维护和测试策略。权限是使用 Cedar 策略语言来表达的。客户端应用程序会调用授权 API 来评估存储在服务中的 Cedar 策略,并提供是否允许某个操作的访问决策。

Cedar 策略语言

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

已验证的权限目前使用 Cedar 版本 2.4

有关 Cedar 的更多信息,请参阅下文:

Verified Permissions 的优势

加快应用程序开发

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

应用程序更安全

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

最终用户功能

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

  • Amazon Cognito - Amazon Cognito 是 Web 和移动应用程序的身份平台。它是用户目录、身份验证服务器以及 OAuth 2.0 访问令牌和 AWS 凭证的授权服务。创建策略存储库时,您可以选择从 Amazon Cognito 用户池中创建委托人和群组。有关更多信息,请参阅《Amazon Cognito 开发人员指南》。

  • Amazon API Gat eway — Amazon API Gateway 是一项用于创建、发布、维护、监控和保护任何规模的 REST、HTTP 和 WebSocket API 的 AWS 服务。创建策略存储库时,您可以选择通过 API Gateway 中的 API 构建操作和资源。有关 API Gateway 的更多信息,请参阅 API Gateway 开发者指南

  • AWS IAM Identity Center - 借助 IAM Identity Center,您可以管理员工身份(也称为员工用户)的登录安全性。IAM Identity Center 提供了一个地方,您可以在其中创建或连接员工用户,并集中管理他们对所有用户 AWS 账户 和应用程序的访问权限。有关更多信息,请参阅 AWS IAM Identity Center 《用户指南》

访问 Verified Permissions

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

AWS Management Console

该控制台是一个基于浏览器的界面,用于管理 Verified Permissions 和 AWS 资源。有关通过控制台访问 Verified Permissions 的更多信息,请参阅《AWS 登录 用户指南》中的如何登录 AWS

AWS 命令行工具

您可以使用 AWS 命令行工具在系统的命令行中发出命令以执行已验证的权限和 AWS 任务。与控制台相比,使用命令行更快、更方便。如果要构建执行 AWS 任务的脚本,命令行工具也会十分有用。

AWS 提供了两组命令行工具:AWS Command Line Interface(AWS CLI) 和AWS Tools for Windows PowerShell。有关安装和使用的信息 AWS CLI,请参阅《AWS Command Line Interface 用户指南》。有关安装和使用适用于 Windows 的工具的信息 PowerShell,请参阅《AWS Tools for Windows PowerShell 用户指南》

AWS 软件开发工具包

AWS 提供 SDK(软件开发套件),其中包括适用于各种编程语言和平台(Java、Python、Ruby、.NET、iOS、Android 等)的库和示例代码。软件开发工具包为创建对 Verified Permissions 和 AWS的编程访问提供了便捷的方式。例如,软件开发工具包执行以下类似任务:加密签署请求、管理错误以及自动重试请求。

要了解更多信息并下载 AWS SDK,请参阅工具。 Amazon Web Services

以下是各种 AWS SDK 中已验证权限资源的文档链接。

AWS CDK 构造

AWS Cloud Development Kit (AWS CDK) 是一个开源软件开发框架,用于在代码中定义云基础架构并通过它进行配置 AWS CloudFormation。构造或可重复使用的云组件可用于创建 AWS CloudFormation 模板。然后,这些模板可用于部署您的云基础架构。

要了解更多信息并下载 AWS CDK,请参阅 C AWS loud Development Kit

以下是已验证权限 AWS CDK 资源(例如构造)的文档链接。

Verified Permissions API

您可以使用已验证的权限 API AWS 以编程方式访问已验证的权限,该API允许您直接向服务发出 HTTPS 请求。使用该 API 时,必须添加代码,才能使用您的凭证对请求进行数字化签名。

Verified Permissions 定价

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

有关 Verified Permissions 费用和价格的完整列表,请参阅 Amazon Verified Permissions 定价

若要查看您的账单,请转到 AWS Billing and Cost Management 控制台中的账单和成本管理控制面板。您的账单中包含了提供您的账单详情的使用情况报告的链接。要了解有关 AWS 账户 计费的更多信息,请参阅AWS Billing 用户指南

如果您对 AWS 账单、账户和活动有疑问,请联系 AWS Support