本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 Step Functions 中為非管理員使用者建立精細權限
中的預設受管理原則IAM,例如ReadOnly
,並未完全涵蓋所有類型的 AWS Step Functions 權限。本節描述不同類型的許可,並提供一些範例組態。
Step Functions 具有四種權限類別。視您想要提供給使用者的存取權而定,您可以使用這些類別中的許可來控制存取權。
服務層級許可
此權限層級適用於不對特定資源採取行API動的所有動作。這些包括CreateStateMachine
CreateActivity
、ListStateMachines
、ListActivities
、和ValidationStateMachineDefinition
。
{ "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" ] } ] }
狀態機器層級許可
此權限層級適用於在特定狀態機器上API執行的所有動作。這些API操作需要狀態機器的 Amazon 資源名稱 (ARN) 作為請求的一部分DeleteStateMachine
,例如DescribeStateMachine
StartExecution
、、和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*" ] } ] }
執行層級許可
此權限層級適用於針對特定執行API動作的所有動作。這些API作業需要執行作為要求的一部分,例如DescribeExecution
GetExecutionHistory
、和StopExecution
。ARN
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:DescribeExecution", "states:DescribeStateMachineForExecution", "states:GetExecutionHistory", "states:StopExecution" ], "Resource": [ "arn:aws:states:*:*:execution:*:ExecutionPrefix*" ] } ] }
活動層級許可
此權限等級適用於對特定活動或其特定實例採取行動的所有動API作。這些API操作需要將活動或實例的令牌作為請求的一部分DeleteActivity
,例如DescribeActivity
,GetActivityTask
,和SendTaskHeartbeat
。ARN
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:DescribeActivity", "states:DeleteActivity", "states:GetActivityTask", "states:SendTaskHeartbeat" ], "Resource": [ "arn:aws:states:*:*:activity:ActivityPrefix*" ] } ] }