在 Amazon SAM 模板中设置和管理资源访问权限 - Amazon Serverless Application Model
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

在 Amazon SAM 模板中设置和管理资源访问权限

为了使您的 Amazon 资源相互交互,必须在您的资源之间配置适当的访问权限和权限。为此,需要配置 Amazon Identity and Access Management (IAM) 用户、角色和策略,以安全的方式完成互动。

本节中的主题都与设置对模板中定义的资源的访问权限有关。本节首先介绍一般的最佳实践。接下来的两个主题回顾了在无服务器应用程序中引用的资源之间设置访问权限和权限的两个选项: Amazon SAM 连接器和 Amazon SAM 策略模板。最后一个主题详细介绍了如何使用与管理用户相同的机制 Amazon CloudFormation 来管理用户访问权限。

要了解更多信息,请参阅《Amazon CloudFormation 用户指南》中的使用 Amazon Identity and Access Management控制访问

Amazon Serverless Application Model (Amazon SAM) 提供了两个选项,可简化对无服务器应用程序的访问和权限的管理。

  1. Amazon SAM 连接器

  2. Amazon SAM 策略模板

Amazon SAM 连接器

连接器是在两个资源之间配置权限的一种方式。为此,您可以通过在 Amazon SAM 模板中描述它们应如何相互交互来实现。可以使用 Connectors 资源属性或 AWS::Serverless::Connector 资源类型进行定义。连接器支持在资源组合之间配置ReadWrite访问数据和事件。 Amazon 要了解有关 Amazon SAM 连接器的更多信息,请参阅使用 Amazon SAM 连接器管理资源权限

Amazon SAM 策略模板

Amazon SAM 策略模板是预定义的权限集,您可以将其添加到 Amazon SAM 模板中,以管理您的 Amazon Lambda 函数、 Amazon Step Functions 状态机及其与之交互的资源之间的访问权限和权限。要了解有关 Amazon SAM 策略模板的更多信息,请参阅Amazon SAM策略模板

Amazon CloudFormation 机制

Amazon CloudFormation 机制包括配置 IAM 用户、角色和策略,以管理您的 Amazon 资源之间的权限。要了解更多信息,请参阅使用 Amazon CloudFormation 机制管理权限

最佳实践

在整个无服务器应用程序中,您可以使用多种方法来配置资源之间的权限。因此,您可以为每个场景选择最佳选项,并在整个应用程序中结合使用多个选项。选择最适合您的选项时,需要考虑以下几点:

  • Amazon SAM 连接器和策略模板都减少了促进 Amazon 资源之间安全交互所需的 IAM 专业知识。如果受支持,请使用连接器和策略模板。

  • Amazon SAM 连接器提供了一种简单直观的简短语法,用于在 Amazon SAM 模板中定义权限,并且只需要最少的 IAM 专业知识。当同时支持 Amazon SAM 连接器和策略模板时,请使用 Amazon SAM 连接器。

  • Amazon SAM 连接器可以在支持的 Amazon SAM 源资源和目标资源之间配置ReadWrite访问数据和事件。有关受支持的资源的列表,请参阅 Amazon SAM 连接器参考。如果支持,请使用 Amazon SAM 连接器。

  • 虽然 Amazon SAM 策略模板仅限于您的 Lambda 函数、Step Functions 状态机及其与之交互的 Amazon 资源之间的权限,但策略模板确实支持所有 CRUD 操作。如果支持并且有适用于您的场景的 Amazon SAM 策略模板,请使用 Amazon SAM 策略模板。有关可用策略模板的列表,请参阅 Amazon SAM策略模板

  • 对于所有其他场景,或者需要精细度时,请使用 Amazon CloudFormation 机制。