AWS KMS客户端未返回别名

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS KMS客户端未返回别名相关的知识,希望对你有一定的参考价值。

从现在开始我一直在使用KMS客户端的list_aliases()方法,没有任何问题。但最近它已停止列出我要使用的别名之一。

import boto3

kms_client = boto3.client('kms')

# Getting all the aliases from my KMS
key_aliases = kms_client.list_aliases()

key_aliases = key_aliases['Aliases']

# DO SOMETHING...

上面的key_aliases列表包含除我要使用的键以外的所有键。但是,我可以从AWS KMS UI中看到已启用密钥。不知道为什么list_aliases()方法没有返回。

有人遇到这个问题吗?

答案

看起来响应被截断了。该API调用获取的别名的默认数量为50。您可以将限制增加到100,这应该可以解决您的问题。

key_aliases = kms_client.list_aliases(Limit=100)

您还应该检查响应中的截断字段是否设置为True。在这种情况下,您可以进行另一个API调用以获取其余结果:

if key_aliases['Truncated'] is True:
   key_aliases = kms_client.list_aliases(Marker=key_aliases['NextMarker'])
   ...

以上是关于AWS KMS客户端未返回别名的主要内容,如果未能解决你的问题,请参考以下文章

java 创建AWS KMS客户端

PHP - 如何缓存从 AWS KMS Parameter Store 检索的数据库凭证

DynamoDB 如何使用 AWS KMS

使用 AWS KMS 返回的数字签名签署 PdfDocument

解密aws kms密钥时出现Nodejs异步问题

自定义属性未传递到由 AWS Cognito 创建的 ID_TOKEN