AWSGlueConsoleSageMakerNotebookFullAccess
Last Modified
Sep 10, 2026
September 10, 2026 at 09:03 PM UTC
Version
v4
Total Versions
9
Created
Sep 10, 2026
Actions
67
Risk
HighAn unrestricted escalation path, identity administration, secret reads or the power to switch off security monitoring. Read from this policy document alone: trust policies, boundaries and SCPs in your account still decide what actually succeeds. How this is assessed
- High
Can take over existing resources that run as another role
Grants every action of 1 documented escalation path on any resource with no condition, and 2 more in a scoped form.
- sagemaker:CreatePresignedNotebookInstanceUrl: on arn:aws:sagemaker:*:*:notebook-instance/aws-glue-*
- sagemaker-005sagemaker:CreateNotebookInstanceLifecycleConfig + sagemaker:StopNotebookInstance + sagemaker:UpdateNotebookInstance + sagemaker:StartNotebookInstancescoped
- sagemaker:CreateNotebookInstanceLifecycleConfig: on arn:aws:sagemaker:*:*:notebook-instance-lifecycle-config/aws-glue-*
- sagemaker:StopNotebookInstance: on arn:aws:sagemaker:*:*:notebook-instance/aws-glue-*
- sagemaker:UpdateNotebookInstance: on arn:aws:sagemaker:*:*:notebook-instance/aws-glue-*
- sagemaker:StartNotebookInstance: on arn:aws:sagemaker:*:*:notebook-instance/aws-glue-*
Use with caution: List the roles attached to the functions, instances, pipelines or notebooks it can modify: the holder effectively has them too.
- Medium
Can launch resources that run as a more privileged role
Grants the actions of 9 documented escalation paths, but only on named resources or under a condition. Review that scope before trusting it.
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- cloudformation:CreateStack: on arn:aws:cloudformation:*:*:stack/aws-glue*/*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
1 more path
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/AWSGlueServiceRole*
- sagemaker:CreateNotebookInstance: on arn:aws:sagemaker:*:*:notebook-instance/aws-glue-*
Use with caution: Check which roles, users or policies fall inside the scope shown above. Within it the escalation works as documented, so keep privileged principals out of it.
- Medium
Can read secrets
Reads Glue connection passwords, on any resource with no condition.
glue:GetConnection (via glue:*)Use with caution: Where the holder needs only some secrets, write your own policy scoped to their ARNs or tags, and limit decryption in the KMS key policies.
- Medium
Can rewrite resource policies and sharing
Grants 2 permissions management actions across 1 service (glue) on any resource, enough to share resources outside the account.
glue:deleteresourcepolicyglue:putresourcepolicyUse with caution: Turn on IAM Access Analyzer external access findings, and keep account-level guards like S3 Block Public Access enabled.
- Medium
Full glue access on every resource
Uses glue:* with Resource "*" and no condition, so every action AWS adds to that service later is granted too.
glue:*Use with caution: The grant grows every time the service does. For long-lived access, prefer a policy that lists the actions you actually need.
Policy Document
View on GitHub{
"PolicyVersion": {
"Document": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"glue:*",
"redshift:DescribeClusters",
"redshift:DescribeClusterSubnetGroups",
"iam:ListRoles",
"iam:ListRolePolicies",
"iam:GetRole",
"iam:GetRolePolicy",
"iam:ListAttachedRolePolicies",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeVpcEndpoints",
"ec2:DescribeRouteTables",
"ec2:DescribeVpcAttribute",
"ec2:DescribeKeyPairs",
"ec2:DescribeInstances",
"ec2:DescribeImages",
"ec2:CreateNetworkInterface",
"ec2:AttachNetworkInterface",
"ec2:ModifyNetworkInterfaceAttribute",
"ec2:DeleteNetworkInterface",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeInternetGateways",
"ec2:DescribeNetworkInterfaces",
"rds:DescribeDBInstances",
"s3:ListAllMyBuckets",
"s3:ListBucket",
"s3:GetBucketAcl",
"s3:GetBucketLocation",
"cloudformation:DescribeStacks",
"cloudformation:GetTemplateSummary",
"dynamodb:ListTables",
"kms:ListAliases",
"kms:DescribeKey",
"sagemaker:ListNotebookInstances",
"cloudformation:ListStacks",
"cloudwatch:GetMetricData",
"cloudwatch:ListDashboards"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::*/*aws-glue-*/*",
"arn:aws:s3:::aws-glue-*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:CreateBucket"
],
"Resource": [
"arn:aws:s3:::aws-glue-*"
]
},
{
"Effect": "Allow",
"Action": [
"logs:GetLogEvents"
],
"Resource": [
"arn:aws:logs:*:*:/aws-glue/*"
]
},
{
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack"
],
"Resource": "arn:aws:cloudformation:*:*:stack/aws-glue*/*"
},
{
"Sid": "CloudFormationTagOnCreate",
"Effect": "Allow",
"Action": [
"cloudformation:TagResource",
"cloudformation:UntagResource"
],
"Resource": "arn:aws:cloudformation:*:*:stack/aws-glue*/*",
"Condition": {
"StringEquals": {
"cloudformation:CreateAction": [
"CreateStack"
]
}
}
},
{
"Effect": "Allow",
"Action": [
"sagemaker:CreatePresignedNotebookInstanceUrl",
"sagemaker:CreateNotebookInstance",
"sagemaker:DeleteNotebookInstance",
"sagemaker:DescribeNotebookInstance",
"sagemaker:StartNotebookInstance",
"sagemaker:StopNotebookInstance",
"sagemaker:UpdateNotebookInstance",
"sagemaker:ListTags"
],
"Resource": "arn:aws:sagemaker:*:*:notebook-instance/aws-glue-*"
},
{
"Effect": "Allow",
"Action": [
"sagemaker:DescribeNotebookInstanceLifecycleConfig",
"sagemaker:CreateNotebookInstanceLifecycleConfig",
"sagemaker:DeleteNotebookInstanceLifecycleConfig",
"sagemaker:ListNotebookInstanceLifecycleConfigs"
],
"Resource": "arn:aws:sagemaker:*:*:notebook-instance-lifecycle-config/aws-glue-*"
},
{
"Effect": "Allow",
"Action": [
"ec2:RunInstances"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:key-pair/*",
"arn:aws:ec2:*:*:image/*",
"arn:aws:ec2:*:*:security-group/*",
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:subnet/*",
"arn:aws:ec2:*:*:volume/*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:CreateTags",
"ec2:DeleteTags"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*"
],
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-id": "arn:aws:cloudformation:*:*:stack/aws-glue-*/*"
},
"StringEquals": {
"ec2:ResourceTag/aws:cloudformation:logical-id": "ZeppelinInstance"
}
}
},
{
"Effect": "Allow",
"Action": [
"tag:GetResources"
],
"Resource": [
"*"
],
"Condition": {
"ForAllValues:StringLike": {
"aws:TagKeys": [
"aws-glue-*"
]
}
}
},
{
"Action": [
"iam:PassRole"
],
"Effect": "Allow",
"Resource": "arn:aws:iam::*:role/AWSGlueServiceRole*",
"Condition": {
"StringLike": {
"iam:PassedToService": [
"glue.amazonaws.com"
]
}
}
},
{
"Action": [
"iam:PassRole"
],
"Effect": "Allow",
"Resource": "arn:aws:iam::*:role/AWSGlueServiceNotebookRole*",
"Condition": {
"StringLike": {
"iam:PassedToService": [
"ec2.amazonaws.com"
]
}
}
},
{
"Action": [
"iam:PassRole"
],
"Effect": "Allow",
"Resource": "arn:aws:iam::*:role/AWSGlueServiceSageMakerNotebookRole*",
"Condition": {
"StringLike": {
"iam:PassedToService": [
"sagemaker.amazonaws.com"
]
}
}
},
{
"Action": [
"iam:PassRole"
],
"Effect": "Allow",
"Resource": [
"arn:aws:iam::*:role/service-role/AWSGlueServiceRole*"
],
"Condition": {
"StringLike": {
"iam:PassedToService": [
"glue.amazonaws.com"
]
}
}
}
]
},
"VersionId": "v4",
"IsDefaultVersion": true,
"CreateDate": "2026-09-10T20:27:07+00:00"
}
}Version History (12 recorded)
Raw history2 actions added
AWSGlueConsoleSageMakerNotebookFullAccess - Policy Version v3
No recorded action delta - this version predates the change index. View the raw diff.
Mar 12, 2026
26a2797Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Sep 18, 2024
aafbae9Update detected
No recorded action delta - this version predates the change index. View the raw diff.
May 13, 2024
1b36617Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Jul 15, 2021
948bd34Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Oct 1, 2019
1c37a57Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Sep 16, 2019
49aa1d0Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Sep 16, 2019
71619cfUpdate detected
No recorded action delta - this version predates the change index. View the raw diff.
Sep 16, 2019
8279033`2019-08-29`
No recorded action delta - this version predates the change index. View the raw diff.
Aug 29, 2019
5016d52I updated my CLI and it looks like it reordered everything and changed the white-space, so everything looks changed, but is not
No recorded action delta - this version predates the change index. View the raw diff.
Jul 12, 2019
9d2dff1First commit
No recorded action delta - this version predates the change index. View the raw diff.
Feb 10, 2019
ad4c2e8