Skip to main content
IAM Policy Map

AmazonGuardDutyServiceRolePolicy

OperatorService-linked roleActivePermissions reviewedShow on mapCompare

Summary

Enable access to AWS Resources used or managed by Amazon Guard Duty

Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.

Identity

ARN
arn:aws:iam::aws:policy/aws-service-role/AmazonGuardDutyServiceRolePolicy
Default version
v13
Created
Last edited
Services
cloudtrail, ec2, ecs, eks, iam, lambda, organizations, s3, ssm, vpc-lattice

Control-plane actions (56)

By access level: 13 List, 1 Permissions management, 18 Read, 3 Tagging, 21 Write.

Control-plane actions by service
ServiceGrantedAccess levels and limitsGranted by
CloudTrail1 of 661 Write; 1 restricted, 1 conditionalcloudtrail:CreateServiceLinkedChannel
EC219 of 8349 List, 1 Tagging, 9 Write; 10 restricted, 7 conditionalec2:AuthorizeSecurityGroupEgress, ec2:AuthorizeSecurityGroupIngress, ec2:CreateSecurityGroup, ec2:CreateTags, ec2:CreateVpcEndpoint, ec2:DeleteSecurityGroup, ec2:DeleteVpcEndpoints, ec2:DescribeImages, ec2:DescribeInstances, ec2:DescribeSecurityGroups, ec2:DescribeSubnets, ec2:DescribeTransitGatewayAttachments and 7 more
Elastic Container Service5 of 921 List, 3 Read, 1 Write; 1 restricted, 1 conditionalecs:DescribeClusters, ecs:DescribeTaskDefinition, ecs:DescribeTasks, ecs:ListClusters, ecs:PutAccountSettingDefault
EKS7 of 741 List, 2 Read, 1 Tagging, 3 Write; 5 restricted, 2 conditionaleks:CreateAddon, eks:DeleteAddon, eks:DescribeAddon, eks:DescribeCluster, eks:ListClusters, eks:TagResource, eks:UpdateAddon
IAM1 of 1901 Write; 1 restricted, 1 conditionaliam:CreateServiceLinkedRole
Lambda2 of 1212 Read; 0 restricted, 0 conditionallambda:GetFunctionConfiguration, lambda:ListTags
Organizations3 of 631 List, 2 Read; 0 restricted, 0 conditionalorganizations:DescribeAccount, organizations:DescribeOrganization, organizations:ListAccounts
S38 of 1551 List, 7 Read; 0 restricted, 0 conditionals3:GetAccountPublicAccessBlock, s3:GetBucketAcl, s3:GetBucketPolicy, s3:GetBucketPolicyStatus, s3:GetBucketPublicAccessBlock, s3:GetBucketTagging, s3:GetEncryptionConfiguration, s3:ListAllMyBuckets
Systems Manager8 of 1642 Read, 1 Tagging, 5 Write; 7 restricted, 4 conditionalssm:AddTagsToResource, ssm:CreateAssociation, ssm:DeleteAssociation, ssm:DescribeAssociation, ssm:GetCommandInvocation, ssm:SendCommand, ssm:StartAssociationsOnce, ssm:UpdateAssociation
VPC Lattice2 of 751 Permissions management, 1 Write; 1 restricted, 1 conditionalvpc-lattice:AssociateViaAWSService, vpc-lattice:CreateServiceNetworkVpcAssociation
CloudTrail: 1 actions
  • cloudtrail:CreateServiceLinkedChannel (Write)
EC2: 19 actions
  • ec2:AuthorizeSecurityGroupEgress (Write)
  • ec2:AuthorizeSecurityGroupIngress (Write)
  • ec2:CreateSecurityGroup (Write)
  • ec2:CreateTags (Tagging)
  • ec2:CreateVpcEndpoint (Write)
  • ec2:DeleteSecurityGroup (Write)
  • ec2:DeleteVpcEndpoints (Write)
  • ec2:DescribeImages (List)
  • ec2:DescribeInstances (List)
  • ec2:DescribeSecurityGroups (List)
  • ec2:DescribeSubnets (List)
  • ec2:DescribeTransitGatewayAttachments (List)
  • ec2:DescribeVpcEndpointServices (List)
  • ec2:DescribeVpcEndpoints (List)
  • ec2:DescribeVpcPeeringConnections (List)
  • ec2:DescribeVpcs (List)
  • ec2:ModifyVpcEndpoint (Write)
  • ec2:RevokeSecurityGroupEgress (Write)
  • ec2:RevokeSecurityGroupIngress (Write)
