DBModDiscoveryAndAssessment
Summary
Discovery and Assessment permissions for database connector used in database modernization
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/DBModDiscoveryAndAssessment- Default version
- v1
- Created
- Last edited
- Services
- dms, ec2, iam, kms, rds, rds-data, secretsmanager
Control-plane actions (45)
By access level: 14 List, 26 Read, 5 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| DMS | 22 of 125 | 21 Read, 1 Write; 13 restricted, 13 conditional | dms:DescribeApplicableIndividualAssessments, dms:DescribeConversionConfiguration, dms:DescribeEndpoints, dms:DescribeMetadataModel, dms:DescribeMetadataModelChildren, dms:DescribeMetadataModelCreations, dms:DescribeMetadataModelImports, dms:DescribeOrderableReplicationInstances, dms:DescribeReplicationInstances, dms:DescribeReplicationSubnetGroups, dms:DescribeReplicationTaskAssessmentRuns, dms:DescribeReplicationTaskIndividualAssessments and 10 more |
| EC2 | 7 of 834 | 7 List; 0 restricted, 0 conditional | ec2:DescribeAvailabilityZones, ec2:DescribeInstances, ec2:DescribeInternetGateways, ec2:DescribeSecurityGroups, ec2:DescribeSubnets, ec2:DescribeVpcEndpoints, ec2:DescribeVpcs |
| IAM | 6 of 190 | 2 List, 4 Read; 6 restricted, 4 conditional | iam:GetPolicy, iam:GetPolicyVersion, iam:GetRole, iam:GetRolePolicy, iam:ListAttachedRolePolicies, iam:ListRolePolicies |
| KMS | 3 of 58 | 1 List, 1 Read, 1 Write; 1 restricted, 1 conditional | kms:Decrypt, kms:DescribeKey, kms:ListAliases |
| RDS | 6 of 173 | 3 List, 3 Write; 3 restricted, 3 conditional | rds:DescribeDBClusters, rds:DescribeDBInstances, rds:DescribeDBSubnetGroups, rds:DisableHttpEndpoint, rds:EnableHttpEndpoint, rds:ModifyDBSubnetGroup |
| Secrets Manager | 1 of 27 | 1 List; 0 restricted, 0 conditional | secretsmanager:ListSecrets |
DMS: 22 actions
- dms:DescribeApplicableIndividualAssessments (Read)
- dms:DescribeConversionConfiguration (Read)
- dms:DescribeEndpoints (Read)
- dms:DescribeMetadataModel (Read)
- dms:DescribeMetadataModelChildren (Read)
- dms:DescribeMetadataModelCreations (Read)
- dms:DescribeMetadataModelImports (Read)
- dms:DescribeOrderableReplicationInstances (Read)
- dms:DescribeReplicationInstances (Read)
- dms:DescribeReplicationSubnetGroups (Read)
- dms:DescribeReplicationTaskAssessmentRuns (Read)
- dms:DescribeReplicationTaskIndividualAssessments (Read)
- dms:DescribeReplicationTasks (Read)
- dms:DescribeTableStatistics (Read)
- dms:GetTargetSelectionRules (Read)
- dms:ListDataProviders (Read)
- dms:ListInstanceProfiles (Read)
- dms:ListMetadataModelAssessments (Read)
- dms:ListMetadataModelConversions (Read)
- dms:ListMetadataModelExports (Read)
- dms:ListMigrationProjects (Read)
- dms:ModifyReplicationSubnetGroup (Write)
EC2: 7 actions
- ec2:DescribeAvailabilityZones (List)
- ec2:DescribeInstances (List)
- ec2:DescribeInternetGateways (List)
- ec2:DescribeSecurityGroups (List)
- ec2:DescribeSubnets (List)
- ec2:DescribeVpcEndpoints (List)
- ec2:DescribeVpcs (List)
IAM: 6 actions
- iam:GetPolicy (Read)
- iam:GetPolicyVersion (Read)
- iam:GetRole (Read)
- iam:GetRolePolicy (Read)
- iam:ListAttachedRolePolicies (List)
- iam:ListRolePolicies (List)
KMS: 3 actions
- kms:Decrypt (Write)
- kms:DescribeKey (Read)
- kms:ListAliases (List)
RDS: 6 actions
- rds:DescribeDBClusters (List)
- rds:DescribeDBInstances (List)
- rds:DescribeDBSubnetGroups (List)
- rds:DisableHttpEndpoint (Write)
- rds:EnableHttpEndpoint (Write)
- rds:ModifyDBSubnetGroup (Write)
Secrets Manager: 1 actions
- secretsmanager:ListSecrets (List)
Data-plane actions (1)
By access level: 1 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| RDS Data API | 1 of 6 | 1 Write; 1 restricted, 1 conditional | rds-data:ExecuteStatement |
RDS Data API: 1 actions
- rds-data:ExecuteStatement (Write)
Excluded and conditional actions
No patterns are excluded by NotAction or Deny statements.
Resource scope and attachment
Resource scope across granted actions: mixed.
Can be attached: Yes, to users, groups and roles.
Why this tier
- Grants 6 write, tagging or permissions-management actions, short of full control of any service.
- Grants data-plane write actions on a data store, but only for scoped resources or under conditions.
Guidance
Pending editorial review. The permission data on this page comes straight from AWS; this section will be filled in once a reviewed guide exists.
Related policies
Same service
- AccessAnalyzerServiceRolePolicy
- AccountManagementFromVercel
- AdministratorAccess-AWSElasticBeanstalk
- AIDevOpsReleaseManagementVPCPolicy
- AmazonApplicationRecoveryControllerRegionSwitchPlanExecutionPolicy
- AmazonAppStreamServiceAccess
- AmazonBioDiscoveryServiceLinkedRolePolicy
- AmazonChimeServiceRolePolicy
Same domain
Frequently asked questions
Pending editorial review. The permission data on this page comes straight from AWS; this section will be filled in once a reviewed guide exists.
Policy JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeSecurityGroups",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeVpcEndpoints",
"ec2:DescribeInternetGateways",
"rds:DescribeDBInstances",
"rds:DescribeDBClusters",
"rds:DescribeDBSubnetGroups",
"dms:DescribeEndpoints",
"dms:DescribeReplicationInstances",
"dms:DescribeReplicationTasks",
"dms:DescribeReplicationSubnetGroups",
"dms:DescribeOrderableReplicationInstances",
"dms:ListDataProviders",
"dms:ListInstanceProfiles",
"dms:ListMigrationProjects",
"dms:ModifyReplicationSubnetGroup",
"secretsmanager:ListSecrets",
"kms:ListAliases",
"kms:DescribeKey"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "rds:ModifyDBSubnetGroup",
"Resource": "arn:aws:rds:*:*:subgrp:*",
"Condition": {
"StringEquals": {
"aws:ResourceAccount": "${aws:PrincipalAccount}"
}
}
},
{
"Effect": "Allow",
"Action": [
"rds:EnableHttpEndpoint",
"rds:DisableHttpEndpoint",
"rds-data:ExecuteStatement"
],
"Resource": "arn:aws:rds:*:*:cluster:*",
"Condition": {
"StringEquals": {
"aws:ResourceTag/Project": "atx-db-modernization",
"aws:ResourceTag/Owner": "database-connector",
"aws:ResourceAccount": "${aws:PrincipalAccount}"
}
}
},
{
"Effect": "Allow",
"Action": [
"dms:DescribeTableStatistics",
"dms:DescribeReplicationTaskAssessmentRuns",
"dms:DescribeReplicationTaskIndividualAssessments",
"dms:DescribeApplicableIndividualAssessments"
],
"Resource": [
"arn:aws:dms:*:*:task:*",
"arn:aws:dms:*:*:assessment-run:*",
"arn:aws:dms:*:*:instance-profile:*",
"arn:aws:dms:*:*:data-provider:*",
"arn:aws:dms:*:*:migration-project:*",
"arn:aws:dms:*:*:rep:*"
],
"Condition": {
"StringEquals": {
"aws:ResourceTag/Project": "atx-db-modernization",
"aws:ResourceTag/Owner": "database-connector",
"aws:ResourceAccount": "${aws:PrincipalAccount}"
}
}
},
{
"Effect": "Allow",
"Action": [
"dms:ListMetadataModelAssessments",
"dms:ListMetadataModelConversions",
"dms:ListMetadataModelExports",
"dms:DescribeMetadataModelImports",
"dms:DescribeConversionConfiguration",
"dms:DescribeMetadataModelCreations",
"dms:DescribeMetadataModel",
"dms:DescribeMetadataModelChildren",
"dms:GetTargetSelectionRules"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:ResourceAccount": "${aws:PrincipalAccount}"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:GetRole",
"iam:ListAttachedRolePolicies",
"iam:ListRolePolicies",
"iam:GetRolePolicy"
],
"Resource": [
"arn:aws:iam::*:role/dms-vpc-role",
"arn:aws:iam::*:role/dms-cloudwatch-logs-role",
"arn:aws:iam::*:role/dms-secrets-manager-role",
"arn:aws:iam::*:role/dms-s3-access-role",
"arn:aws:iam::*:role/aws-service-role/dms.amazonaws.com/AWSServiceRoleForDMSServerless"
],
"Condition": {
"StringEquals": {
"aws:ResourceAccount": "${aws:PrincipalAccount}"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:GetPolicy",
"iam:GetPolicyVersion"
],
"Resource": [
"arn:aws:iam::*:policy/*"
],
"Condition": {
"StringEquals": {
"aws:ResourceAccount": "${aws:PrincipalAccount}"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:GetPolicy",
"iam:GetPolicyVersion"
],
"Resource": [
"arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole",
"arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole"
]
},
{
"Effect": "Allow",
"Action": "kms:Decrypt",
"Resource": "arn:aws:kms:*:*:key/*",
"Condition": {
"StringEquals": {
"aws:ResourceAccount": "${aws:PrincipalAccount}"
},
"StringLike": {
"kms:EncryptionContext:SecretArn": "arn:aws:secretsmanager:*:${aws:PrincipalAccount}:secret:*",
"kms:ViaService": "secretsmanager.*.amazonaws.com"
}
}
}
]
}
Version history
Current version v1, edited by AWS on 2026-03-25. Version history is recorded from 2026-11-11. Earlier versions are in the IAM console under Policy versions.
Attach snippets
AWS CLI
aws iam attach-role-policy --role-name ROLE_NAME --policy-arn arn:aws:iam::aws:policy/DBModDiscoveryAndAssessment
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/DBModDiscoveryAndAssessment
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/DBModDiscoveryAndAssessmentCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/DBModDiscoveryAndAssessmentTerraform
resource "aws_iam_role_policy_attachment" "dbmoddiscoveryandassessment" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/DBModDiscoveryAndAssessment"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("DBModDiscoveryAndAssessment"),
);Sources
Pending editorial review. No editorial sources are listed yet.