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

AWS DMS配置报错:Invalid secretManagerAccessRoleArn 求助排查

解决DMS访问Secrets Manager时角色ARN无效的问题

错误信息

SecretManager的secretManagerAccessRoleArn 'arn:aws:iam::069751638693:role/dms-migration-secrets-role-manual'无效

IAM角色配置

我创建的IAM角色包含以下配置:

  1. 信任策略:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "dms.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
  1. 附加的策略:
  • SecretsManagerReadWrite
  • AmazonDMSCloudWatchLogsRole
  • AmazonDMSVPCManagementRole

问题描述

尝试用该角色让DMS访问Secrets Manager中的数据库凭证,但创建/配置DMS迁移任务时持续收到上述错误,想知道角色配置缺了什么,怎么解决。

环境信息

  • AWS区域:us-west-2
  • 通过AWS控制台配置
  • 数据库凭证存储在Secrets Manager中
  • 正在设置新的DMS迁移任务

已尝试操作

  • 为DMS创建了正确的信任策略角色
  • 附加了包括SecretsManagerReadWrite在内的必要策略
  • 验证了角色ARN正确无误

可能的问题及解决方法

1. 角色权限边界限制

如果角色设置了权限边界,即使附加了SecretsManagerReadWrite策略,权限边界也可能阻止DMS访问Secrets Manager。

  • 进入IAM角色详情页,查看“权限边界”部分,确认没有限制Secrets Manager相关操作的边界策略。如果有,要么调整边界策略添加secretsmanager:GetSecretValue等必要权限,要么移除不必要的权限边界。

2. 策略未正确生效或存在冲突

有时候附加的策略可能因为缓存或配置问题未生效,或者存在拒绝策略冲突:

  • 重新确认SecretsManagerReadWrite策略的内容,确保包含secretsmanager:GetSecretValue、secretsmanager:DescribeSecret等DMS访问凭证所需的核心权限。
  • 使用IAM策略模拟器测试角色是否能执行secretsmanager:GetSecretValue操作:选择该角色,模拟dms.amazonaws.com作为调用者,测试对应Secret的访问权限,排查是否存在隐性的拒绝规则。

3. 信任策略的额外限制

虽然信任策略指定了dms.amazonaws.com,但如果存在额外条件限制,可能会阻止DMS AssumeRole:

  • 进入IAM角色的“信任关系”页,确认策略中没有IP范围、时间等条件限制。如果有,根据需求调整或移除这些限制。
  • 尝试重新保存信任策略,确保配置完全生效。

4. Secret的资源策略限制

Secrets Manager的Secret可能设置了资源策略,拒绝了该IAM角色的访问:

  • 进入对应Secret的详情页,查看“资源策略”部分,确认没有拒绝该角色ARN访问的规则。如果有,添加允许该角色执行secretsmanager:GetSecretValue的语句。

5. 角色生效延迟

IAM角色创建后通常需要几秒钟到几分钟的时间生效,等待片刻后再尝试配置DMS任务,避免因未完全生效导致的错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 02:37:16