Elastic Container Service: 5 actions
  • ecs:DescribeClusters (Read)
  • ecs:DescribeTaskDefinition (Read)
  • ecs:DescribeTasks (Read)
  • ecs:ListClusters (List)
  • ecs:PutAccountSettingDefault (Write)
EKS: 7 actions
  • eks:CreateAddon (Write)
  • eks:DeleteAddon (Write)
  • eks:DescribeAddon (Read)
  • eks:DescribeCluster (Read)
  • eks:ListClusters (List)
  • eks:TagResource (Tagging)
  • eks:UpdateAddon (Write)
IAM: 1 actions
  • iam:CreateServiceLinkedRole (Write)
Lambda: 2 actions
  • lambda:GetFunctionConfiguration (Read)
  • lambda:ListTags (Read)
Organizations: 3 actions
  • organizations:DescribeAccount (Read)
  • organizations:DescribeOrganization (Read)
  • organizations:ListAccounts (List)
S3: 8 actions
  • s3:GetAccountPublicAccessBlock (Read)
  • s3:GetBucketAcl (Read)
  • s3:GetBucketPolicy (Read)
  • s3:GetBucketPolicyStatus (Read)
  • s3:GetBucketPublicAccessBlock (Read)
  • s3:GetBucketTagging (Read)
  • s3:GetEncryptionConfiguration (Read)
  • s3:ListAllMyBuckets (List)
Systems Manager: 8 actions
  • ssm:AddTagsToResource (Tagging)
  • ssm:CreateAssociation (Write)
  • ssm:DeleteAssociation (Write)
  • ssm:DescribeAssociation (Read)
  • ssm:GetCommandInvocation (Read)
  • ssm:SendCommand (Write)
  • ssm:StartAssociationsOnce (Write)
  • ssm:UpdateAssociation (Write)
VPC Lattice: 2 actions
  • vpc-lattice:AssociateViaAWSService (Permissions management)
  • vpc-lattice:CreateServiceNetworkVpcAssociation (Write)

Data-plane actions (1)

By access level: 1 List.

Data-plane actions by service
ServiceGrantedAccess levels and limitsGranted by
S31 of 251 List; 0 restricted, 0 conditionals3:ListBucket
S3: 1 actions
  • s3:ListBucket (List)

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: No (service-linked role policy).

Why this tier

  • Grants 25 write, tagging or permissions-management actions, short of full control of any service.

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.

Same service

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

