listAliases method
Gets a list of aliases in the caller's AWS account and region. For more information about aliases, see CreateAlias.
By default, the ListAliases
operation returns all aliases in
the account and region. To get only the aliases associated with a
particular customer master key (CMK), use the KeyId
parameter.
The ListAliases
response can include aliases that you created
and associated with your customer managed CMKs, and aliases that AWS
created and associated with AWS managed CMKs in your account. You can
recognize AWS aliases because their names have the format
aws/<service-name>
, such as aws/dynamodb
.
The response might also include aliases that have no
TargetKeyId
field. These are predefined aliases that AWS has
created but has not yet associated with a CMK. Aliases that AWS creates in
your account, including predefined aliases, do not count against your AWS
KMS aliases quota.
Cross-account use: No. ListAliases
does not return
aliases in other AWS accounts.
Required permissions: kms:ListAliases (IAM policy)
For details, see Controlling access to aliases in the AWS Key Management Service Developer Guide.
Related operations:
May throw DependencyTimeoutException. May throw InvalidMarkerException. May throw KMSInternalException. May throw InvalidArnException. May throw NotFoundException.
Parameter keyId
:
Lists only aliases that are associated with the specified CMK. Enter a CMK
in your AWS account.
This parameter is optional. If you omit it, ListAliases
returns all aliases in the account and Region.
Specify the key ID or the Amazon Resource Name (ARN) of the CMK.
For example:
-
Key ID:
1234abcd-12ab-34cd-56ef-1234567890ab
-
Key ARN:
arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Parameter limit
:
Use this parameter to specify the maximum number of items to return. When
this value is present, AWS KMS does not return more than the specified
number of items, but it might return fewer.
This value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.
Parameter marker
:
Use this parameter in a subsequent request after you receive a response
with truncated results. Set it to the value of NextMarker
from the truncated response you just received.
Implementation
Future<ListAliasesResponse> listAliases({
String? keyId,
int? limit,
String? marker,
}) async {
_s.validateStringLength(
'keyId',
keyId,
1,
2048,
);
_s.validateNumRange(
'limit',
limit,
1,
1000,
);
_s.validateStringLength(
'marker',
marker,
1,
1024,
);
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'TrentService.ListAliases'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
if (keyId != null) 'KeyId': keyId,
if (limit != null) 'Limit': limit,
if (marker != null) 'Marker': marker,
},
);
return ListAliasesResponse.fromJson(jsonResponse.body);
}