Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Le policy gestite predefinite in IAM, ad esempioReadOnly
, non coprono completamente tutti i tipi di AWS Step Functions autorizzazioni. Questa sezione descrive i diversi tipi di autorizzazione e presenta alcune configurazioni di esempio.
Step Functions dispone di quattro categorie di autorizzazioni. In base al tipo di accesso che desideri offrire a un utente, puoi controllare l'accesso utilizzando le autorizzazioni in queste categorie.
- Autorizzazioni a livello di servizio
-
Si applica ai componenti dell'API che non agiscono su una risorsa specifica.
- Autorizzazioni a livello di macchina a stati
-
Da applicare a tutti i componenti di un'API che agiscono su una macchina a stati specifica.
- Autorizzazioni a livello di esecuzione
-
Da applicare a tutti i componenti di un'API che agiscono su un'esecuzione specifica.
- Autorizzazioni a livello di attività
-
Da applicare a tutti i componenti di un'API che agiscono su un'attività specifica o su una determinata istanza di un'attività.
Autorizzazioni a livello di servizio
Questo livello di autorizzazione si applica a tutte le azioni API che non agiscono su una risorsa specifica. Questi includonoCreateStateMachine
, CreateActivity
ListStateMachines
,ListActivities
, eValidationStateMachineDefinition
.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"states:ListStateMachines",
"states:ListActivities",
"states:CreateStateMachine",
"states:CreateActivity",
"states:ValidationStateMachineDefinition",
],
"Resource": [
"arn:aws:states:*:*:*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam:::role/my-execution-role"
]
}
]
}
Autorizzazioni a livello di macchina a stati
Questo livello di autorizzazione si applica a tutte le azioni API che agiscono su una macchina a stati specifica. Queste operazioni API richiedono l'Amazon Resource Name (ARN) della macchina a stati come parte della richiesta, ad esempio DeleteStateMachine
DescribeStateMachine
StartExecution
, e. ListExecutions
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"states:DescribeStateMachine",
"states:StartExecution",
"states:DeleteStateMachine",
"states:ListExecutions",
"states:UpdateStateMachine",
"states:TestState",
"states:RevealSecrets"
],
"Resource": [
"arn:aws:states:*:*:stateMachine:StateMachinePrefix*"
]
}
]
}
Autorizzazioni a livello di esecuzione
Questo livello di autorizzazione si applica a tutte le azioni API che agiscono su un'esecuzione specifica. Queste operazioni API necessitano l'ARN dell'esecuzione come parte della richiesta, ad esempio DescribeExecution
, GetExecutionHistory
e StopExecution
.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"states:DescribeExecution",
"states:DescribeStateMachineForExecution",
"states:GetExecutionHistory",
"states:StopExecution"
],
"Resource": [
"arn:aws:states:*:*:execution:*:ExecutionPrefix*"
]
}
]
}
Autorizzazioni a livello di attività
Questo livello di autorizzazione si applica a tutte le azioni API che agiscono su un'attività specifica o su una sua determinata istanza. Queste operazioni API richiedono l'ARN dell'attività o il token dell'istanza come parte della richiesta, ad esempio DeleteActivity
DescribeActivity
GetActivityTask
, e. SendTaskHeartbeat
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"states:DescribeActivity",
"states:DeleteActivity",
"states:GetActivityTask",
"states:SendTaskHeartbeat"
],
"Resource": [
"arn:aws:states:*:*:activity:ActivityPrefix*"
]
}
]
}