Verwendung von ListKeyPolicies mit einem AWS-SDK oder CLI - AWS-SDK-Codebeispiele

Weitere AWS-SDK-Beispiele sind im GitHub-Repository Beispiele für AWS Doc SDKs verfügbar.

Verwendung von ListKeyPolicies mit einem AWS-SDK oder CLI

Die folgenden Code-Beispiele zeigen, wie ListKeyPolicies verwendet wird.

CLI
AWS CLI

So rufen Sie die Namen von Schlüsselrichtlinien für einen KMS-Schlüssel ab

Im folgenden list-key-policies-Beispiel werden die Namen der Schlüsselrichtlinien für einen kundenseitig verwalteten Schlüssel im Beispielkonto und in der Beispielregion abgerufen. Mit diesem Befehl können Sie die Namen der von AWS und der kundenseitig verwalteten Schlüsselrichtlinien suchen.

Da der einzige gültige Name der Schlüsselrichtlinie default lautet, ist dieser Befehl nicht hilfreich.

Verwenden Sie den Parameter key-id, um den KMS-Schlüssel anzugeben. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, Sie können jedoch eine Schlüssel-ID oder einen Schlüssel-ARN in diesem Befehl verwenden.

aws kms list-key-policies \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab

Ausgabe:

{ "PolicyNames": [ "default" ] }

Weitere Informationen zu Schlüsselrichtlinien von AWS KMS finden Sie unter Verwenden von Schlüsselrichtlinien in AWS KMS im Entwicklerhandbuch für AWS Key Management Service.

  • Weitere API-Informationen finden Sie unter ListKeyPolicies in der AWS CLI-Befehlsreferenz.

Java
SDK für Java 2.x
Anmerkung

Auf GitHub finden Sie noch mehr. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS-Code-Beispiel- einrichten und ausführen.

/** * Asynchronously retrieves the key policy for the specified key ID and policy name. * * @param keyId the ID of the AWS KMS key for which to retrieve the policy * @param policyName the name of the key policy to retrieve * @return a {@link CompletableFuture} that, when completed, contains the key policy as a {@link String} */ public CompletableFuture<String> getKeyPolicyAsync(String keyId, String policyName) { GetKeyPolicyRequest policyRequest = GetKeyPolicyRequest.builder() .keyId(keyId) .policyName(policyName) .build(); return getAsyncClient().getKeyPolicy(policyRequest) .thenApply(response -> { String policy = response.policy(); logger.info("The response is: " + policy); return policy; }) .exceptionally(ex -> { throw new RuntimeException("Failed to get key policy", ex); }); }
  • Weitere API-Informationen finden Sie unter ListKeyPolicies in der AWS SDK for Java 2.x-API-Referenz.

Python
SDK für Python (Boto3)
Anmerkung

Auf GitHub finden Sie noch mehr. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS-Code-Beispiel- einrichten und ausführen.

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 list_policies(self, key_id): """ Lists the names of the policies for a key. :param key_id: The ARN or ID of the key to query. """ try: policy_names = self.kms_client.list_key_policies(KeyId=key_id)[ "PolicyNames" ] except ClientError as err: logging.error( "Couldn't list your policies. Here's why: %s", err.response["Error"]["Message"], ) raise else: print(f"The policies for key {key_id} are:") pprint(policy_names)
  • Weitere API-Informationen finden Sie unter ListKeyPolicies in der API-Referenz zum AWS SDK für Python (Boto3).