Skip to main content
IAM Policy Map

SecretsManagerReadWrite

AdminAWS managedActivePermissions reviewedShow on mapCompare

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.

Control-plane actions by service
ServiceGrantedAccess levels and limitsGranted by
CloudFormation7 of 1041 List, 2 Read, 2 Tagging, 2 Write; 2 restricted, 2 conditionalcloudformation:CreateChangeSet, cloudformation:DescribeChangeSet, cloudformation:DescribeStackResource, cloudformation:DescribeStacks, cloudformation:ExecuteChangeSet, cloudformation:TagResource, cloudformation:UntagResource
DocumentDB Elastic Clusters2 of 191 List, 1 Read; 0 restricted, 0 conditionaldocdb-elastic:GetCluster, docdb-elastic:ListClusters
EC23 of 8343 List; 0 restricted, 0 conditionalec2:DescribeSecurityGroups, ec2:DescribeSubnets, ec2:DescribeVpcs
KMS3 of 582 List, 1 Read; 0 restricted, 0 conditionalkms:DescribeKey, kms:ListAliases, kms:ListKeys
Lambda5 of 1211 List, 1 Permissions management, 1 Read, 2 Write; 4 restricted, 0 conditionallambda:AddPermission, lambda:CreateFunction, lambda:GetFunction, lambda:ListFunctions, lambda:UpdateFunctionConfiguration
RDS2 of 1732 List; 0 restricted, 0 conditionalrds:DescribeDBClusters, rds:DescribeDBInstances
Redshift1 of 1671 List; 0 restricted, 0 conditionalredshift:DescribeClusters
Redshift Serverless2 of 691 List, 1 Read; 0 restricted, 0 conditionalredshift-serverless:GetNamespace, redshift-serverless:ListWorkgroups
Secrets ManagerAll 27 actions (see the Secrets Manager page)1 List, 3 Permissions management, 7 Read, 2 Tagging, 14 Write; 0 restricted, 0 conditionalsecretsmanager:*
Serverless Application Repository2 of 151 Read, 1 Write; 2 restricted, 0 conditionalserverlessrepo:CreateCloudFormationChangeSet, serverlessrepo:GetApplication
Resource Group Tagging1 of 91 Read; 0 restricted, 0 conditionaltag: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.

Data-plane actions by service
ServiceGrantedAccess levels and limitsGranted by
Lambda1 of 141 Write; 1 restricted, 0 conditionallambda:InvokeFunction
S31 of 251 Read; 1 restricted, 0 conditionals3: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.

Same service

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

Download 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/SecretsManagerReadWrite

CloudFormation

Resources:
  ExampleRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument: {}  # replace with your trust policy
      ManagedPolicyArns:
        - arn:aws:iam::aws:policy/SecretsManagerReadWrite

Terraform

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.