版本和別名的授權 - AWS Step Functions

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

版本和別名的授權

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

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

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "states:CreateStateMachineAlias", "Resource": "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine" } ] }

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

在本主題中

設定版本或別名的權限範圍

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

arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:PROD

如需有關合格和不合格 ARN 的詳細資訊,請參閱。將執行與版本或別名相關聯

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

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

下列清單會指定 API 動作,您可以使用StateMachineQualifier內容金鑰設定權限範圍。