AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
Gets information about custom key stores in the account and Region.
This operation is part of the custom key stores feature in KMS, which combines the convenience and extensive integration of KMS with the isolation and control of a key store that you own and manage.
By default, this operation returns information about all custom key stores in the
account and Region. To get only information about a particular custom key store, use
either the CustomKeyStoreName
or CustomKeyStoreId
parameter (but not
both).
To determine whether the custom key store is connected to its CloudHSM cluster or
external key store proxy, use the ConnectionState
element in the response.
If an attempt to connect the custom key store failed, the ConnectionState
value
is FAILED
and the ConnectionErrorCode
element in the response indicates
the cause of the failure. For help interpreting the ConnectionErrorCode
, see
CustomKeyStoresListEntry.
Custom key stores have a DISCONNECTED
connection state if the key store has
never been connected or you used the DisconnectCustomKeyStore operation to
disconnect it. Otherwise, the connection state is CONNECTED. If your custom key store
connection state is CONNECTED
but you are having trouble using it, verify that
the backing store is active and available. For an CloudHSM key store, verify that
the associated CloudHSM cluster is active and contains the minimum number of HSMs
required for the operation, if any. For an external key store, verify that the external
key store proxy and its associated external key manager are reachable and enabled.
For help repairing your CloudHSM key store, see the Troubleshooting CloudHSM key stores. For help repairing your external key store, see the Troubleshooting external key stores. Both topics are in the Key Management Service Developer Guide.
Cross-account use: No. You cannot perform this operation on a custom key store in a different Amazon Web Services account.
Required permissions: kms:DescribeCustomKeyStores (IAM policy)
Related operations:
Eventual consistency: The KMS API follows an eventual consistency model. For more information, see KMS eventual consistency.
For .NET Core this operation is only available in asynchronous form. Please refer to DescribeCustomKeyStoresAsync.
Namespace: Amazon.KeyManagementService
Assembly: AWSSDK.KeyManagementService.dll
Version: 3.x.y.z
public virtual DescribeCustomKeyStoresResponse DescribeCustomKeyStores( DescribeCustomKeyStoresRequest request )
Container for the necessary parameters to execute the DescribeCustomKeyStores service method.
Exception | Condition |
---|---|
CustomKeyStoreNotFoundException | The request was rejected because KMS cannot find a custom key store with the specified key store name or ID. |
InvalidMarkerException | The request was rejected because the marker that specifies where pagination should next begin is not valid. |
KMSInternalException | The request was rejected because an internal exception occurred. The request can be retried. |
This example gets detailed information about all AWS KMS custom key stores in an AWS account and Region. To get all key stores, do not enter a custom key store name or ID.
var client = new AmazonKeyManagementServiceClient(); var response = client.DescribeCustomKeyStores(new DescribeCustomKeyStoresRequest { }); List<CustomKeyStoresListEntry> customKeyStores = response.CustomKeyStores; // Details about each custom key store in the account and Region.
This example gets detailed information about a particular AWS CloudHSM key store by specifying its friendly name. To limit the output to a particular custom key store, provide either the custom key store name or ID.
var client = new AmazonKeyManagementServiceClient(); var response = client.DescribeCustomKeyStores(new DescribeCustomKeyStoresRequest { CustomKeyStoreName = "ExampleKeyStore" // The friendly name of the custom key store. }); List<CustomKeyStoresListEntry> customKeyStores = response.CustomKeyStores; // Detailed information about the specified custom key store.
This example gets detailed information about an external key store by specifying its ID. The example external key store proxy uses public endpoint connectivity.
var client = new AmazonKeyManagementServiceClient(); var response = client.DescribeCustomKeyStores(new DescribeCustomKeyStoresRequest { CustomKeyStoreId = "cks-9876543210fedcba9" // The ID of the custom key store. }); List<CustomKeyStoresListEntry> customKeyStores = response.CustomKeyStores; // Detailed information about the specified custom key store.
This example gets detailed information about a particular external key store by specifying its friendly name. To limit the output to a particular custom key store, provide either the custom key store name or ID. The proxy URI path for this external key store includes an optional prefix. Also, because this example external key store uses VPC endpoint connectivity, the response includes the associated VPC endpoint service name.
var client = new AmazonKeyManagementServiceClient(); var response = client.DescribeCustomKeyStores(new DescribeCustomKeyStoresRequest { CustomKeyStoreName = "VPCExternalKeystore" }); List<CustomKeyStoresListEntry> customKeyStores = response.CustomKeyStores; // Detailed information about the specified custom key store.
.NET Framework:
Supported in: 4.5 and newer, 3.5