SecretsManagerReadWrite
Summary
Provides read/write access to AWS Secrets Manager via the AWS Management Console. Note: this exludes IAM actions, so combine with IAMFullAccess if rotation configuration is required.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/SecretsManagerReadWrite- Default version
- v6
- Created
- Last edited
- Services
- cloudformation, docdb-elastic, ec2, kms, lambda, rds, redshift, redshift-serverless, s3, secretsmanager, serverlessrepo, tag
Control-plane actions (55)
By access level: 13 List, 4 Permissions management, 15 Read, 4 Tagging, 19 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| CloudFormation | 7 of 104 | 1 List, 2 Read, 2 Tagging, 2 Write; 2 restricted, 2 conditional | cloudformation:CreateChangeSet, cloudformation:DescribeChangeSet, cloudformation:DescribeStackResource, cloudformation:DescribeStacks, cloudformation:ExecuteChangeSet, cloudformation:TagResource, cloudformation:UntagResource |
| DocumentDB Elastic Clusters | 2 of 19 | 1 List, 1 Read; 0 restricted, 0 conditional | docdb-elastic:GetCluster, docdb-elastic:ListClusters |
| EC2 | 3 of 834 | 3 List; 0 restricted, 0 conditional | ec2:DescribeSecurityGroups, ec2:DescribeSubnets, ec2:DescribeVpcs |
| KMS | 3 of 58 | 2 List, 1 Read; 0 restricted, 0 conditional | kms:DescribeKey, kms:ListAliases, kms:ListKeys |
| Lambda | 5 of 121 | 1 List, 1 Permissions management, 1 Read, 2 Write; 4 restricted, 0 conditional | lambda:AddPermission, lambda:CreateFunction, lambda:GetFunction, lambda:ListFunctions, lambda:UpdateFunctionConfiguration |
| RDS | 2 of 173 | 2 List; 0 restricted, 0 conditional | rds:DescribeDBClusters, rds:DescribeDBInstances |
| Redshift | 1 of 167 | 1 List; 0 restricted, 0 conditional | redshift:DescribeClusters |
| Redshift Serverless | 2 of 69 | 1 List, 1 Read; 0 restricted, 0 conditional | redshift-serverless:GetNamespace, redshift-serverless:ListWorkgroups |
| Secrets Manager | All 27 actions (see the Secrets Manager page) | 1 List, 3 Permissions management, 7 Read, 2 Tagging, 14 Write; 0 restricted, 0 conditional | secretsmanager:* |
| Serverless Application Repository | 2 of 15 | 1 Read, 1 Write; 2 restricted, 0 conditional | serverlessrepo:CreateCloudFormationChangeSet, serverlessrepo:GetApplication |
| Resource Group Tagging | 1 of 9 | 1 Read; 0 restricted, 0 conditional | tag:GetResources |
CloudFormation: 7 actions
- cloudformation:CreateChangeSet (Write)
- cloudformation:DescribeChangeSet (Read)
- cloudformation:DescribeStackResource (Read)
- cloudformation:DescribeStacks (List)
- cloudformation:ExecuteChangeSet (Write)
- cloudformation:TagResource (Tagging)
- cloudformation:UntagResource (Tagging)
DocumentDB Elastic Clusters: 2 actions
- docdb-elastic:GetCluster (Read)
- docdb-elastic:ListClusters (List)
EC2: 3 actions
- ec2:DescribeSecurityGroups (List)
- ec2:DescribeSubnets (List)
- ec2:DescribeVpcs (List)
KMS: 3 actions
- kms:DescribeKey (Read)
- kms:ListAliases (List)
- kms:ListKeys (List)
Lambda: 5 actions
- lambda:AddPermission (Permissions management)
- lambda:CreateFunction (Write)
- lambda:GetFunction (Read)
- lambda:ListFunctions (List)
- lambda:UpdateFunctionConfiguration (Write)
RDS: 2 actions
- rds:DescribeDBClusters (List)
- rds:DescribeDBInstances (List)
Redshift: 1 actions
- redshift:DescribeClusters (List)
Redshift Serverless: 2 actions
- redshift-serverless:GetNamespace (Read)
- redshift-serverless:ListWorkgroups (List)
Serverless Application Repository: 2 actions
- serverlessrepo:CreateCloudFormationChangeSet (Write)
- serverlessrepo:GetApplication (Read)
Resource Group Tagging: 1 actions
- tag:GetResources (Read)
Data-plane actions (2)
By access level: 1 Read, 1 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| Lambda | 1 of 14 | 1 Write; 1 restricted, 0 conditional | lambda:InvokeFunction |
| S3 | 1 of 25 | 1 Read; 1 restricted, 0 conditional | s3:GetObject |
Lambda: 1 actions
- lambda:InvokeFunction (Write)
S3: 1 actions
- s3:GetObject (Read)
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 at least 80% of the write and permissions-management actions of: secretsmanager (17 of 17).
- Can read secret values or decrypt data. Reads are not a High privilege rule.
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
- AdministratorAccess-AWSElasticBeanstalk
- AIDevOpsOrganizationsAccessPolicy
- AlexaForBusinessDeviceSetup
- AlexaForBusinessNetworkProfileServicePolicy
- AmazonCognitoIdpServiceRolePolicy
- AmazonDataZonePreviewConsoleFullAccess
- AmazonDataZoneRedshiftGlueProvisioningPolicy
- AmazonDocDBElasticFullAccess
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": [
{
"Sid": "BasePermissions",
"Effect": "Allow",
"Action": [
"secretsmanager:*",
"cloudformation:CreateChangeSet",
"cloudformation:DescribeChangeSet",
"cloudformation:DescribeStackResource",
"cloudformation:DescribeStacks",
"cloudformation:ExecuteChangeSet",
"docdb-elastic:GetCluster",
"docdb-elastic:ListClusters",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"kms:DescribeKey",
"kms:ListAliases",
"kms:ListKeys",
"lambda:ListFunctions",
"rds:DescribeDBClusters",
"rds:DescribeDBInstances",
"redshift:DescribeClusters",
"redshift-serverless:ListWorkgroups",
"redshift-serverless:GetNamespace",
"tag:GetResources"
],
"Resource": "*"
},
{
"Sid": "LambdaPermissions",
"Effect": "Allow",
"Action": [
"lambda:AddPermission",
"lambda:CreateFunction",
"lambda:GetFunction",
"lambda:InvokeFunction",
"lambda:UpdateFunctionConfiguration"
],
"Resource": "arn:aws:lambda:*:*:function:SecretsManager*"
},
{
"Sid": "SARPermissions",
"Effect": "Allow",
"Action": [
"serverlessrepo:CreateCloudFormationChangeSet",
"serverlessrepo:GetApplication"
],
"Resource": "arn:aws:serverlessrepo:*:*:applications/SecretsManager*"
},
{
"Sid": "S3Permissions",
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::awsserverlessrepo-changesets*",
"arn:aws:s3:::secrets-manager-rotation-apps-*/*"
]
},
{
"Sid": "CloudFormationTagOnCreate",
"Effect": "Allow",
"Action": [
"cloudformation:TagResource",
"cloudformation:UntagResource"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"cloudformation:CreateAction": [
"CreateChangeSet",
"ExecuteChangeSet"
]
}
}
}
]
}
Version history
Current version v6, edited by AWS on 2026-08-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/SecretsManagerReadWrite
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/SecretsManagerReadWrite
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/SecretsManagerReadWriteCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/SecretsManagerReadWriteTerraform
resource "aws_iam_role_policy_attachment" "secretsmanagerreadwrite" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/SecretsManagerReadWrite"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("SecretsManagerReadWrite"),
);Sources
Pending editorial review. No editorial sources are listed yet.