Download policy.json

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "GuardDutyGetDescribeListPolicy",
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeInstances",
        "ec2:DescribeImages",
        "ec2:DescribeVpcEndpoints",
        "ec2:DescribeSubnets",
        "ec2:DescribeVpcPeeringConnections",
        "ec2:DescribeTransitGatewayAttachments",
        "organizations:ListAccounts",
        "organizations:DescribeAccount",
        "organizations:DescribeOrganization",
        "s3:GetBucketPublicAccessBlock",
        "s3:GetEncryptionConfiguration",
        "s3:GetBucketTagging",
        "s3:GetAccountPublicAccessBlock",
        "s3:ListAllMyBuckets",
        "s3:ListBucket",
        "s3:GetBucketAcl",
        "s3:GetBucketPolicy",
        "s3:GetBucketPolicyStatus",
        "lambda:GetFunctionConfiguration",
        "lambda:ListTags",
        "eks:ListClusters",
        "eks:DescribeCluster",
        "ec2:DescribeVpcEndpointServices",
        "ec2:DescribeVpcs",
        "ec2:DescribeSecurityGroups",
        "ecs:ListClusters",
        "ecs:DescribeClusters",
        "ecs:DescribeTasks",
        "ecs:DescribeTaskDefinition"
      ],
      "Resource": "*"
    },
    {
      "Sid": "GuardDutyCreateSLRPolicy",
      "Effect": "Allow",
      "Action": "iam:CreateServiceLinkedRole",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "iam:AWSServiceName": "malware-protection.guardduty.amazonaws.com"
        }
      }
    },
    {
      "Sid": "GuardDutyCreateVpcEndpointPolicy",
      "Effect": "Allow",
      "Action": "ec2:CreateVpcEndpoint",
      "Resource": "arn:aws:ec2:*:*:vpc-endpoint/*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:TagKeys": "GuardDutyManaged"
        },
        "StringLike": {
          "ec2:VpceServiceName": [
            "com.amazonaws.*.guardduty-data",
            "com.amazonaws.*.guardduty-data-fips"
          ]
        }
      }
    },
    {
      "Sid": "GuardDutyModifyDeleteVpcEndpointPolicy",
      "Effect": "Allow",
      "Action": [
        "ec2:ModifyVpcEndpoint",
        "ec2:DeleteVpcEndpoints"
      ],
      "Resource": "arn:aws:ec2:*:*:vpc-endpoint/*",
      "Condition": {
        "Null": {
          "aws:ResourceTag/GuardDutyManaged": false
        }
      }
    },
    {
      "Sid": "GuardDutyCreateModifyVpcEndpointNetworkPolicy",
      "Effect": "Allow",
      "Action": [
        "ec2:CreateVpcEndpoint",
        "ec2:ModifyVpcEndpoint"
      ],
      "Resource": [
        "arn:aws:ec2:*:*:vpc/*",
        "arn:aws:ec2:*:*:security-group/*",
        "arn:aws:ec2:*:*:subnet/*"
      ]
    },
    {
      "Sid": "GuardDutyCreateTagsDuringVpcEndpointCreationPolicy",
      "Effect": "Allow",
      "Action": "ec2:CreateTags",
      "Resource": "arn:aws:ec2:*:*:vpc-endpoint/*",
      "Condition": {
        "StringEquals": {
          "ec2:CreateAction": "CreateVpcEndpoint"
        },
        "ForAnyValue:StringEquals": {
          "aws:TagKeys": "GuardDutyManaged"
        }
      }
    },
    {
      "Sid": "GuardDutySecurityGroupManagementPolicy",
      "Effect": "Allow",
      "Action": [
        "ec2:AuthorizeSecurityGroupIngress",
        "ec2:AuthorizeSecurityGroupEgress",
        "ec2:RevokeSecurityGroupIngress",
        "ec2:RevokeSecurityGroupEgress",
        "ec2:DeleteSecurityGroup"
      ],
      "Resource": "arn:aws:ec2:*:*:security-group/*",
      "Condition": {
        "Null": {
          "aws:ResourceTag/GuardDutyManaged": false
        }
      }
    },
    {
      "Sid": "GuardDutyCreateSecurityGroupPolicy",
      "Effect": "Allow",
      "Action": "ec2:CreateSecurityGroup",
      "Resource": "arn:aws:ec2:*:*:security-group/*",
      "Condition": {
        "StringLike": {
          "aws:RequestTag/GuardDutyManaged": "*"
        }
      }
    },
    {
      "Sid": "GuardDutyCreateSecurityGroupForVpcPolicy",
      "Effect": "Allow",
      "Action": "ec2:CreateSecurityGroup",
      "Resource": "arn:aws:ec2:*:*:vpc/*"
    },
    {
      "Sid": "GuardDutyCreateTagsDuringSecurityGroupCreationPolicy",
      "Effect": "Allow",
      "Action": "ec2:CreateTags",
      "Resource": "arn:aws:ec2:*:*:security-group/*",
      "Condition": {
        "StringEquals": {
          "ec2:CreateAction": "CreateSecurityGroup"
        },
        "ForAnyValue:StringEquals": {
          "aws:TagKeys": "GuardDutyManaged"
        }
      }
    },
    {
      "Sid": "GuardDutyCreateEksAddonPolicy",
      "Effect": "Allow",
      "Action": "eks:CreateAddon",
      "Resource": "arn:aws:eks:*:*:cluster/*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:TagKeys": "GuardDutyManaged"
        }
      }
    },
    {
      "Sid": "GuardDutyEksAddonManagementPolicy",
      "Effect": "Allow",
      "Action": [
        "eks:DeleteAddon",
        "eks:UpdateAddon",
        "eks:DescribeAddon"
      ],
      "Resource": "arn:aws:eks:*:*:addon/*/aws-guardduty-agent/*"
    },
    {
      "Sid": "GuardDutyEksClusterTagResourcePolicy",
      "Effect": "Allow",
      "Action": "eks:TagResource",
      "Resource": "arn:aws:eks:*:*:cluster/*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:TagKeys": "GuardDutyManaged"
        }
      }
    },
    {
      "Sid": "GuardDutyEcsPutAccountSettingsDefaultPolicy",
      "Effect": "Allow",
      "Action": "ecs:PutAccountSettingDefault",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "ecs:account-setting": [
            "guardDutyActivate"
          ]
        }
      }
    },
    {
      "Sid": "SsmCreateDescribeUpdateDeleteStartAssociationPermission",
      "Effect": "Allow",
      "Action": [
        "ssm:DescribeAssociation",
        "ssm:DeleteAssociation",
        "ssm:UpdateAssociation",
        "ssm:CreateAssociation",
        "ssm:StartAssociationsOnce"
      ],
      "Resource": "arn:aws:ssm:*:*:association/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/GuardDutyManaged": "true"
        }
      }
    },
    {
      "Sid": "SsmAddTagsToResourcePermission",
      "Effect": "Allow",
      "Action": [
        "ssm:AddTagsToResource"
      ],
      "Resource": "arn:aws:ssm:*:*:association/*",
      "Condition": {
        "ForAllValues:StringEquals": {
          "aws:TagKeys": [
            "GuardDutyManaged"
          ]
        },
        "StringEquals": {
          "aws:ResourceTag/GuardDutyManaged": "true"
        }
      }
    },
    {
      "Sid": "SsmCreateUpdateAssociationInstanceDocumentPermission",
      "Effect": "Allow",
      "Action": [
        "ssm:CreateAssociation",
        "ssm:UpdateAssociation"
      ],
      "Resource": "arn:aws:ssm:*:*:document/AmazonGuardDuty-ConfigureRuntimeMonitoringSsmPlugin"
    },
    {
      "Sid": "SsmSendCommandPermission",
      "Effect": "Allow",
      "Action": "ssm:SendCommand",
      "Resource": [
        "arn:aws:ec2:*:*:instance/*",
        "arn:aws:ssm:*:*:document/AmazonGuardDuty-ConfigureRuntimeMonitoringSsmPlugin"
      ]
    },
    {
      "Sid": "SsmGetCommandStatus",
      "Effect": "Allow",
      "Action": "ssm:GetCommandInvocation",
      "Resource": "*"
    },
    {
      "Sid": "CloudTrailCreateServiceLinkedChannelSid",
      "Effect": "Allow",
      "Action": [
        "cloudtrail:CreateServiceLinkedChannel"
      ],
      "Resource": "arn:aws:cloudtrail:*:*:channel/aws-service-channel/guardduty/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceAccount": "${aws:PrincipalAccount}"
        }
      }
    },
    {
      "Sid": "GdLatticeCreateManagedSnvaAssociation",
      "Effect": "Allow",
      "Action": "vpc-lattice:CreateServiceNetworkVpcAssociation",
      "Resource": "arn:aws:vpc-lattice:*:*:servicenetworkvpcassociation/*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceAccount": "${aws:PrincipalAccount}"
        }
      }
    },
    {
      "Sid": "GdLatticeAssociateViaAwsService",
      "Effect": "Allow",
      "Action": "vpc-lattice:AssociateViaAWSService",
      "Resource": "*"
    }
  ]
}

Version history

Current version v13, edited by AWS on 2026-09-09. Version history is recorded from 2026-11-11. Earlier versions are in the IAM console under Policy versions.

Attach snippets

This policy cannot be attached to users, groups or roles, so there are no attach snippets.

Sources

Pending editorial review. No editorial sources are listed yet.