You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CloudFormation创建的AWS KMS密钥立即进入待删除状态求助

解决KMS密钥创建后立即进入Pending Deletion状态的问题

以下是针对你遇到的问题的具体排查和解决建议:

  • 检查CloudFormation模板的KMS密钥删除策略
    CloudFormation默认对KMS密钥的DeletionPolicy为Delete,如果你的脚本存在先删除旧栈再创建新栈的逻辑,旧栈中的KMS密钥会被标记为待删除;如果新栈创建时未设置保留策略,也可能触发异常。在KMS密钥资源中添加以下配置,确保密钥不会被自动标记为待删除:

    Resources:
      IAMRolesAnywhereKMSKey:
        Type: AWS::KMS::Key
        DeletionPolicy: Retain
        UpdateReplacePolicy: Retain
        Properties:
          Description: "KMS key for IAM Roles Anywhere"
          KeyUsage: SIGN_VERIFY
          KeySpec: RSA_2048
          # 其他必要属性(如权限策略)
    
  • 排查脚本操作时序与误操作
    确认脚本中没有在创建CloudFormation栈后意外触发栈删除或KMS密钥删除命令,比如检查是否存在条件分支错误,导致刚执行完aws cloudformation create-stack就调用delete-stack。
    同时,必须确保栈完全创建完成后再执行CA签署操作,添加等待命令:

    aws cloudformation wait stack-create-complete --stack-name <your-unique-stack-name>
    
  • 强化KMS密钥状态检查与恢复逻辑
    优化你的检查逻辑,覆盖刚创建就进入待删除的场景:

    # 获取目标KMS密钥ARN(根据描述或标签筛选)
    TARGET_KEY_ARN=$(aws kms list-keys --query "Keys[?Description=='KMS key for IAM Roles Anywhere'].KeyArn" --output text)
    
    if [ -n "$TARGET_KEY_ARN" ]; then
      KEY_STATE=$(aws kms describe-key --key-id "$TARGET_KEY_ARN" --query "KeyMetadata.KeyState" --output text)
      if [ "$KEY_STATE" = "PendingDeletion" ]; then
        # 取消删除并等待密钥恢复活跃状态
        aws kms cancel-key-deletion --key-id "$TARGET_KEY_ARN"
        aws kms wait key-status-active --key-id "$TARGET_KEY_ARN"
      fi
    fi
    

    注意:如果是新创建的密钥立即进入待删除,大概率是脚本中误执行了aws kms schedule-key-deletion,务必排查所有KMS相关命令。

  • 查看CloudFormation栈事件日志
    通过栈事件确认KMS密钥的生命周期:

    aws cloudformation describe-stack-events --stack-name <your-stack-name>
    

    日志中会显示密钥资源的创建、修改或删除触发事件,帮助定位是否是CloudFormation本身的异常操作导致密钥进入待删除状态。

  • 检查IAM权限边界
    执行脚本的IAM身份如果拥有kms:ScheduleKeyDeletion权限,可能在脚本执行过程中被误触发(比如第三方工具、脚本拼写错误)。临时限制该权限,测试是否还会出现问题。

内容的提问来源于stack exchange,提问作者user1010101

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 10:57:12