AWSCodeCommitPowerUser
Summary
Provides full access to AWS CodeCommit repositories, but does not allow repository deletion.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/AWSCodeCommitPowerUser- Default version
- v18
- Created
- Last edited
- Services
- chatbot, codecommit, codeguru-reviewer, codestar-connections, codestar-notifications, events, iam, lambda, sns
Control-plane actions (131)
By access level: 23 List, 43 Read, 2 Tagging, 63 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| Chatbot | 2 of 39 | 2 Read; 0 restricted, 0 conditional | chatbot:DescribeSlackChannelConfigurations, chatbot:ListMicrosoftTeamsChannelConfigurations |
| CodeCommit | 85 of 91 | 8 List, 34 Read, 2 Tagging, 41 Write; 0 restricted, 0 conditional | codecommit:AssociateApprovalRuleTemplateWithRepository, codecommit:BatchAssociateApprovalRuleTemplateWithRepositories, codecommit:BatchDescribe*, codecommit:BatchDisassociateApprovalRuleTemplateFromRepositories, codecommit:BatchGet*, codecommit:Create*, codecommit:DeleteBranch, codecommit:DeleteFile, codecommit:Describe*, codecommit:DisassociateApprovalRuleTemplateFromRepository, codecommit:EvaluatePullRequestApprovalRules, codecommit:Get* and 11 more |
| CodeGuru Reviewer | 6 of 17 | 2 List, 2 Read, 2 Write; 0 restricted, 0 conditional | codeguru-reviewer:AssociateRepository, codeguru-reviewer:DescribeCodeReview, codeguru-reviewer:DescribeRepositoryAssociation, codeguru-reviewer:DisassociateRepository, codeguru-reviewer:ListCodeReviews, codeguru-reviewer:ListRepositoryAssociations |
| CodeStar Connections | 2 of 38 | 1 List, 1 Read; 2 restricted, 0 conditional | codestar-connections:GetConnection, codestar-connections:ListConnections |
| CodeStar Notifications | 9 of 13 | 4 List, 1 Read, 4 Write; 5 restricted, 5 conditional | codestar-notifications:CreateNotificationRule, codestar-notifications:DescribeNotificationRule, codestar-notifications:ListEventTypes, codestar-notifications:ListNotificationRules, codestar-notifications:ListTagsforResource, codestar-notifications:ListTargets, codestar-notifications:Subscribe, codestar-notifications:Unsubscribe, codestar-notifications:UpdateNotificationRule |
| EventBridge | 8 of 71 | 1 List, 1 Read, 6 Write; 8 restricted, 0 conditional | events:DeleteRule, events:DescribeRule, events:DisableRule, events:EnableRule, events:ListTargetsByRule, events:PutRule, events:PutTargets, events:RemoveTargets |
| IAM | 13 of 190 | 4 List, 1 Read, 8 Write; 12 restricted, 1 conditional | iam:CreateServiceLinkedRole, iam:CreateServiceSpecificCredential, iam:DeleteSSHPublicKey, iam:DeleteServiceSpecificCredential, iam:GetSSHPublicKey, iam:ListAccessKeys, iam:ListSSHPublicKeys, iam:ListServiceSpecificCredentials, iam:ListUsers, iam:ResetServiceSpecificCredential, iam:UpdateSSHPublicKey, iam:UpdateServiceSpecificCredential and 1 more |
| Lambda | 1 of 121 | 1 List; 0 restricted, 0 conditional | lambda:ListFunctions |
| SNS | 5 of 40 | 2 List, 1 Read, 2 Write; 2 restricted, 0 conditional | sns:GetTopicAttributes, sns:ListSubscriptionsByTopic, sns:ListTopics, sns:Subscribe, sns:Unsubscribe |
Chatbot: 2 actions
- chatbot:DescribeSlackChannelConfigurations (Read)
- chatbot:ListMicrosoftTeamsChannelConfigurations (Read)
CodeCommit: 85 actions
- codecommit:AssociateApprovalRuleTemplateWithRepository (Write)
- codecommit:BatchAssociateApprovalRuleTemplateWithRepositories (Write)
- codecommit:BatchDescribeMergeConflicts (Read)
- codecommit:BatchDisassociateApprovalRuleTemplateFromRepositories (Write)
- codecommit:BatchGetCommits (Read)
- codecommit:BatchGetPullRequests (Read)
- codecommit:BatchGetRepositories (Read)
- codecommit:CreateApprovalRuleTemplate (Write)
- codecommit:CreateBranch (Write)
- codecommit:CreateCommit (Write)
- codecommit:CreatePullRequest (Write)
- codecommit:CreatePullRequestApprovalRule (Write)
- codecommit:CreateRepository (Write)
- codecommit:CreateUnreferencedMergeCommit (Write)
- codecommit:DeleteBranch (Write)
- codecommit:DeleteFile (Write)
- codecommit:DescribeMergeConflicts (Read)
- codecommit:DescribePullRequestEvents (Read)
- codecommit:DisassociateApprovalRuleTemplateFromRepository (Write)
- codecommit:EvaluatePullRequestApprovalRules (Read)
- codecommit:GetApprovalRuleTemplate (Read)
- codecommit:GetBlob (Read)
- codecommit:GetBlobDifferences (Read)
- codecommit:GetBranch (Read)
- codecommit:GetComment (Read)
- codecommit:GetCommentReactions (Read)
- codecommit:GetCommentsForComparedCommit (Read)
- codecommit:GetCommentsForPullRequest (Read)
- codecommit:GetCommit (Read)
- codecommit:GetCommitHistory (Read)
- codecommit:GetCommitsFromMergeBase (Read)
- codecommit:GetDifferences (Read)
- codecommit:GetFile (Read)
- codecommit:GetFolder (Read)
- codecommit:GetMergeCommit (Read)
- codecommit:GetMergeConflicts (Read)
- codecommit:GetMergeOptions (Read)
- codecommit:GetObjectIdentifier (Read)
- codecommit:GetPullRequest (Read)
- codecommit:GetPullRequestApprovalStates (Read)
- codecommit:GetPullRequestOverrideState (Read)
- codecommit:GetReferences (Read)
- codecommit:GetRepository (Read)
- codecommit:GetRepositoryTriggers (Read)
- codecommit:GetTree (Read)
- codecommit:GetUploadArchiveStatus (Read)
- codecommit:GitPull (Read)
- codecommit:GitPush (Write)
- codecommit:ListApprovalRuleTemplates (List)
- codecommit:ListAssociatedApprovalRuleTemplatesForRepository (List)
- codecommit:ListBranches (List)
- codecommit:ListFileCommitHistory (List)
- codecommit:ListPullRequests (List)
- codecommit:ListRepositories (List)
- codecommit:ListRepositoriesForApprovalRuleTemplate (List)
- codecommit:ListTagsForResource (List)
- codecommit:MergeBranchesByFastForward (Write)
- codecommit:MergeBranchesBySquash (Write)
- codecommit:MergeBranchesByThreeWay (Write)
- codecommit:MergePullRequestByFastForward (Write)
- codecommit:MergePullRequestBySquash (Write)
- codecommit:MergePullRequestByThreeWay (Write)
- codecommit:OverridePullRequestApprovalRules (Write)
- codecommit:PostCommentForComparedCommit (Write)
- codecommit:PostCommentForPullRequest (Write)
- codecommit:PostCommentReply (Write)
- codecommit:PutCommentReaction (Write)
- codecommit:PutFile (Write)
- codecommit:PutRepositoryTriggers (Write)
- codecommit:TagResource (Tagging)
- codecommit:TestRepositoryTriggers (Write)
- codecommit:UntagResource (Tagging)
- codecommit:UpdateApprovalRuleTemplateContent (Write)
- codecommit:UpdateApprovalRuleTemplateDescription (Write)
- codecommit:UpdateApprovalRuleTemplateName (Write)
- codecommit:UpdateComment (Write)
- codecommit:UpdateDefaultBranch (Write)
- codecommit:UpdatePullRequestApprovalRuleContent (Write)
- codecommit:UpdatePullRequestApprovalState (Write)
- codecommit:UpdatePullRequestDescription (Write)
- codecommit:UpdatePullRequestStatus (Write)
- codecommit:UpdatePullRequestTitle (Write)
- codecommit:UpdateRepositoryDescription (Write)
- codecommit:UpdateRepositoryEncryptionKey (Write)
- codecommit:UpdateRepositoryName (Write)
CodeGuru Reviewer: 6 actions
- codeguru-reviewer:AssociateRepository (Write)
- codeguru-reviewer:DescribeCodeReview (Read)
- codeguru-reviewer:DescribeRepositoryAssociation (Read)
- codeguru-reviewer:DisassociateRepository (Write)
- codeguru-reviewer:ListCodeReviews (List)
- codeguru-reviewer:ListRepositoryAssociations (List)
CodeStar Connections: 2 actions
- codestar-connections:GetConnection (Read)
- codestar-connections:ListConnections (List)
CodeStar Notifications: 9 actions
- codestar-notifications:CreateNotificationRule (Write)
- codestar-notifications:DescribeNotificationRule (Read)
- codestar-notifications:ListEventTypes (List)
- codestar-notifications:ListNotificationRules (List)
- codestar-notifications:ListTagsForResource (List)
- codestar-notifications:ListTargets (List)
- codestar-notifications:Subscribe (Write)
- codestar-notifications:Unsubscribe (Write)
- codestar-notifications:UpdateNotificationRule (Write)
EventBridge: 8 actions
- events:DeleteRule (Write)
- events:DescribeRule (Read)
- events:DisableRule (Write)
- events:EnableRule (Write)
- events:ListTargetsByRule (List)
- events:PutRule (Write)
- events:PutTargets (Write)
- events:RemoveTargets (Write)
IAM: 13 actions
- iam:CreateServiceLinkedRole (Write)
- iam:CreateServiceSpecificCredential (Write)
- iam:DeleteSSHPublicKey (Write)
- iam:DeleteServiceSpecificCredential (Write)
- iam:GetSSHPublicKey (Read)
- iam:ListAccessKeys (List)
- iam:ListSSHPublicKeys (List)
- iam:ListServiceSpecificCredentials (List)
- iam:ListUsers (List)
- iam:ResetServiceSpecificCredential (Write)
- iam:UpdateSSHPublicKey (Write)
- iam:UpdateServiceSpecificCredential (Write)
- iam:UploadSSHPublicKey (Write)
Lambda: 1 actions
- lambda:ListFunctions (List)
SNS: 5 actions
- sns:GetTopicAttributes (Read)
- sns:ListSubscriptionsByTopic (List)
- sns:ListTopics (List)
- sns:Subscribe (Write)
- sns:Unsubscribe (Write)
Data-plane actions (0)
By access level: none.
This policy grants no actions in this plane.
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: codecommit (41 of 46).
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
- AmazonCodeGuruReviewerServiceRolePolicy
- AmazonSageMakerServiceCatalogProductsCodePipelineServiceRolePolicy
- AWSCodeBuildAdminAccess
- AWSCodeBuildDeveloperAccess
- AWSCodeCommitFullAccess
- AWSCodeCommitReadOnly
- AWSCodeDeployDeployerAccess
- AWSCodeDeployFullAccess
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": [
"codecommit:AssociateApprovalRuleTemplateWithRepository",
"codecommit:BatchAssociateApprovalRuleTemplateWithRepositories",
"codecommit:BatchDisassociateApprovalRuleTemplateFromRepositories",
"codecommit:BatchGet*",
"codecommit:BatchDescribe*",
"codecommit:Create*",
"codecommit:DeleteBranch",
"codecommit:DeleteFile",
"codecommit:Describe*",
"codecommit:DisassociateApprovalRuleTemplateFromRepository",
"codecommit:EvaluatePullRequestApprovalRules",
"codecommit:Get*",
"codecommit:List*",
"codecommit:Merge*",
"codecommit:OverridePullRequestApprovalRules",
"codecommit:Put*",
"codecommit:Post*",
"codecommit:TagResource",
"codecommit:Test*",
"codecommit:UntagResource",
"codecommit:Update*",
"codecommit:GitPull",
"codecommit:GitPush"
],
"Resource": "*"
},
{
"Sid": "CloudWatchEventsCodeCommitRulesAccess",
"Effect": "Allow",
"Action": [
"events:DeleteRule",
"events:DescribeRule",
"events:DisableRule",
"events:EnableRule",
"events:PutRule",
"events:PutTargets",
"events:RemoveTargets",
"events:ListTargetsByRule"
],
"Resource": "arn:aws:events:*:*:rule/codecommit*"
},
{
"Sid": "SNSTopicAndSubscriptionAccess",
"Effect": "Allow",
"Action": [
"sns:Subscribe",
"sns:Unsubscribe"
],
"Resource": "arn:aws:sns:*:*:codecommit*"
},
{
"Sid": "SNSTopicAndSubscriptionReadAccess",
"Effect": "Allow",
"Action": [
"sns:ListTopics",
"sns:ListSubscriptionsByTopic",
"sns:GetTopicAttributes"
],
"Resource": "*"
},
{
"Sid": "LambdaReadOnlyListAccess",
"Effect": "Allow",
"Action": [
"lambda:ListFunctions"
],
"Resource": "*"
},
{
"Sid": "IAMReadOnlyListAccess",
"Effect": "Allow",
"Action": [
"iam:ListUsers"
],
"Resource": "*"
},
{
"Sid": "IAMReadOnlyConsoleAccess",
"Effect": "Allow",
"Action": [
"iam:ListAccessKeys",
"iam:ListSSHPublicKeys",
"iam:ListServiceSpecificCredentials"
],
"Resource": "arn:aws:iam::*:user/${aws:username}"
},
{
"Sid": "IAMUserSSHKeys",
"Effect": "Allow",
"Action": [
"iam:DeleteSSHPublicKey",
"iam:GetSSHPublicKey",
"iam:ListSSHPublicKeys",
"iam:UpdateSSHPublicKey",
"iam:UploadSSHPublicKey"
],
"Resource": "arn:aws:iam::*:user/${aws:username}"
},
{
"Sid": "IAMSelfManageServiceSpecificCredentials",
"Effect": "Allow",
"Action": [
"iam:CreateServiceSpecificCredential",
"iam:UpdateServiceSpecificCredential",
"iam:DeleteServiceSpecificCredential",
"iam:ResetServiceSpecificCredential"
],
"Resource": "arn:aws:iam::*:user/${aws:username}"
},
{
"Sid": "CodeStarNotificationsReadWriteAccess",
"Effect": "Allow",
"Action": [
"codestar-notifications:CreateNotificationRule",
"codestar-notifications:DescribeNotificationRule",
"codestar-notifications:UpdateNotificationRule",
"codestar-notifications:Subscribe",
"codestar-notifications:Unsubscribe"
],
"Resource": "*",
"Condition": {
"ArnLike": {
"codestar-notifications:NotificationsForResource": "arn:aws:codecommit:*:*:*"
}
}
},
{
"Sid": "CodeStarNotificationsListAccess",
"Effect": "Allow",
"Action": [
"codestar-notifications:ListNotificationRules",
"codestar-notifications:ListTargets",
"codestar-notifications:ListTagsforResource",
"codestar-notifications:ListEventTypes"
],
"Resource": "*"
},
{
"Sid": "AmazonCodeGuruReviewerFullAccess",
"Effect": "Allow",
"Action": [
"codeguru-reviewer:AssociateRepository",
"codeguru-reviewer:DescribeRepositoryAssociation",
"codeguru-reviewer:ListRepositoryAssociations",
"codeguru-reviewer:DisassociateRepository",
"codeguru-reviewer:DescribeCodeReview",
"codeguru-reviewer:ListCodeReviews"
],
"Resource": "*"
},
{
"Sid": "AmazonCodeGuruReviewerSLRCreation",
"Action": "iam:CreateServiceLinkedRole",
"Effect": "Allow",
"Resource": "arn:aws:iam::*:role/aws-service-role/codeguru-reviewer.amazonaws.com/AWSServiceRoleForAmazonCodeGuruReviewer",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "codeguru-reviewer.amazonaws.com"
}
}
},
{
"Sid": "CloudWatchEventsManagedRules",
"Effect": "Allow",
"Action": [
"events:PutRule",
"events:PutTargets",
"events:DeleteRule",
"events:RemoveTargets"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"events:ManagedBy": "codeguru-reviewer.amazonaws.com"
}
}
},
{
"Sid": "CodeStarNotificationsChatbotAccess",
"Effect": "Allow",
"Action": [
"chatbot:DescribeSlackChannelConfigurations",
"chatbot:ListMicrosoftTeamsChannelConfigurations"
],
"Resource": "*"
},
{
"Sid": "CodeStarConnectionsReadOnlyAccess",
"Effect": "Allow",
"Action": [
"codestar-connections:ListConnections",
"codestar-connections:GetConnection"
],
"Resource": "arn:aws:codestar-connections:*:*:connection/*"
}
]
}
Version history
Current version v18, edited by AWS on 2026-02-12. 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/AWSCodeCommitPowerUser
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/AWSCodeCommitPowerUser
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/AWSCodeCommitPowerUserCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AWSCodeCommitPowerUserTerraform
resource "aws_iam_role_policy_attachment" "awscodecommitpoweruser" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/AWSCodeCommitPowerUser"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("AWSCodeCommitPowerUser"),
);Sources
Pending editorial review. No editorial sources are listed yet.