Amazon managed policies for Amazon IoT Greengrass - Amazon IoT Greengrass
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Amazon managed policies for Amazon IoT Greengrass

An Amazon managed policy is a standalone policy that is created and administered by Amazon. Amazon managed policies are designed to provide permissions for many common use cases so that you can start assigning permissions to users, groups, and roles.

Keep in mind that Amazon managed policies might not grant least-privilege permissions for your specific use cases because they're available for all Amazon customers to use. We recommend that you reduce permissions further by defining customer managed policies that are specific to your use cases.

You cannot change the permissions defined in Amazon managed policies. If Amazon updates the permissions defined in an Amazon managed policy, the update affects all principal identities (users, groups, and roles) that the policy is attached to. Amazon is most likely to update an Amazon managed policy when a new Amazon Web Service is launched or new API operations become available for existing services.

For more information, see Amazon managed policies in the IAM User Guide.

Amazon managed policy: AWSGreengrassFullAccess

You can attach the AWSGreengrassFullAccess policy to your IAM identities.

This policy grants administrative permissions that allow a principal full access to all Amazon IoT Greengrass actions.

Permissions details

This policy includes the following permissions:

  • greengrass – Allows principals full access to all Amazon IoT Greengrass actions.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "greengrass:*" ], "Resource": "*" } ] }

Amazon managed policy: AWSGreengrassReadOnlyAccess

You can attach the AWSGreengrassReadOnlyAccess policy to your IAM identities.

This policy grants read-only permissions that allow a principal to view, but not modify, information in Amazon IoT Greengrass. For example, principals with these permissions can view the list of components deployed to a Greengrass core device, but can't create a deployment to change the components that run on that device.

Permissions details

This policy includes the following permissions:

  • greengrass – Allows principals to perform actions that return either a list of items or details about an item. This includes API operations that start with List or Get.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "greengrass:List*", "greengrass:Get*" ], "Resource": "*" } ] }

Amazon managed policy: AWSGreengrassResourceAccessRolePolicy

You can attach the AWSGreengrassResourceAccessRolePolicy policy to your IAM entities. Amazon IoT Greengrass also attaches this policy to a service role that allows Amazon IoT Greengrass to perform actions on your behalf. For more information, see Greengrass service role.

This policy grants administrative permissions that allow Amazon IoT Greengrass to perform essential tasks, such as retrieving your Lambda functions, managing Amazon IoT device shadows, and verifying Greengrass client devices.

Permissions details

This policy includes the following permissions.

  • greengrass – Manage Greengrass resources.

  • iot (*Shadow) – Manage Amazon IoT shadows that have the following special identifiers in their names. These permissions are required so that Amazon IoT Greengrass can communicate with core devices.

    • *-gci – Amazon IoT Greengrass uses this shadow to store core device connectivity information, so client devices can discover and connect to core devices.

    • *-gcm – Amazon IoT Greengrass V1 uses this shadow to notify the core device that the Greengrass group's certificate authority (CA) certificate has rotated.

    • *-gda – Amazon IoT Greengrass V1 uses this shadow to notify the core device of a deployment.

    • GG_* – Unused.

  • iot (DescribeThing and DescribeCertificate) – Retrieve information about Amazon IoT things and certificates. These permissions are required so that Amazon IoT Greengrass can verify client devices that connect to a core device. For more information, see Interact with local IoT devices.

  • lambda – Retrieve information about Amazon Lambda functions. This permission is required so that Amazon IoT Greengrass V1 can deploy Lambda functions to Greengrass cores. For more information, see Run Lambda function on the Amazon IoT Greengrass core in the Amazon IoT Greengrass V1 Developer Guide.

  • secretsmanager – Retrieve the value of Amazon Secrets Manager secrets whose names start with greengrass-. This permission is required so that Amazon IoT Greengrass V1 can deploy Secrets Manager secrets to Greengrass cores. For more information, see Deploy secrets to the Amazon IoT Greengrass core in the Amazon IoT Greengrass V1 Developer Guide.

  • s3 – Retrieve files objects from S3 buckets whose names contain greengrass or sagemaker. These permissions are required so that Amazon IoT Greengrass V1 can deploy machine learning resources that you store in S3 buckets. For more information, see Machine learning resources in the Amazon IoT Greengrass V1 Developer Guide.

  • sagemaker – Retrieve information about Amazon SageMaker machine learning inference models. This permission is required so that Amazon IoT Greengrass V1 can deploy ML models to Greengrass cores. For more information, see Perform machine learning inference in the Amazon IoT Greengrass V1 Developer Guide.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGreengrassAccessToShadows", "Action": [ "iot:DeleteThingShadow", "iot:GetThingShadow", "iot:UpdateThingShadow" ], "Effect": "Allow", "Resource": [ "arn:aws:iot:*:*:thing/GG_*", "arn:aws:iot:*:*:thing/*-gcm", "arn:aws:iot:*:*:thing/*-gda", "arn:aws:iot:*:*:thing/*-gci" ] }, { "Sid": "AllowGreengrassToDescribeThings", "Action": [ "iot:DescribeThing" ], "Effect": "Allow", "Resource": "arn:aws:iot:*:*:thing/*" }, { "Sid": "AllowGreengrassToDescribeCertificates", "Action": [ "iot:DescribeCertificate" ], "Effect": "Allow", "Resource": "arn:aws:iot:*:*:cert/*" }, { "Sid": "AllowGreengrassToCallGreengrassServices", "Action": [ "greengrass:*" ], "Effect": "Allow", "Resource": "*" }, { "Sid": "AllowGreengrassToGetLambdaFunctions", "Action": [ "lambda:GetFunction", "lambda:GetFunctionConfiguration" ], "Effect": "Allow", "Resource": "*" }, { "Sid": "AllowGreengrassToGetGreengrassSecrets", "Action": [ "secretsmanager:GetSecretValue" ], "Effect": "Allow", "Resource": "arn:aws:secretsmanager:*:*:secret:greengrass-*" }, { "Sid": "AllowGreengrassAccessToS3Objects", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::*Greengrass*", "arn:aws:s3:::*GreenGrass*", "arn:aws:s3:::*greengrass*", "arn:aws:s3:::*Sagemaker*", "arn:aws:s3:::*SageMaker*", "arn:aws:s3:::*sagemaker*" ] }, { "Sid": "AllowGreengrassAccessToS3BucketLocation", "Action": [ "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": "*" }, { "Sid": "AllowGreengrassAccessToSageMakerTrainingJobs", "Action": [ "sagemaker:DescribeTrainingJob" ], "Effect": "Allow", "Resource": [ "arn:aws:sagemaker:*:*:training-job/*" ] } ] }

Amazon IoT Greengrass updates to Amazon managed policies

You can view details about updates to Amazon managed policies for Amazon IoT Greengrass from the time this service began tracking these changes. For automatic alerts about changes to this page, subscribe to the RSS feed on the Amazon IoT Greengrass V2 document history page.

Change Description Date

Amazon IoT Greengrass started tracking changes

Amazon IoT Greengrass started tracking changes for its Amazon managed policies.

July 2, 2021