我正在为开发人员制定政策。我知道我可以限制开发人员仅使用iam:PassRole
操作将已批准的现有策略列表传递给EC2实例。
但是,我希望开发人员能够创建策略,主要是为了对他们正在开发的应用程序进行有限的必要访问。我不想要求他们将这些策略的创建交给受信任的系统团队或管理员组等。
但是,如果开发人员可以创建任意策略,并将任意策略传递给EC2实例,那么就没有什么可以防止他们通过"允许所有"对他们的EC2实例的政策,因此任意升级他们的特权。
是否可以限制开发人员可以创建的策略类型?例如,我是否可以创建一个策略来指定开发人员可以执行的操作,然后要求他们创建的任何策略都是其中的一部分?
答案 0 :(得分:1)
我们在办公室里进行了相同的讨论,我们得出的结论是,你不能。如果您授予开发人员创建和附加策略的能力,则无法阻止他们升级其权限。我们提出的最佳解决方案是创建一组角色和策略模板,并允许开发人员将这些策略附加到他们创建的角色。
最后,我们发现更容易相信我们的开发人员(并通过教育提升他们)并通过为每个团队/产品提供帐户以及利用云跟踪和可信赖的顾问进行监控来实现隔离/损害控制异常使用。