搭GetKeyPolicy配使用 AWS SDK或 CLI - AWS Key Management Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

GetKeyPolicy配使用 AWS SDK或 CLI

下列程式碼範例會示範如何使用GetKeyPolicy

CLI
AWS CLI

將金鑰原則從一個金KMS鑰複製到另一個KMS金鑰

下列get-key-policy範例會從一個金鑰取得KMS金鑰原則,並將其儲存在文字檔中。然後,它會使用文字檔做為原則輸入來取代不同KMS金鑰的原則。

由於的--policy參數put-key-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

此命令不會產生輸出。

若要取得更多資訊,請參閱PutKeyPolicy中的 AWS KMSAPI參考

  • 有API關詳細資訊,請參閱 GetKeyPolicyAWS CLI 指令參考

Python
SDK對於 Python(肉毒桿菌 3)
注意

還有更多關於 GitHub。尋找完整的範例,並瞭解如何在 AWS 代碼示例存儲庫

class KeyPolicy: def __init__(self, kms_client): self.kms_client = kms_client def get_policy(self, key_id): """ 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, PolicyName="default" ) 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"], ) else: pprint(policy) return policy else: print("Skipping get policy demo.")
  • 有API關詳細資訊,請參閱 GetKeyPolicyAWS SDK對於 Python(肉毒桿 3)API參考。

有關的完整列表 AWS SDK開發人員指南和代碼示例,請參閱使用 AWS KMS 用一個 AWS SDK。本主題也包含有關入門的資訊以及舊SDK版的詳細資訊。