Step Functions 工作流程中版本和別名的授權 - AWS Step Functions

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Step Functions 工作流程中版本和別名的授權

若要使用版本或別名叫用 Step Functions API 動作,您需要適當的許可。若要授權版本或別名呼叫 API 動作,Step Functions 會使用狀態機器的 ARN,而不是使用版本 ARN 或別名 ARN。您也可以縮小特定版本或別名的許可範圍。如需詳細資訊,請參閱縮小許可範圍

您可以使用下列名為 的狀態機器 IAM 政策範例myStateMachine,叫用 CreateStateMachineAlias API 動作來建立狀態機器別名。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "states:CreateStateMachineAlias", "Resource": "arn:aws:states:region:account-id:stateMachine:myStateMachine" } ] }

當您設定許可以允許或拒絕使用狀態機器版本或別名存取 API 動作時,請考慮下列事項:

縮小版本或別名的許可範圍

您可以使用限定詞進一步縮小版本或別名所需的授權許可範圍。限定詞是指版本編號或別名名稱。您可以使用 限定詞來限定狀態機器。下列範例是狀態機器 ARN,使用名為 限定詞PROD的別名。

arn:aws:states:region:account-id:stateMachine:myStateMachine:PROD

如需合格和不合格 ARNs的詳細資訊,請參閱 將執行與版本或別名建立關聯

您可以使用 IAM 政策Condition陳述式states:StateMachineQualifier中名為 的選用內容金鑰來縮小許可範圍。例如,下列名為 之狀態機器的 IAM 政策會myStateMachine拒絕使用名為 PROD或 版本的別名叫用 DescribeStateMachine API 動作的存取權1

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "states:DescribeStateMachine", "Resource": "arn:aws:states:region:account-id:stateMachine:myStateMachine", "Condition": { "ForAnyValue:StringEquals": { "states:StateMachineQualifier": [ "PROD", "1" ] } } } ] }

以下清單指定 API 動作,您可以在其中使用StateMachineQualifier內容索引鍵縮小許可範圍。