AmazonSecurityLakeAdministrator
Summary
Provides full access to Amazon Security Lake and related services needed to administer Security Lake.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/AmazonSecurityLakeAdministrator- Default version
- v2
- Created
- Last edited
- Services
- events, glue, iam, kms, lakeformation, lambda, organizations, ram, s3, secretsmanager, securitylake, sqs
Control-plane actions (170)
By access level: 29 List, 10 Permissions management, 72 Read, 3 Tagging, 56 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| EventBridge | 14 of 71 | 3 List, 1 Read, 10 Write; 14 restricted, 14 conditional | events:CreateApiDestination, events:CreateConnection, events:DeleteApiDestination, events:DeleteConnection, events:DeleteRule, events:DescribeRule, events:ListApiDestinations, events:ListConnections, events:ListTargetsByRule, events:PutRule, events:PutTargets, events:RemoveTargets and 2 more |
| Glue | 6 of 306 | 2 Read, 4 Write; 6 restricted, 6 conditional | glue:CreateCrawler, glue:CreateDatabase, glue:CreateTable, glue:GetDatabase, glue:GetTable, glue:StopCrawlerSchedule |
| IAM | 11 of 190 | 3 List, 2 Permissions management, 2 Read, 4 Write; 10 restricted, 10 conditional | iam:CreateRole, iam:CreateServiceLinkedRole, iam:DeleteRole, iam:DeleteRolePolicy, iam:GetRole, iam:GetRolePolicy, iam:ListAttachedRolePolicies, iam:ListRolePolicies, iam:ListRoles, iam:PassRole, iam:PutRolePolicy |
| KMS | 2 of 58 | 1 Permissions management, 1 Read; 2 restricted, 2 conditional | kms:CreateGrant, kms:DescribeKey |
| Lake Formation | 5 of 68 | 1 List, 2 Permissions management, 1 Read, 1 Write; 5 restricted, 5 conditional | lakeformation:GetDatalakeSettings, lakeformation:GrantPermissions, lakeformation:ListPermissions, lakeformation:RegisterResource, lakeformation:RevokePermissions |
| Lambda | 3 of 121 | 1 Permissions management, 2 Write; 3 restricted, 3 conditional | lambda:AddPermission, lambda:CreateEventSourceMapping, lambda:CreateFunction |
| Organizations | 3 of 63 | 2 List, 1 Read; 0 restricted, 0 conditional | organizations:DescribeOrganization, organizations:ListAccounts, organizations:ListDelegatedServicesForAccount |
| Resource Access Manager | 7 of 39 | 2 Read, 5 Write; 6 restricted, 6 conditional | ram:AssociateResourceShare, ram:CreateResourceShare, ram:DeleteResourceShare, ram:DisassociateResourceShare, ram:GetResourceShareAssociations, ram:GetResourceShares, ram:UpdateResourceShare |
| S3 | 79 of 155 | 15 List, 2 Permissions management, 55 Read, 1 Tagging, 6 Write; 76 restricted, 9 conditional | s3:CreateBucket, s3:Get*, s3:GetAccountPublicAccessBlock, s3:GetBucketNotification, s3:List*, s3:ListAccessPoints, s3:ListAllMyBuckets, s3:PutBucketNotification, s3:PutBucketPolicy, s3:PutBucketPublicAccessBlock, s3:PutBucketTagging, s3:PutBucketVersioning and 3 more |
| Secrets Manager | 3 of 27 | 1 Read, 2 Write; 3 restricted, 3 conditional | secretsmanager:CreateSecret, secretsmanager:GetSecretValue, secretsmanager:PutSecretValue |
| SecurityLake | All 31 actions (see the SecurityLake page) | 5 List, 4 Read, 2 Tagging, 20 Write; 0 restricted, 0 conditional | securitylake:* |
| SQS | 6 of 20 | 2 Permissions management, 2 Read, 2 Write; 6 restricted, 6 conditional | sqs:AddPermission, sqs:CreateQueue, sqs:DeleteQueue, sqs:GetQueueAttributes, sqs:GetQueueURL, sqs:SetQueueAttributes |
EventBridge: 14 actions
- events:CreateApiDestination (Write)
- events:CreateConnection (Write)
- events:DeleteApiDestination (Write)
- events:DeleteConnection (Write)
- events:DeleteRule (Write)
- events:DescribeRule (Read)
- events:ListApiDestinations (List)
- events:ListConnections (List)
- events:ListTargetsByRule (List)
- events:PutRule (Write)
- events:PutTargets (Write)
- events:RemoveTargets (Write)
- events:UpdateApiDestination (Write)
- events:UpdateConnection (Write)
Glue: 6 actions
- glue:CreateCrawler (Write)
- glue:CreateDatabase (Write)
- glue:CreateTable (Write)
- glue:GetDatabase (Read)
- glue:GetTable (Read)
- glue:StopCrawlerSchedule (Write)
IAM: 11 actions
- iam:CreateRole (Write)
- iam:CreateServiceLinkedRole (Write)
- iam:DeleteRole (Write)
- iam:DeleteRolePolicy (Permissions management)
- iam:GetRole (Read)
- iam:GetRolePolicy (Read)
- iam:ListAttachedRolePolicies (List)
- iam:ListRolePolicies (List)
- iam:ListRoles (List)
- iam:PassRole (Write)
- iam:PutRolePolicy (Permissions management)
KMS: 2 actions
- kms:CreateGrant (Permissions management)
- kms:DescribeKey (Read)
Lake Formation: 5 actions
- lakeformation:GetDataLakeSettings (Read)
- lakeformation:GrantPermissions (Permissions management)
- lakeformation:ListPermissions (List)
- lakeformation:RegisterResource (Write)
- lakeformation:RevokePermissions (Permissions management)
Lambda: 3 actions
- lambda:AddPermission (Permissions management)
- lambda:CreateEventSourceMapping (Write)
- lambda:CreateFunction (Write)
Organizations: 3 actions
- organizations:DescribeOrganization (Read)
- organizations:ListAccounts (List)
- organizations:ListDelegatedServicesForAccount (List)
Resource Access Manager: 7 actions
- ram:AssociateResourceShare (Write)
- ram:CreateResourceShare (Write)
- ram:DeleteResourceShare (Write)
- ram:DisassociateResourceShare (Write)
- ram:GetResourceShareAssociations (Read)
- ram:GetResourceShares (Read)
- ram:UpdateResourceShare (Write)
S3: 79 actions
- s3:CreateBucket (Write)
- s3:GetAccelerateConfiguration (Read)
- s3:GetAccessGrant (Read)
- s3:GetAccessGrantsInstance (Read)
- s3:GetAccessGrantsInstanceForPrefix (Read)
- s3:GetAccessGrantsInstanceResourcePolicy (Read)
- s3:GetAccessGrantsLocation (Read)
- s3:GetAccessPoint (Read)
- s3:GetAccessPointConfigurationForObjectLambda (Read)
- s3:GetAccessPointForObjectLambda (Read)
- s3:GetAccessPointPolicy (Read)
- s3:GetAccessPointPolicyForObjectLambda (Read)
- s3:GetAccessPointPolicyStatus (Read)
- s3:GetAccessPointPolicyStatusForObjectLambda (Read)
- s3:GetAccountPublicAccessBlock (Read)
- s3:GetAnalyticsConfiguration (Read)
- s3:GetBucketAbac (Read)
- s3:GetBucketAcl (Read)
- s3:GetBucketCORS (Read)
- s3:GetBucketLocation (Read)
- s3:GetBucketLogging (Read)
- s3:GetBucketMetadataTableConfiguration (Read)
- s3:GetBucketNotification (Read)
- s3:GetBucketObjectLockConfiguration (Read)
- s3:GetBucketOwnershipControls (Read)
- s3:GetBucketPolicy (Read)
- s3:GetBucketPolicyStatus (Read)
- s3:GetBucketPublicAccessBlock (Read)
- s3:GetBucketRequestPayment (Read)
- s3:GetBucketTagging (Read)
- s3:GetBucketVersioning (Read)
- s3:GetBucketWebsite (Read)
- s3:GetDataAccess (Read)
- s3:GetEncryptionConfiguration (Read)
- s3:GetIntelligentTieringConfiguration (Read)
- s3:GetInventoryConfiguration (Read)
- s3:GetJobTagging (Read)
- s3:GetLifecycleConfiguration (Read)
- s3:GetMetricsConfiguration (Read)
- s3:GetMultiRegionAccessPoint (Read)
- s3:GetMultiRegionAccessPointPolicy (Read)
- s3:GetMultiRegionAccessPointPolicyStatus (Read)
- s3:GetMultiRegionAccessPointRoutes (Read)
- s3:GetObjectAnnotation (Read)
- s3:GetObjectAttributes (Read)
- s3:GetObjectTorrent (Read)
- s3:GetObjectVersionAnnotation (Read)
- s3:GetObjectVersionAnnotationForReplication (Read)
- s3:GetObjectVersionAttributes (Read)
- s3:GetObjectVersionForReplication (Read)
- s3:GetObjectVersionTorrent (Read)
- s3:GetReplicationConfiguration (Read)
- s3:GetStorageLensConfiguration (Read)
- s3:GetStorageLensConfigurationTagging (Read)
- s3:GetStorageLensDashboard (Read)
- s3:GetStorageLensGroup (Read)
- s3:ListAccessGrants (List)
- s3:ListAccessGrantsInstances (List)
- s3:ListAccessGrantsLocations (List)
- s3:ListAccessPoints (List)
- s3:ListAccessPointsForObjectLambda (List)
- s3:ListAllMyBuckets (List)
- s3:ListBucketMultipartUploads (List)
- s3:ListCallerAccessGrants (List)
- s3:ListJobs (List)
- s3:ListMultiRegionAccessPoints (List)
- s3:ListObjectAnnotations (List)
- s3:ListObjectVersionAnnotations (List)
- s3:ListStorageLensConfigurations (List)
- s3:ListStorageLensGroups (List)
- s3:ListTagsForResource (List)
- s3:PutBucketNotification (Write)
- s3:PutBucketPolicy (Permissions management)
- s3:PutBucketPublicAccessBlock (Permissions management)
- s3:PutBucketTagging (Tagging)
- s3:PutBucketVersioning (Write)
- s3:PutEncryptionConfiguration (Write)
- s3:PutLifecycleConfiguration (Write)
- s3:PutReplicationConfiguration (Write)
Secrets Manager: 3 actions
- secretsmanager:CreateSecret (Write)
- secretsmanager:GetSecretValue (Read)
- secretsmanager:PutSecretValue (Write)
SQS: 6 actions
- sqs:AddPermission (Permissions management)
- sqs:CreateQueue (Write)
- sqs:DeleteQueue (Write)
- sqs:GetQueueAttributes (Read)
- sqs:GetQueueUrl (Read)
- sqs:SetQueueAttributes (Permissions management)
Data-plane actions (12)
By access level: 3 List, 8 Read, 1 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| S3 | 12 of 25 | 3 List, 8 Read, 1 Write; 12 restricted, 1 conditional | s3:Get*, s3:GetObject, s3:GetObjectVersion, s3:List*, s3:ListBucket, s3:PutObject |
S3: 12 actions
- s3:GetObject (Read)
- s3:GetObjectAcl (Read)
- s3:GetObjectLegalHold (Read)
- s3:GetObjectRetention (Read)
- s3:GetObjectTagging (Read)
- s3:GetObjectVersion (Read)
- s3:GetObjectVersionAcl (Read)
- s3:GetObjectVersionTagging (Read)
- s3:ListBucket (List)
- s3:ListBucketVersions (List)
- s3:ListMultipartUploadParts (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: securitylake (20 of 20).
- 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).
- Grants permissions-management actions on iam, but only for scoped resources or under conditions.
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
- AccessAnalyzerServiceRolePolicy
- AdministratorAccess-AWSElasticBeanstalk
- AmazonAppFlowFullAccess
- AmazonAppStreamServiceAccess
- AmazonBedrockStudioPermissionsBoundary
- AmazonBraketJobsExecutionPolicy
- AmazonBraketServiceRolePolicy
- AmazonCloudWatchEvidentlyFullAccess
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": [
{
"Sid": "AllowActionsWithAnyResource",
"Effect": "Allow",
"Action": [
"securitylake:*",
"organizations:DescribeOrganization",
"organizations:ListDelegatedServicesForAccount",
"organizations:ListAccounts",
"iam:ListRoles",
"ram:GetResourceShareAssociations"
],
"Resource": "*"
},
{
"Sid": "AllowActionsWithAnyResourceViaSecurityLake",
"Effect": "Allow",
"Action": [
"glue:CreateCrawler",
"glue:StopCrawlerSchedule",
"lambda:CreateEventSourceMapping",
"lakeformation:GrantPermissions",
"lakeformation:ListPermissions",
"lakeformation:RegisterResource",
"lakeformation:RevokePermissions",
"lakeformation:GetDatalakeSettings",
"events:ListConnections",
"events:ListApiDestinations",
"iam:GetRole",
"iam:ListAttachedRolePolicies",
"kms:DescribeKey"
],
"Resource": "*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowManagingSecurityLakeS3Buckets",
"Effect": "Allow",
"Action": [
"s3:CreateBucket",
"s3:PutBucketPolicy",
"s3:PutBucketPublicAccessBlock",
"s3:PutBucketNotification",
"s3:PutBucketTagging",
"s3:PutEncryptionConfiguration",
"s3:PutBucketVersioning",
"s3:PutReplicationConfiguration",
"s3:PutLifecycleConfiguration",
"s3:ListBucket",
"s3:PutObject",
"s3:GetBucketNotification"
],
"Resource": "arn:aws:s3:::aws-security-data-lake*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowLambdaCreateFunction",
"Effect": "Allow",
"Action": [
"lambda:CreateFunction"
],
"Resource": [
"arn:aws:lambda:*:*:function:SecurityLake_Glue_Partition_Updater_Lambda*",
"arn:aws:lambda:*:*:function:AmazonSecurityLake*"
],
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowLambdaAddPermission",
"Effect": "Allow",
"Action": [
"lambda:AddPermission"
],
"Resource": [
"arn:aws:lambda:*:*:function:SecurityLake_Glue_Partition_Updater_Lambda*",
"arn:aws:lambda:*:*:function:AmazonSecurityLake*"
],
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
},
"StringEquals": {
"lambda:Principal": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowGlueActions",
"Effect": "Allow",
"Action": [
"glue:CreateDatabase",
"glue:GetDatabase",
"glue:CreateTable",
"glue:GetTable"
],
"Resource": [
"arn:aws:glue:*:*:catalog",
"arn:aws:glue:*:*:database/amazon_security_lake_glue_db*",
"arn:aws:glue:*:*:table/amazon_security_lake_glue_db*/*"
],
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowEventBridgeActions",
"Effect": "Allow",
"Action": [
"events:PutTargets",
"events:PutRule",
"events:DescribeRule",
"events:CreateApiDestination",
"events:CreateConnection",
"events:UpdateConnection",
"events:UpdateApiDestination",
"events:DeleteConnection",
"events:DeleteApiDestination",
"events:ListTargetsByRule",
"events:RemoveTargets",
"events:DeleteRule"
],
"Resource": [
"arn:aws:events:*:*:rule/AmazonSecurityLake*",
"arn:aws:events:*:*:rule/SecurityLake*",
"arn:aws:events:*:*:api-destination/AmazonSecurityLake*",
"arn:aws:events:*:*:connection/AmazonSecurityLake*"
],
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowSQSActions",
"Effect": "Allow",
"Action": [
"sqs:CreateQueue",
"sqs:SetQueueAttributes",
"sqs:GetQueueURL",
"sqs:AddPermission",
"sqs:GetQueueAttributes",
"sqs:DeleteQueue"
],
"Resource": [
"arn:aws:sqs:*:*:SecurityLake*",
"arn:aws:sqs:*:*:AmazonSecurityLake*"
],
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowKmsCmkGrantForSecurityLake",
"Effect": "Allow",
"Action": "kms:CreateGrant",
"Resource": "arn:aws:kms:*:*:key/*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
},
"StringLike": {
"kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::aws-security-data-lake*"
},
"ForAllValues:StringEquals": {
"kms:GrantOperations": [
"GenerateDataKey",
"RetireGrant",
"Decrypt"
]
}
}
},
{
"Sid": "AllowEnablingQueryBasedSubscribers",
"Effect": "Allow",
"Action": [
"ram:CreateResourceShare",
"ram:AssociateResourceShare"
],
"Resource": "*",
"Condition": {
"StringLikeIfExists": {
"ram:ResourceArn": [
"arn:aws:glue:*:*:catalog",
"arn:aws:glue:*:*:database/amazon_security_lake_glue_db*",
"arn:aws:glue:*:*:table/amazon_security_lake_glue_db*/*"
]
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowConfiguringQueryBasedSubscribers",
"Effect": "Allow",
"Action": [
"ram:UpdateResourceShare",
"ram:GetResourceShares",
"ram:DisassociateResourceShare",
"ram:DeleteResourceShare"
],
"Resource": "*",
"Condition": {
"StringLike": {
"ram:ResourceShareName": "LakeFormation*"
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowConfiguringCredentialsForSubscriberNotification",
"Effect": "Allow",
"Action": [
"secretsmanager:CreateSecret",
"secretsmanager:GetSecretValue",
"secretsmanager:PutSecretValue"
],
"Resource": "arn:aws:secretsmanager:*:*:secret:events!connection/AmazonSecurityLake-*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowPassRoleForUpdatingGluePartitionsSecLakeArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": [
"arn:aws:iam::*:role/service-role/AmazonSecurityLakeMetaStoreManager",
"arn:aws:iam::*:role/service-role/AmazonSecurityLakeMetaStoreManagerV2"
],
"Condition": {
"StringEquals": {
"iam:PassedToService": "lambda.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": "arn:aws:securitylake:*:*:data-lake/default"
}
}
},
{
"Sid": "AllowPassRoleForUpdatingGluePartitionsLambdaArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": [
"arn:aws:iam::*:role/service-role/AmazonSecurityLakeMetaStoreManager",
"arn:aws:iam::*:role/service-role/AmazonSecurityLakeMetaStoreManagerV2"
],
"Condition": {
"StringEquals": {
"iam:PassedToService": "lambda.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": [
"arn:aws:lambda:*:*:function:SecurityLake_Glue_Partition_Updater_Lambda*",
"arn:aws:lambda:*:*:function:AmazonSecurityLake*"
]
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowPassRoleForCrossRegionReplicationSecLakeArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/service-role/AmazonSecurityLakeS3ReplicationRole",
"Condition": {
"StringEquals": {
"iam:PassedToService": "s3.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": "arn:aws:securitylake:*:*:data-lake/default"
}
}
},
{
"Sid": "AllowPassRoleForCrossRegionReplicationS3Arn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/service-role/AmazonSecurityLakeS3ReplicationRole",
"Condition": {
"StringEquals": {
"iam:PassedToService": "s3.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": "arn:aws:s3:::aws-security-data-lake*"
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowPassRoleForCustomSourceCrawlerSecLakeArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/service-role/AmazonSecurityLakeCustomDataGlueCrawler*",
"Condition": {
"StringEquals": {
"iam:PassedToService": "glue.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": "arn:aws:securitylake:*:*:data-lake/default"
}
}
},
{
"Sid": "AllowPassRoleForCustomSourceCrawlerGlueArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/service-role/AmazonSecurityLakeCustomDataGlueCrawler*",
"Condition": {
"StringEquals": {
"iam:PassedToService": "glue.amazonaws.com"
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowPassRoleForSubscriberNotificationSecLakeArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/service-role/AmazonSecurityLakeSubscriberEventBridge",
"Condition": {
"StringEquals": {
"iam:PassedToService": "events.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": "arn:aws:securitylake:*:*:subscriber/*"
}
}
},
{
"Sid": "AllowPassRoleForSubscriberNotificationEventsArn",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/service-role/AmazonSecurityLakeSubscriberEventBridge",
"Condition": {
"StringEquals": {
"iam:PassedToService": "events.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": "arn:aws:events:*:*:rule/AmazonSecurityLake*"
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowOnboardingToSecurityLakeDependencies",
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": [
"arn:aws:iam::*:role/aws-service-role/securitylake.amazonaws.com/AWSServiceRoleForSecurityLake",
"arn:aws:iam::*:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess",
"arn:aws:iam::*:role/aws-service-role/apidestinations.events.amazonaws.com/AWSServiceRoleForAmazonEventBridgeApiDestinations"
],
"Condition": {
"StringLike": {
"iam:AWSServiceName": [
"securitylake.amazonaws.com",
"lakeformation.amazonaws.com",
"apidestinations.events.amazonaws.com"
]
}
}
},
{
"Sid": "AllowRolePolicyActionsforSubscibersandSources",
"Effect": "Allow",
"Action": [
"iam:CreateRole",
"iam:PutRolePolicy",
"iam:DeleteRolePolicy"
],
"Resource": "arn:aws:iam::*:role/AmazonSecurityLake*",
"Condition": {
"StringEquals": {
"iam:PermissionsBoundary": "arn:aws:iam::aws:policy/AmazonSecurityLakePermissionsBoundary"
},
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowRegisterS3LocationInLakeFormation",
"Effect": "Allow",
"Action": [
"iam:PutRolePolicy",
"iam:GetRolePolicy"
],
"Resource": "arn:aws:iam::*:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "AllowIAMActionsByResource",
"Effect": "Allow",
"Action": [
"iam:ListRolePolicies",
"iam:DeleteRole"
],
"Resource": "arn:aws:iam::*:role/AmazonSecurityLake*",
"Condition": {
"ForAnyValue:StringEquals": {
"aws:CalledVia": "securitylake.amazonaws.com"
}
}
},
{
"Sid": "S3ReadAccessToSecurityLakes",
"Effect": "Allow",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": "arn:aws:s3:::aws-security-data-lake-*"
},
{
"Sid": "S3ReadAccessToSecurityLakeMetastoreObject",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": "arn:aws:s3:::security-lake-meta-store-manager-*"
},
{
"Sid": "S3ResourcelessReadOnly",
"Effect": "Allow",
"Action": [
"s3:GetAccountPublicAccessBlock",
"s3:ListAccessPoints",
"s3:ListAllMyBuckets"
],
"Resource": "*"
}
]
}
Version history
Current version v2, edited by AWS on 2024-02-23. 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/AmazonSecurityLakeAdministrator
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/AmazonSecurityLakeAdministrator
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/AmazonSecurityLakeAdministratorCloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AmazonSecurityLakeAdministratorTerraform
resource "aws_iam_role_policy_attachment" "amazonsecuritylakeadministrator" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/AmazonSecurityLakeAdministrator"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("AmazonSecurityLakeAdministrator"),
);Sources
Pending editorial review. No editorial sources are listed yet.