AWSDeepRacerServiceRolePolicy
Summary
Allows DeepRacer to create required resources and call AWS services on your behalf.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/service-role/AWSDeepRacerServiceRolePolicy- Default version
- v3
- Created
- Last edited
- Services
- cloudformation, cloudwatch, iam, kinesisvideo, lambda, logs, robomaker, s3, sagemaker
Control-plane actions (531)
By access level: 114 List, 1 Permissions management, 121 Read, 5 Tagging, 290 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| CloudFormation | 10 of 104 | 2 List, 6 Read, 2 Write; 0 restricted, 0 conditional | cloudformation:CreateStack, cloudformation:DeleteStack, cloudformation:DescribeStackDriftDetectionStatus, cloudformation:DescribeStackEvents, cloudformation:DescribeStackResource, cloudformation:DescribeStackResourceDrifts, cloudformation:DescribeStackResources, cloudformation:DescribeStacks, cloudformation:DetectStackDrift, cloudformation:ListStackResources |
| IAM | 2 of 190 | 2 Write; 2 restricted, 1 conditional | iam:CreateServiceLinkedRole, iam:PassRole |
| Kinesis Video Streams | 6 of 37 | 1 List, 1 Read, 1 Tagging, 3 Write; 6 restricted, 0 conditional | kinesisvideo:CreateStream, kinesisvideo:DeleteStream, kinesisvideo:DescribeStream, kinesisvideo:GetDataEndpoint, kinesisvideo:PutMedia, kinesisvideo:TagStream |
| Lambda | 4 of 121 | 1 Read, 3 Write; 4 restricted, 0 conditional | lambda:CreateFunction, lambda:DeleteFunction, lambda:GetFunction, lambda:UpdateFunctionCode |
| CloudWatch Logs | 5 of 133 | 1 List, 1 Read, 3 Write; 0 restricted, 0 conditional | logs:CreateLogGroup, logs:CreateLogStream, logs:DescribeLogStreams, logs:GetLogEvents, logs:PutLogEvents |
| RoboMaker | All 59 actions (see the RoboMaker page) | 13 List, 13 Read, 2 Tagging, 31 Write; 0 restricted, 0 conditional | robomaker:* |
| S3 | 4 of 155 | 1 List, 1 Permissions management, 2 Read; 3 restricted, 0 conditional | s3:GetBucketAcl, s3:GetBucketLocation, s3:ListAllMyBuckets, s3:PutBucketPolicy |
| SageMaker | All 441 actions (see the SageMaker page) | 96 List, 97 Read, 2 Tagging, 246 Write; 0 restricted, 0 conditional | sagemaker:* |
CloudFormation: 10 actions
- cloudformation:CreateStack (Write)
- cloudformation:DeleteStack (Write)
- cloudformation:DescribeStackDriftDetectionStatus (Read)
- cloudformation:DescribeStackEvents (Read)
- cloudformation:DescribeStackResource (Read)
- cloudformation:DescribeStackResourceDrifts (Read)
- cloudformation:DescribeStackResources (Read)
- cloudformation:DescribeStacks (List)
- cloudformation:DetectStackDrift (Read)
- cloudformation:ListStackResources (List)
IAM: 2 actions
- iam:CreateServiceLinkedRole (Write)
- iam:PassRole (Write)
Kinesis Video Streams: 6 actions
- kinesisvideo:CreateStream (Write)
- kinesisvideo:DeleteStream (Write)
- kinesisvideo:DescribeStream (List)
- kinesisvideo:GetDataEndpoint (Read)
- kinesisvideo:PutMedia (Write)
- kinesisvideo:TagStream (Tagging)
Lambda: 4 actions
- lambda:CreateFunction (Write)
- lambda:DeleteFunction (Write)
- lambda:GetFunction (Read)
- lambda:UpdateFunctionCode (Write)
CloudWatch Logs: 5 actions
- logs:CreateLogGroup (Write)
- logs:CreateLogStream (Write)
- logs:DescribeLogStreams (List)
- logs:GetLogEvents (Read)
- logs:PutLogEvents (Write)
S3: 4 actions
- s3:GetBucketAcl (Read)
- s3:GetBucketLocation (Read)
- s3:ListAllMyBuckets (List)
- s3:PutBucketPolicy (Permissions management)
Data-plane actions (27)
By access level: 2 List, 11 Read, 14 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| CloudWatch | 1 of 5 | 1 Read; 0 restricted, 0 conditional | cloudwatch:GetMetricData |
| Kinesis Video Streams | 2 of 9 | 2 Read; 2 restricted, 0 conditional | kinesisvideo:GetHLSStreamingSessionURL, kinesisvideo:GetMedia |
| Lambda | 1 of 14 | 1 Write; 1 restricted, 0 conditional | lambda:InvokeFunction |
| S3 | 4 of 25 | 1 List, 1 Read, 2 Write; 4 restricted, 0 conditional | s3:DeleteObject, s3:GetObject, s3:ListBucket, s3:PutObject |
| SageMaker | All 19 actions (see the SageMaker page) | 1 List, 7 Read, 11 Write; 0 restricted, 0 conditional | sagemaker:* |
CloudWatch: 1 actions
- cloudwatch:GetMetricData (Read)
Kinesis Video Streams: 2 actions
- kinesisvideo:GetHLSStreamingSessionURL (Read)
- kinesisvideo:GetMedia (Read)
Lambda: 1 actions
- lambda:InvokeFunction (Write)
S3: 4 actions
- s3:DeleteObject (Write)
- s3:GetObject (Read)
- s3:ListBucket (List)
- s3:PutObject (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 at least 80% of the write and permissions-management actions of: robomaker (31 of 31), sagemaker (257 of 257).
- Grants data-plane write actions on a data store, but only for scoped resources or under conditions.
- 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
- AmazonAugmentedAIFullAccess
- AmazonAugmentedAIHumanLoopFullAccess
- AmazonAugmentedAIIntegratedAPIAccess
- AmazonBedrockMarketplaceAccess
- AmazonBraketFullAccess
- AmazonDataZoneSageMakerEnvironmentRolePermissionsBoundary
- AmazonDataZoneSageMakerManageAccessRolePolicy
- 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": [
"deepracer:*"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"robomaker:*",
"sagemaker:*",
"s3:ListAllMyBuckets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloudformation:ListStackResources",
"cloudformation:DescribeStacks",
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"cloudformation:DescribeStackResource",
"cloudformation:DescribeStackResources",
"cloudformation:DescribeStackEvents",
"cloudformation:DetectStackDrift",
"cloudformation:DescribeStackDriftDetectionStatus",
"cloudformation:DescribeStackResourceDrifts"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Condition": {
"StringEquals": {
"iam:AWSServiceName": "robomaker.amazonaws.com"
}
},
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::*:role/AWSDeepRacer*",
"arn:aws:iam::*:role/service-role/AWSDeepRacer*"
]
},
{
"Effect": "Allow",
"Action": [
"cloudwatch:GetMetricData",
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:DescribeLogStreams",
"logs:GetLogEvents",
"logs:PutLogEvents"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"lambda:CreateFunction",
"lambda:DeleteFunction",
"lambda:GetFunction",
"lambda:InvokeFunction",
"lambda:UpdateFunctionCode"
],
"Resource": [
"arn:aws:lambda:*:*:function:*DeepRacer*",
"arn:aws:lambda:*:*:function:*Deepracer*",
"arn:aws:lambda:*:*:function:*deepracer*",
"arn:aws:lambda:*:*:function:*dr-*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:GetBucketLocation",
"s3:DeleteObject",
"s3:ListBucket",
"s3:PutObject",
"s3:PutBucketPolicy",
"s3:GetBucketAcl"
],
"Resource": [
"arn:aws:s3:::*DeepRacer*",
"arn:aws:s3:::*Deepracer*",
"arn:aws:s3:::*deepracer*",
"arn:aws:s3:::dr-*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": "*",
"Condition": {
"StringEqualsIgnoreCase": {
"s3:ExistingObjectTag/DeepRacer": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"kinesisvideo:CreateStream",
"kinesisvideo:DeleteStream",
"kinesisvideo:DescribeStream",
"kinesisvideo:GetDataEndpoint",
"kinesisvideo:GetHLSStreamingSessionURL",
"kinesisvideo:GetMedia",
"kinesisvideo:PutMedia",
"kinesisvideo:TagStream"
],
"Resource": [
"arn:aws:kinesisvideo:*:*:stream/dr-*"
]
}
]
}
Version history
Current version v3, edited by AWS on 2019-06-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/service-role/AWSDeepRacerServiceRolePolicy
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/service-role/AWSDeepRacerServiceRolePolicy
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/service-role/AWSDeepRacerServiceRolePolicyCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/service-role/AWSDeepRacerServiceRolePolicyTerraform
resource "aws_iam_role_policy_attachment" "service_role_awsdeepracerservicerolepolicy" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/service-role/AWSDeepRacerServiceRolePolicy"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("service-role/AWSDeepRacerServiceRolePolicy"),
);Sources
Pending editorial review. No editorial sources are listed yet.