AWS managed policies for Amazon GuardDuty - Amazon GuardDuty

AWS managed policies for Amazon GuardDuty

To add permissions to users, groups, and roles, it is easier to use AWS managed policies than to write policies yourself. It takes time and expertise to create IAM customer managed policies that provide your team with only the permissions they need. To get started quickly, you can use our AWS managed policies. These policies cover common use cases and are available in your AWS account. For more information about AWS managed policies, see AWS managed policies in the IAM User Guide.

AWS services maintain and update AWS managed policies. You can't change the permissions in AWS managed policies. Services occasionally add additional permissions to an AWS managed policy to support new features. This type of update affects all identities (users, groups, and roles) where the policy is attached. Services are most likely to update an AWS managed policy when a new feature is launched or when new operations become available. Services do not remove permissions from an AWS managed policy, so policy updates won't break your existing permissions.

Additionally, AWS supports managed policies for job functions that span multiple services. For example, the ReadOnlyAccess AWS managed policy provides read-only access to all AWS services and resources. When a service launches a new feature, AWS adds read-only permissions for new operations and resources. For a list and descriptions of job function policies, see AWS managed policies for job functions in the IAM User Guide.

The Version policy element specifies the language syntax rules that are to be used to process a policy. The following policies include the current version that IAM supports. For more information, see IAM JSON policy elements: Version.

AWS managed policy: AmazonGuardDutyFullAccess

You can attach the AmazonGuardDutyFullAccess policy to your IAM identities.

This policy grants administrative permissions that allow a user full access to all GuardDuty actions.

Permissions details

This policy includes the following permissions.

  • GuardDuty – Allows users full access to all GuardDuty actions.

  • IAM:

    • Allows users to create the GuardDuty service-linked role.

    • Allows an administrator account to enable GuardDuty for member accounts.

    • Allows users to pass a role to GuardDuty that uses this role to enable the GuardDuty Malware Protection for S3 feature. This is regardless of how you enable Malware Protection for S3 - within the GuardDuty service or independently.

  • Organizations – Allows users to designate a delegated administrator and manage members for a GuardDuty organization.

