AmazonMSKFullAccess
Summary
Provide full access to Amazon MSK and other required permissions for its dependencies.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/AmazonMSKFullAccess- Default version
- v7
- Created
- Last edited
- Services
- ec2, firehose, iam, kafka, kms, logs, s3
Control-plane actions (87)
By access level: 24 List, 2 Permissions management, 17 Read, 4 Tagging, 40 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| EC2 | 9 of 834 | 6 List, 1 Tagging, 2 Write; 3 restricted, 2 conditional | ec2:CreateTags, ec2:CreateVpcEndpoint, ec2:DeleteVpcEndpoints, ec2:DescribeRouteTables, ec2:DescribeSecurityGroups, ec2:DescribeSubnets, ec2:DescribeVpcAttribute, ec2:DescribeVpcEndpoints, ec2:DescribeVpcs |
| Firehose | 1 of 10 | 1 Tagging; 0 restricted, 0 conditional | firehose:TagDeliveryStream |
| IAM | 2 of 190 | 2 Write; 2 restricted, 2 conditional | iam:CreateServiceLinkedRole, iam:PassRole |
| MSK | All 64 actions (see the MSK page) | 15 List, 14 Read, 2 Tagging, 33 Write; 0 restricted, 0 conditional | kafka:* |
| KMS | 2 of 58 | 1 Permissions management, 1 Read; 0 restricted, 0 conditional | kms:CreateGrant, kms:DescribeKey |
| CloudWatch Logs | 8 of 133 | 3 List, 1 Permissions management, 1 Read, 3 Write; 0 restricted, 0 conditional | logs:CreateLogDelivery, logs:DeleteLogDelivery, logs:DescribeLogGroups, logs:DescribeResourcePolicies, logs:GetLogDelivery, logs:ListLogDeliveries, logs:PutResourcePolicy, logs:UpdateLogDelivery |
| S3 | 1 of 155 | 1 Read; 0 restricted, 0 conditional | S3:GetBucketPolicy |
EC2: 9 actions
- ec2:CreateTags (Tagging)
- ec2:CreateVpcEndpoint (Write)
- ec2:DeleteVpcEndpoints (Write)
- ec2:DescribeRouteTables (List)
- ec2:DescribeSecurityGroups (List)
- ec2:DescribeSubnets (List)
- ec2:DescribeVpcAttribute (List)
- ec2:DescribeVpcEndpoints (List)
- ec2:DescribeVpcs (List)
Firehose: 1 actions
- firehose:TagDeliveryStream (Tagging)
IAM: 2 actions
- iam:CreateServiceLinkedRole (Write)
- iam:PassRole (Write)
KMS: 2 actions
- kms:CreateGrant (Permissions management)
- kms:DescribeKey (Read)
CloudWatch Logs: 8 actions
- logs:CreateLogDelivery (Write)
- logs:DeleteLogDelivery (Write)
- logs:DescribeLogGroups (List)
- logs:DescribeResourcePolicies (List)
- logs:GetLogDelivery (Read)
- logs:ListLogDeliveries (List)
- logs:PutResourcePolicy (Permissions management)
- logs:UpdateLogDelivery (Write)
S3: 1 actions
- s3:GetBucketPolicy (Read)
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: kafka (33 of 33).
- Grants iam:PassRole, but only for scoped roles or under conditions (for example iam:PassedToService).
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
- AIDevOpsReleaseManagementVPCPolicy
- AmazonAppStreamServiceAccess
- AmazonBioDiscoveryServiceLinkedRolePolicy
- AmazonDataZoneEnvironmentRolePermissionsBoundary
- AmazonDataZoneProjectDeploymentPermissionsBoundary
- AmazonDataZoneProjectRolePermissionsBoundary
- AmazonDataZoneSageMakerProvisioningRolePolicy
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": [
"kafka:*",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeSecurityGroups",
"ec2:DescribeRouteTables",
"ec2:DescribeVpcEndpoints",
"ec2:DescribeVpcAttribute",
"kms:DescribeKey",
"kms:CreateGrant",
"logs:CreateLogDelivery",
"logs:GetLogDelivery",
"logs:UpdateLogDelivery",
"logs:DeleteLogDelivery",
"logs:ListLogDeliveries",
"logs:PutResourcePolicy",
"logs:DescribeResourcePolicies",
"logs:DescribeLogGroups",
"S3:GetBucketPolicy",
"firehose:TagDeliveryStream"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateVpcEndpoint"
],
"Resource": [
"arn:*:ec2:*:*:vpc/*",
"arn:*:ec2:*:*:subnet/*",
"arn:*:ec2:*:*:security-group/*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateVpcEndpoint"
],
"Resource": [
"arn:*:ec2:*:*:vpc-endpoint/*"
],
"Condition": {
"StringEquals": {
"aws:RequestTag/AWSMSKManaged": "true"
},
"StringLike": {
"aws:RequestTag/ClusterArn": "*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": "arn:*:ec2:*:*:vpc-endpoint/*",
"Condition": {
"StringEquals": {
"ec2:CreateAction": "CreateVpcEndpoint"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:DeleteVpcEndpoints"
],
"Resource": "arn:*:ec2:*:*:vpc-endpoint/*",
"Condition": {
"StringEquals": {
"ec2:ResourceTag/AWSMSKManaged": "true"
},
"StringLike": {
"ec2:ResourceTag/ClusterArn": "*"
}
}
},
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "*",
"Condition": {
"StringEquals": {
"iam:PassedToService": "kafka.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/kafka.amazonaws.com/AWSServiceRoleForKafka*",
"Condition": {
"StringEquals": {
"iam:AWSServiceName": "kafka.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/delivery.logs.amazonaws.com/AWSServiceRoleForLogDelivery*",
"Condition": {
"StringEquals": {
"iam:AWSServiceName": "delivery.logs.amazonaws.com"
}
}
}
]
}
Version history
Current version v7, edited by AWS on 2023-10-18. 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/AmazonMSKFullAccess
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/AmazonMSKFullAccess
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/AmazonMSKFullAccessCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AmazonMSKFullAccessTerraform
resource "aws_iam_role_policy_attachment" "amazonmskfullaccess" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/AmazonMSKFullAccess"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonMSKFullAccess"),
);Sources
Pending editorial review. No editorial sources are listed yet.