本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
KMS密钥访问和权限
要使用 Amazon KMS,您必须拥有 Amazon 可用于对请求进行身份验证的证书。证书必须包括访问 Amazon 资源的权限 Amazon KMS keys 和别名。除非明确提供密钥权限,否则 Amazon 委托人对KMS密钥没有任何权限,并且从不被拒绝。没有使用或管理KMS密钥的隐式或自动权限。
要控制对KMS密钥的访问权限,您可以使用以下策略机制。
-
密钥策略-每个KMS密钥都有密钥策略。它是控制KMS密钥访问的主要机制。您可以单独使用密钥策略来控制访问权限,这意味着对KMS密钥的全部访问范围是在单个文档(密钥策略)中定义的。有关使用密钥策略的更多信息,请参阅密钥政策。
-
IAM策略-您可以将IAM策略与密钥策略和授权结合使用,以控制对KMS密钥的访问权限。通过这种方式控制访问权限,您可以管理中IAM身份的所有权限IAM。要使用IAM策略允许访问KMS密钥,密钥策略必须明确允许访问密钥。有关使用IAM策略的更多信息,请参阅IAM 策略。
-
G rants — 您可以将授权与密钥策略和IAM策略结合使用,以允许访问KMS密钥。通过这种方式控制访问权限,您可以允许访问KMS密钥策略中的密钥,并允许身份将其访问权限委托给其他人。有关使用授权的更多信息,请参阅补助金 Amazon KMS。
KMS关键政策
管理 Amazon KMS 资源访问权限的主要方法是使用策略。策略是用于描述哪些委托人可以访问什么资源的文档。附加到IAM身份的策略称为基于身份的策略(或IAM策略),附加到其他类型资源的策略称为资源策略。 Amazon KMS KMS密钥的资源策略称为密钥策略。
所有KMS密钥都有密钥策略。如果您不提供一个,请为您 Amazon KMS 创建一个。 Amazon KMS 使用的默认密钥策略会有所不同,具体取决于您是在 Amazon KMS 控制台中创建密钥还是使用密钥 Amazon KMS API。我们建议您编辑默认密钥政策,使其符合贵组织对最低权限的要求。
如果密钥和IAM委托人位于同一个 Amazon 账户中,则可以单独使用密钥策略来控制访问权限,这意味着对KMS密钥的全部访问范围是在单个文档(密钥策略)中定义的。但是,当一个账户中的调用者必须访问另一个账户中的密钥时,您不能仅使用密钥政策来授予访问权限。在跨账户场景中,必须将IAM策略附加到来电者的用户或角色,明确允许来电者API拨打电话。
您还可以将IAM策略与密钥策略和授权结合使用,以控制对KMS密钥的访问权限。要使用IAM策略来控制对KMS密钥的访问,密钥策略必须授予账户使用IAM策略的权限。您可以指定启用策略的密钥策略声明,也可以在密钥IAM策略中明确指定允许的委托人。
在制定策略时,请确保有严格的控制措施,限制可以执行以下操作的人员:
-
更新、创建、删除IAM和KMS密钥策略
-
为用户、角色和群组附加和分离IAM策略
-
在钥匙上附加和拆除KMS钥匙策略 KMS
KMS密钥补助金
除了关键政策外IAM,还 Amazon KMS 支持补助金。授权提供了一种灵活而强大的权限委托方式。您可以使用授权向账户或其他 Amazon Amazon 账户中的IAM委托人授予有时限的KMS密钥访问权限。如果您在创建策略时不知道主体的名称,或者需要访问权限的主体经常发生变化,我们建议您授予有时限的访问权限。被授权人委托人可以与KMS密钥在同一个账户中,也可以位于不同的账户中。如果委托人和KMS密钥位于不同的账户中,则除了授权外,您还必须指定IAM策略。拨款需要额外的管理,因为您必须致电API来创建授权,并在不再需要时取消或撤销授权。
以下主题详细介绍了如何使用 Amazon Identity and Access Management (IAM) 以及通过控制谁可以访问资源来保护资源的 Amazon KMS 权限。