[英]Ignoring AWS Managed/Default KMS Keys When Listing All Keys?
我寫了下面的函數:
private List<KeyListEntry> getKeyListEntries(AWSKMS kms)
{
ListKeysRequest listKeysRequest = new ListKeysRequest();
List<KeyListEntry> kmsKeys = new ArrayList<>();
boolean moreKeys = false;
do
{
ListKeysResult listKeysResult = kms.listKeys(listKeysRequest);
kmsKeys.addAll(listKeysResult.getKeys());
moreKeys = listKeysResult.getNextMarker() != null && !listKeysResult.getNextMarker().equals("");
listKeysRequest.setMarker(listKeysResult.getNextMarker());
} while (moreKeys);
return kmsKeys;
}
它會在我的帳戶中構建所有 KMS 密鑰的列表。 'moreKeys' 標志用於處理響應的分頁。 在這個列表的其他地方,我打電話給:
kms.listResourceTags
所以我可以確定每個單獨鍵上的標簽並相應地執行操作。 我的問題是,我通常會在某個時候點擊 ACM 等的默認主密鑰。
默認密鑰的這些策略不允許 root 帳戶執行kms:ListResourceTags
,我無法修改它們來更改它。 我在構建列表時是否有一種簡單的方法可以過濾掉,這樣我就可以忽略任何 AWS 默認 KMS 密鑰?
這最終成為亞馬遜的錯誤! 我提出了一個案例,ACM 團隊在默認密鑰上修復了該策略。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.