aws-sagemaker-update-notebook-config
UpdateNotebookInstance changes notebook configuration including RoleArn (with PassRole), instance type, subnet, and security groups.
match (effective permission)
{
"action": "sagemaker:UpdateNotebookInstance",
"resource_type": "AWS::SageMaker::NotebookInstance"
}
emit
| source type | Identity |
|---|---|
| target type | Notebook |
| source | <principal> |
| target | <SageMaker NotebookInstance> |
| permissions | sagemaker:UpdateNotebookInstance |
| conditions | iam_permission |
Narrative
{principal.name} can change {notebook.name}'s configuration including execution role (with iam:PassRole), network placement, and lifecycle config (sagemaker:UpdateNotebookInstance).
Raw rule rules/derived/aws/sagemaker.yaml
id: aws-sagemaker-update-notebook-config
emits: CanModifyConfiguration
description: UpdateNotebookInstance changes notebook configuration including RoleArn (with PassRole),
instance type, subnet, and security groups.
match_effective_permission:
action: sagemaker:UpdateNotebookInstance
resource_type: AWS::SageMaker::NotebookInstance
emit:
source_type: Identity
target_type: Notebook
source: <principal>
target: <SageMaker NotebookInstance>
permissions:
- sagemaker:UpdateNotebookInstance
conditions:
- iam_permission
false_positive_note: "Changing RoleArn requires iam:PassRole on the new role (sagemaker.amazonaws.com).\
\ Without PassRole, the attacker can change instance type/subnet/security-groups but NOT the execution\
\ identity \u2014 CanModifyConfiguration is still valid for network/placement changes but CanAttachIdentity\
\ is blocked. Model the role-swap capability only when iam:PassRole is also effective."
narrative: '{principal.name} can change {notebook.name}''s configuration including execution role (with
iam:PassRole), network placement, and lifecycle config (sagemaker:UpdateNotebookInstance).'