The permission to perform an iam:GetRole action on AWSServiceRoleForAmazonGuardDutyMalwareProtection establishes if the service-linked role (SLR) for Malware Protection for EC2 exists in an account.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "AmazonGuardDutyFullAccessSid1", "Effect": "Allow", "Action": "guardduty:*", "Resource": "*" }, { "Sid": "CreateServiceLinkedRoleSid1", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": [ "guardduty.amazonaws.com", "malware-protection.guardduty.amazonaws.com" ] } } }, { "Sid": "ActionsForOrganizationsSid1", "Effect": "Allow", "Action": [ "organizations:EnableAWSServiceAccess", "organizations:RegisterDelegatedAdministrator", "organizations:ListDelegatedAdministrators", "organizations:ListAWSServiceAccessForOrganization", "organizations:DescribeOrganizationalUnit", "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:ListAccounts" ], "Resource": "*" }, { "Sid": "IamGetRoleSid1", "Effect": "Allow", "Action": "iam:GetRole", "Resource": "arn:aws:iam::*:role/*AWSServiceRoleForAmazonGuardDutyMalwareProtection" }, { "Sid": "AllowPassRoleToMalwareProtectionPlan", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringEquals": { "iam:PassedToService": "malware-protection-plan.guardduty.amazonaws.com" } } } ] }

AWS managed policy: AmazonGuardDutyReadOnlyAccess

You can attach the AmazonGuardDutyReadOnlyAccess policy to your IAM identities.

This policy grants read-only permissions that allow a user to view GuardDuty findings and details of your GuardDuty organization.

Permissions details

This policy includes the following permissions.

  • GuardDuty – Allows users to view GuardDuty findings and perform API operations that start with Get, List, or Describe.

  • Organizations – Allows users to retrieve information about your GuardDuty organization configuration, including details of the delegated administrator account.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "guardduty:Describe*", "guardduty:Get*", "guardduty:List*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "organizations:ListDelegatedAdministrators", "organizations:ListAWSServiceAccessForOrganization", "organizations:DescribeOrganizationalUnit", "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:ListAccounts" ], "Resource": "*" } ] }

AWS managed policy: AmazonGuardDutyServiceRolePolicy

You can't attach AmazonGuardDutyServiceRolePolicy to your IAM entities. This AWS managed policy is attached to a service-linked role that allows GuardDuty to perform actions on your behalf. For more information, see Service-linked role permissions for GuardDuty.

GuardDuty updates to AWS managed policies

View details about updates to AWS managed policies for GuardDuty since this service began tracking these changes. For automatic alerts about changes to this page, subscribe to the RSS feed on the GuardDuty Document history page.

Change Description Date

AmazonGuardDutyServiceRolePolicy – Update to an existing policy

Added the ec2:DescribeVpcs permission. This allows GuardDuty to track VPC updates, such as retrieving the VPC CIDR.

August 22, 2024

AmazonGuardDutyServiceRolePolicy – Update to an existing policy

Added permission that allows you to pass an IAM role to GuardDuty when you enable Malware Protection for S3.

{ "Sid": "AllowPassRoleToMalwareProtectionPlan", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringEquals": { "iam:PassedToService": "guardduty.amazonaws.com" } } }
June 10, 2024

AmazonGuardDutyServiceRolePolicy – Update to an existing policy.

Use AWS Systems Manager actions to manage SSM associations on Amazon EC2 instances when you enable GuardDuty Runtime Monitoring with automated agent for Amazon EC2. When GuardDuty automated agent configuration is disabled, GuardDuty considers only those EC2 instances that have an inclusion tag (GuardDutyManaged:true).

March 26, 2024

AmazonGuardDutyServiceRolePolicy – Update to an existing policy.

GuardDuty has added a new permission - organization:DescribeOrganization to retrieve the organization ID of the shared Amazon VPC account and set the Amazon VPC endpoint policy with organization ID.

February 9, 2024

AmazonGuardDutyMalwareProtectionServiceRolePolicy – Update to an existing policy.

Malware Protection for EC2 has added two permissions - GetSnapshotBlock and ListSnapshotBlocks to fetch the snapshot of an EBS volume (encrypted using AWS managed key) from your AWS account and copy it to the GuardDuty service account before starting the malware scan.

Jan 25, 2024

AmazonGuardDutyServiceRolePolicy – Update to an existing policy

Added new permissions to allow GuardDuty to add guarddutyActivate Amazon ECS account setting, and perform list and describe operations on Amazon ECS clusters.

Nov 26, 2023

AmazonGuardDutyReadOnlyAccess – Update to an existing policy

GuardDuty added a new policy for organizations to ListAccounts.

November 16, 2023

AmazonGuardDutyFullAccess – Update to an existing policy

GuardDuty added a new policy for organizations to ListAccounts.

November 16, 2023

AmazonGuardDutyServiceRolePolicy – Update to an existing policy

GuardDuty added new permissions to support the upcoming GuardDuty EKS Runtime Monitoring feature.

March 8, 2023

AmazonGuardDutyServiceRolePolicy – Update to an existing policy

GuardDuty has added new permissions to allow GuardDuty to create Service-linked role for Malware Protection for EC2. This will help GuardDuty streamline the process of enabling Malware Protection for EC2.

GuardDuty can now perform the following IAM action:

{ "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "malware-protection.guardduty.amazonaws.com" } } }
Feb 21, 2023

AmazonGuardDutyFullAccess – Update to an existing policy

GuardDuty updated ARN for iam:GetRole to *AWSServiceRoleForAmazonGuardDutyMalwareProtection.

Jul 26, 2022

AmazonGuardDutyFullAccess – Update to an existing policy

GuardDuty added a new AWSServiceName to allow the creation of service-linked role using iam:CreateServiceLinkedRole for GuardDuty Malware Protection for EC2 service.

GuardDuty can now perform the iam:GetRole action to gain information for AWSServiceRole.

Jul 26, 2022

AmazonGuardDutyServiceRolePolicy – Update to an existing policy

GuardDuty added new permissions to allow GuardDuty to use Amazon EC2 networking actions to improve findings.

GuardDuty can now perform the following EC2 actions to gain information about how your EC2 instances are communicating. This information is used to improve finding accuracy.

  • ec2:DescribeVpcEndpoints

  • ec2:DescribeSubnets

  • ec2:DescribeVpcPeeringConnections

  • ec2:DescribeTransitGatewayAttachments

Aug 3, 2021

GuardDuty started tracking changes

GuardDuty started tracking changes for its AWS managed policies.

Aug 3, 2021