🔐 IAM Permissions
The GuardDuty-SOAR application requires specific IAM permissions to interact with AWS services. Permissions differ for production execution versus development testing.
Production Execution Role Permissions
This set of permissions should be attached to the IAM Role used by your AWS Lambda function.
Amazon EC2
ec2:CreateNetworkAclEntryec2:CreateSecurityGroupec2:CreateSnapshotec2:CreateTagsec2:DescribeInstancesec2:DescribeNetworkAclsec2:DescribeSecurityGroupsec2:ModifyInstanceAttributeec2:RevokeSecurityGroupEgressec2:RevokeSecurityGroupIngressec2:TerminateInstances
AWS IAM
iam:AttachRolePolicyiam:AttachUserPolicyiam:GetInstanceProfileiam:GetRoleiam:GetUseriam:ListAttachedRolePoliciesiam:ListAttachedUserPoliciesiam:ListRolePoliciesiam:ListUserPoliciesiam:TagRoleiam:TagUser
Amazon S3
s3:GetBucketTaggings3:GetEncryptionConfigurations3:GetBucketPublicAccessBlocks3:GetBucketPolicys3:PutBucketTaggings3:PutBucketPublicAccessBlocks3:GetBucketEncryptions3:GetBucketVersionings3:GetBucketLogging
AWS CloudTrail
cloudtrail:LookupEvents
Amazon SNS & SES
sns:Publishses:SendEmail
E2E Testing & Deployment Permissions
These broad permissions are required by a developer or CI/CD pipeline to run the test suite, which creates and destroys temporary infrastructure. These are not required for the production Lambda role.
Amazon EC2
- All production permissions, plus:
ec2:AssociateIamInstanceProfileec2:AuthorizeSecurityGroupIngressec2:CreateSubnetec2:CreateVpcec2:DeleteSecurityGroupec2:DeleteSubnetec2:DeleteSnapshotec2:DeleteVpcec2:RunInstances
AWS IAM
- All production permissions, plus:
iam:AddRoleToInstanceProfileiam:CreateAccessKeyiam:CreateInstanceProfileiam:CreatePolicyiam:CreateRoleiam:CreateUseriam:DeleteAccessKeyiam:DeleteInstanceProfileiam:DeletePolicyiam:DeleteRoleiam:DeleteUseriam:DeleteUserPolicyiam:DetachRolePolicyiam:DetachUserPolicyiam:PutUserPolicyiam:RemoveRoleFromInstanceProfile
Amazon S3
- All production permissions, plus:
s3:CreateBuckets3:DeleteBucket
Amazon SQS & SNS
sqs:*andsns:*(for creating temporary notification channels)
AWS SSM
ssm:GetParameter