选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

GetKeyPolicy与 AWS SDK 或 CLI 配合使用

聚焦模式
GetKeyPolicy与 AWS SDK 或 CLI 配合使用 - AWS Key Management Service

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

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

以下代码示例演示如何使用 GetKeyPolicy

操作示例是大型程序的代码摘录,必须在上下文中运行。在以下代码示例中,您可以查看此操作的上下文:

CLI
AWS CLI

将密钥策略从一个 KMS 密钥复制到另一个 KMS 密钥

以下 get-key-policy 示例从一个 KMS 密钥获取密钥策略并将其保存在文本文件中。然后,它使用文本文件作为策略输入替换其他 KMS 密钥的策略。

由于 put-key-policy--policy 参数需要字符串,因此,您必须使用 --output text 选项将输出作为文本字符串(而不是 JSON)返回。

aws kms get-key-policy \ --policy-name default \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --query Policy \ --output text > policy.txt aws kms put-key-policy \ --policy-name default \ --key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \ --policy file://policy.txt

此命令不生成任何输出。

有关更多信息,请参阅 AWS KMS API 参考PutKeyPolicy中的。

  • 有关 API 的详细信息,请参阅AWS CLI 命令参考GetKeyPolicy中的。

Python
适用于 Python 的 SDK(Boto3)
注意

还有更多相关信息 GitHub。查找完整示例,学习如何在 AWS 代码示例存储库中进行设置和运行。

class KeyPolicy: def __init__(self, kms_client): self.kms_client = kms_client @classmethod def from_client(cls) -> "KeyPolicy": """ Creates a KeyPolicy instance with a default KMS client. :return: An instance of KeyPolicy initialized with the default KMS client. """ kms_client = boto3.client("kms") return cls(kms_client) def get_policy(self, key_id: str) -> dict[str, str]: """ Gets the policy of a key. :param key_id: The ARN or ID of the key to query. :return: The key policy as a dict. """ if key_id != "": try: response = self.kms_client.get_key_policy( KeyId=key_id, ) policy = json.loads(response["Policy"]) except ClientError as err: logger.error( "Couldn't get policy for key %s. Here's why: %s", key_id, err.response["Error"]["Message"], ) raise else: pprint(policy) return policy else: print("Skipping get policy demo.")
  • 有关 API 的详细信息,请参阅适用GetKeyPolicyPython 的AWS SDK (Boto3) API 参考

AWS CLI

将密钥策略从一个 KMS 密钥复制到另一个 KMS 密钥

以下 get-key-policy 示例从一个 KMS 密钥获取密钥策略并将其保存在文本文件中。然后,它使用文本文件作为策略输入替换其他 KMS 密钥的策略。

由于 put-key-policy--policy 参数需要字符串,因此,您必须使用 --output text 选项将输出作为文本字符串(而不是 JSON)返回。

aws kms get-key-policy \ --policy-name default \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --query Policy \ --output text > policy.txt aws kms put-key-policy \ --policy-name default \ --key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \ --policy file://policy.txt

此命令不生成任何输出。

有关更多信息,请参阅 AWS KMS API 参考PutKeyPolicy中的。

  • 有关 API 的详细信息,请参阅AWS CLI 命令参考GetKeyPolicy中的。

有关 S AWS DK 开发者指南和代码示例的完整列表,请参阅将此服务与 AWS SDK 配合使用。本主题还包括有关入门的信息以及有关先前的 SDK 版本的详细信息。

下一主题:

ListAliases

上一主题:

GenerateRandom
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。