本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建您的第一个亚马逊认证权限政策商店
在本教程中,假设你是照片共享应用程序的开发者,你正在寻找一种控制应用程序用户可以执行哪些操作的方法。你想控制谁可以添加、删除或查看照片和相册。您还想控制用户可以对其帐户执行哪些操作。他们能管理自己的账户吗,朋友的账户怎么样? 要控制这些操作,您需要根据用户的身份创建允许或禁止这些操作的策略。经过验证的权限提供策略存储或容器来存储这些策略。
在本教程中,我们将演示如何使用亚马逊验证权限控制台创建示例策略存储。该控制台提供了一些策略存储选项示例,我们将创建一个PhotoFlash策略存储。此策略存储库允许用户(例如用户)对照片或相册等资源执行操作 ,例如共享。
下图说明了委托人与其对各种资源(即 PhotoFlash 账户、User::aliceVactionPhoto94.jpg文件、相册alice-favorites-album和用户组)可以采取的操作之间的关系alice-friend-group。
现在您已经了解了PhotoFlash策略存储,让我们创建策略存储并进行探索。
先决条件
注册参加 AWS 账户
要开始使用 AWS,你需要一个 AWS 账户. 有关创建的信息 AWS 账户,请参阅《AWS 账户管理 参考指南》 AWS 账户中的 “入门” 。
步骤 1:创建 PhotoFlash 策略存储
在以下过程中,您将使用 AWS 控制台创建PhotoFlash策略存储。
创建 PhotoFlash 策略存储
-
在 “已验证的权限” 控制台中
,选择 “创建新策略存储” 。 -
对于 “启动” 选项,选择 “从示例策略存储区启动” 。
-
对于示例项目,选择PhotoFlash。
-
选择创建策略存储。
看到 “创建并配置策略存储” 消息后,选择 “转到概览” 以浏览您的策略存储。
第 2 步:创建策略
创建策略存储库时,创建了一个默认策略,允许用户完全控制自己的账户。这是一项有用的政策,但出于我们的目的,让我们创建一个更严格的政策来探讨已验证权限的细微差别。如果你还记得我们在本教程前面看到的图表User::alice,我们有一位负责人UpdateAlbum,他可以对资源执行操作alice-favorites-album。让我们添加允许 Alice(只有 Alice)管理这张相册的政策。
创建策略
-
在已验证权限控制台中
,选择您在步骤 1 中创建的策略存储。 -
在导航中,选择策略。
-
选择创建策略,然后选择创建静态策略。
-
对于 “策略效果”,选择 “允许” 。
-
对于 “委托人” 范围,选择 “特定主体”,然后在 “指定实体类型” 中选择PhotoFlash:: User,在 “指定实体标识符” 中输入。
alice -
对于 “资源范围”,选择 “特定资源”,然后在 “指定实体类型” 中选择PhotoFlash:: Album,在 “指定实体标识符” 中输入
alice-favorites-album。 -
在 “操作范围” 中,选择 “特定操作集”,然后在 “此策略应适用于的操作” 中选择UpdateAlbum。
-
选择下一步。
-
在 “详细信息” 下,对于政策描述-可选,输入
Policy allowing alice to update alice-favorites-album.。 -
选择创建策略
现在您已经创建了策略,可以在已验证的权限控制台中对其进行测试。
第 3 步:测试策略存储
创建策略存储和策略后,您可以通过使用已验证权限测试平台运行模拟授权请求来对其进行测试。
测试策略存储策略
打开已验证权限控制台
。选择您的保单存储。 -
在左侧导航窗格中,选择测试平台。
-
选择可视模式。
-
对于校长,请执行以下操作:
-
对于负责人采取行动,选择PhotoFlash:: User,在 “指定实体标识符” 中输入
alice。 -
在 “属性” 下的 “帐户:实体” 中,确保选择PhotoFlash:: Account 实体,然后在 “指定实体标识符” 中输入
alice-account。
-
-
在 “资源” 下,对于委托人正在使用的资源,选择PhotoFlash:: Album 资源类型,然后在 “指定实体标识符” 中输入
alice-favorites-album。 -
对于操作,请从有效操作列表中选择PhotoFlash:: Action::UpdateAlbum” “。
-
在页面顶部,选择 “运行授权请求” 以模拟示例策略存储区中 Cedar 策略的授权请求。测试平台应显示 “决定:允许”,表明我们的政策正在按预期运行。
下表提供了您可以使用 Verified Permissions 测试平台测试的主体、资源和操作的其他值。该表包含基于 PhotoFlash 示例策略存储中包含的静态策略和您在步骤 2 中创建的策略的授权请求决策。
| 主体值 | 主体账户:实体值 | 资源值 | 资源父级值 | 操作 | 授权决策 |
|---|---|---|---|---|---|
| PhotoFlash:: 用户 | bob | PhotoFlash:: 账户 | 爱丽丝账户 | PhotoFlash:: Album | 爱丽丝最喜欢的专辑 | N/A | PhotoFlash:: 动作::”” UpdateAlbum | 拒绝 |
| PhotoFlash:: 用户 | 爱丽丝 | PhotoFlash:: 账户 | 爱丽丝账户 | PhotoFlash:: 照片 | photo.jpeg | PhotoFlash:: 账户 | bob-account | PhotoFlash:: 动作::”” ViewPhoto | 拒绝 |
| PhotoFlash:: 用户 | 爱丽丝 | PhotoFlash:: 账户 | 爱丽丝账户 | PhotoFlash:: 照片 | photo.jpeg | PhotoFlash:: 账户 | 爱丽丝账户 | PhotoFlash:: 动作::”” ViewPhoto | 允许 |
| PhotoFlash:: 用户 | 爱丽丝 | PhotoFlash:: 账户 | 爱丽丝账户 | PhotoFlash:: 照片 | bob-photo.jpeg | PhotoFlash:: 相册 | Bob-Vacation-Album | PhotoFlash:: 动作::”” DeletePhoto | 拒绝 |
步骤 4:清理资源
浏览完保单存储库后,将其删除。
删除策略存储
-
在已验证权限控制台中
,选择您在步骤 1 中创建的策略存储。 -
在导航中,选择 “设置” 。
-
在 “删除策略存储” 下,选择 “删除此策略存储” 。
-
在 “删除此政策” 存储库中?对话框中,输入 “删除”,然后选择 “删除” 。