Amazon 的動作、資源和條件金鑰 GameLift - 服務授權參考

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

Amazon 的動作、資源和條件金鑰 GameLift

Amazon GameLift (服務前綴:gamelift) 提供下列服務特定資源、動作和條件內容金鑰,可用於IAM許可政策。

參考資料:

Amazon 定義的操作 GameLift

您可以在IAM策略陳述式的Action元素中指定下列動作。使用政策來授予在 AWS中執行操作的許可。當您在策略中使用動作時,通常會允許或拒絕存取具有相同名稱的API作業或CLI命令。不過,在某些情況下,單一動作可控制對多個操作的存取。或者,某些操作需要多種不同的動作。

「動作」資料表的資源類型欄會指出每個動作是否支援資源層級的許可。如果此欄沒有值,您必須在政策陳述式的 Resource 元素中指定政策適用的所有資源 ("*")。如果資料行包含資源類型,則您可以使用該動作在陳述式中指定該類型ARN的類型。如果動作具有一或多個必要資源,呼叫者必須具有對這些資源使用動作的許可。表格中的必要資源會以星號 (*) 表示。如果您使用策略中的Resource元素限制資源存取,IAM則必須針對每個所需資源類型包含ARN或模式。某些動作支援多種資源類型。如果資源類型是選用 (未顯示為必要),則您可以選擇使用其中一種選用資源類型。

「動作」資料表的條件索引鍵欄包含您可以在政策陳述式的 Condition 元素中指定的索引鍵。如需有關與服務資源相關聯之條件索引鍵的詳細資訊,請參閱「資源類型」資料表的條件索引鍵欄。

注意

資源條件索引鍵會列在資源類型資料表中。您可以在「動作」資料表的資源類型 (*必填) 欄中找到適用於動作的資源類型連結。「資源類型」資料表中的資源類型包括條件索引鍵欄,其中包含套用至「動作」資料表中動作的資源條件索引鍵。

如需下表各欄的詳細資訊,請參閱動作資料表

動作 描述 存取層級 資源類型 (*必填項目) 條件索引鍵 相依動作
AcceptMatch 授予註冊玩家接受或拒絕提議 FlexMatch 比賽的許可 寫入
ClaimGameServer 准許尋找並預留遊戲伺服器來託管新的遊戲工作階段 寫入

gameServerGroup*

CreateAlias 准許定義機群的新別名 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

CreateBuild 准許使用存放在 Amazon S3 儲存貯體中的檔案建立新的遊戲組建 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

iam:PassRole

s3:GetObject

CreateContainerGroupDefinition 授與為容器叢集建立新容器群組定義的權限 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

ecr:BatchGetImage

ecr:DescribeImages

ecr:GetDownloadUrlForLayer

gamelift:TagResource

CreateFleet 准許建立新的運算資源機群,以執行您的遊戲伺服器 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

ec2:DescribeAvailabilityZones

ec2:DescribeRegions

gamelift:TagResource

iam:PassRole

CreateFleetLocations 准許指定機群的其他位置 寫入

fleet*

ec2:DescribeAvailabilityZones

ec2:DescribeRegions

CreateGameServerGroup 准許建立新的遊戲伺服器群組、設定對應的 Auto Scaling 群組,以及啟動執行個體來託管遊戲伺服器。 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

autoscaling:CreateAutoScalingGroup

autoscaling:DescribeAutoScalingGroups

autoscaling:PutLifecycleHook

autoscaling:PutScalingPolicy

ec2:DescribeAvailabilityZones

ec2:DescribeSubnets

events:PutRule

events:PutTargets

gamelift:TagResource

iam:PassRole

CreateGameSession 准許在指定機群上啟動新的遊戲工作階段 寫入
CreateGameSessionQueue 准許設定新的佇列以處理新的遊戲工作階段放置請求 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

CreateLocation 准許定義新的機群位置 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

CreateMatchmakingConfiguration 授予建立新 FlexMatch 分房系統的權限 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

CreateMatchmakingRuleSet 授予建立新配對規則集的權限 FlexMatch 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

CreatePlayerSession 准許預留可供玩家使用的遊戲工作階段位置 寫入
CreatePlayerSessions 准許預留可供多位玩家使用的遊戲工作階段位置 寫入
CreateScript 准許建立新的 Realtime Servers 指令碼 寫入

aws:RequestTag/${TagKey}

aws:TagKeys

gamelift:TagResource

iam:PassRole

s3:GetObject

CreateVpcPeeringAuthorization 授VPC與允許 GameLift VPC在叢集與另一 GameLift 叢集之間建立或刪除對等連線的權限 AWS 帳戶 寫入

ec2:AcceptVpcPeeringConnection

ec2:AuthorizeSecurityGroupEgress

ec2:AuthorizeSecurityGroupIngress

ec2:CreateRoute

ec2:DeleteRoute

ec2:DescribeRouteTables

ec2:DescribeSecurityGroups

ec2:RevokeSecurityGroupEgress

ec2:RevokeSecurityGroupIngress

CreateVpcPeeringConnection 授予VPC在您的 GameLift 叢集VPC與其他帳戶之間建立對等連線的權限 寫入
DeleteAlias 准許刪除別名 寫入

alias*

DeleteBuild 准許刪除遊戲組建 寫入

build*

DeleteContainerGroupDefinition 授與刪除叢集中未使用之容器群組定義的權限 寫入

containerGroupDefinition*

DeleteFleet 准許刪除空白機群 寫入

fleet*

DeleteFleetLocations 准許刪除機群的位置 寫入

fleet*

DeleteGameServerGroup 准許永久刪除遊戲伺服器群組,並終止對應 Auto Scaling 群組的 FleetIQ 活動 寫入

gameServerGroup*

autoscaling:DeleteAutoScalingGroup

autoscaling:DescribeAutoScalingGroups

autoscaling:ExitStandby

autoscaling:ResumeProcesses

autoscaling:SetInstanceProtection

autoscaling:UpdateAutoScalingGroup

DeleteGameSessionQueue 准許刪除現有的遊戲工作階段佇列 寫入

gameSessionQueue*

DeleteLocation 准許刪除位置 寫入

location*

DeleteMatchmakingConfiguration 授予刪除現有 FlexMatch 分房系統的權限 寫入

matchmakingConfiguration*

DeleteMatchmakingRuleSet 授予刪除現有 FlexMatch 配對規則集的權限 寫入

matchmakingRuleSet*

DeleteScalingPolicy 准許刪除一組自動調整規模規則 寫入

fleet*

DeleteScript 准許刪除 Realtime Servers 指令碼 寫入

script*

DeleteVpcPeeringAuthorization 授予取消對VPC等連線授權的權限 寫入
DeleteVpcPeeringConnection 授予移除之間對等連線的權限 VPCs 寫入
DeregisterCompute 准許取消註冊機群的運算 寫入

fleet*

DeregisterGameServer 准許從遊戲伺服器群組移除遊戲伺服器 寫入

gameServerGroup*

DescribeAlias 准許擷取別名的屬性 讀取

alias*

DescribeBuild 准許擷取遊戲組建的屬性 讀取

build*

DescribeCompute 授與擷取運算一般內容的權限ARN,例如叢集詳細資料、SDK端點和位置 讀取

fleet*

DescribeContainerGroupDefinition 授與擷取容器群組定義之一般內容 (包括狀態) 的權限 讀取

containerGroupDefinition*

DescribeEC2InstanceLimits 授與擷取EC2執行個體類型允許和目前使用量上限的權限 讀取
DescribeFleetAttributes 准許擷取機群的一般屬性,包括狀態。 讀取
DescribeFleetCapacity 准許擷取機群目前的容量設定 讀取
DescribeFleetEvents 准許從機群事件日誌檔案擷取項目 讀取

fleet*

DescribeFleetLocationAttributes 准許擷取機群位置的一般屬性,包括狀態。 讀取

fleet*

DescribeFleetLocationCapacity 准許擷取機群位置的目前容量設定 讀取

fleet*

DescribeFleetLocationUtilization 准許擷取機群位置的使用率統計資料 讀取

fleet*

DescribeFleetPortSettings 准許擷取機群的傳入連線許可 讀取

fleet*

DescribeFleetUtilization 准許擷取機群的使用率統計資料 讀取
DescribeGameServer 准許擷取遊戲伺服器的屬性 讀取

gameServerGroup*

DescribeGameServerGroup 准許擷取遊戲伺服器群組的屬性 讀取

gameServerGroup*

DescribeGameServerInstances 授予擷取遊戲伺服器群組中EC2執行個體狀態的權限 讀取

gameServerGroup*

DescribeGameSessionDetails 准許擷取機群中的遊戲工作階段屬性,包括保護政策 讀取
DescribeGameSessionPlacement 准許擷取遊戲工作階段放置請求的詳細資訊 讀取
DescribeGameSessionQueues 准許擷取遊戲工作階段佇列的屬性 讀取
DescribeGameSessions 准許擷取機群中遊戲工作階段的屬性 讀取
DescribeInstances 准許擷取機群中執行個體的相關資訊 讀取

fleet*

DescribeMatchmaking 准許擷取配對構建票證的詳細資訊 讀取
DescribeMatchmakingConfigurations 授予 FlexMatch 對分房系統擷取屬性的權限 讀取
DescribeMatchmakingRuleSets 授與擷取 FlexMatch 配對規則集屬性的權限 讀取
DescribePlayerSessions 准許擷取遊戲工作階段中玩家工作階段的屬性 讀取
DescribeRuntimeConfiguration 准許擷取機群的目前執行時間組態 讀取

fleet*

DescribeScalingPolicies 准許擷取套用至機群的所有擴展政策 讀取

fleet*

DescribeScript 准許擷取 Realtime Servers 指令碼的屬性 讀取

script*

DescribeVpcPeeringAuthorizations 授予擷取有效VPC對等授權的權限 讀取
DescribeVpcPeeringConnections 授與擷取作用中或擱置對等VPC連線詳細資料的權限 讀取
GetComputeAccess 准許擷取運算的存取憑證 讀取

fleet*

GetComputeAuthToken 准許擷取要在遊戲伺服器程序中使用的運算和機群的授權字符 讀取

fleet*

GetGameSessionLogUrl 准許擷取遊戲工作階段日誌的存放位置 讀取
GetInstanceAccess 准許請求遠端存取指定的機群執行個體 讀取

fleet*

ListAliases 准許擷取目前區域中定義的所有別名 列出
ListBuilds 准許擷取目前區域中的所有遊戲組建 清單
ListCompute 准許擷取目前區域中的所有運算資源 清單

fleet*

ListContainerGroupDefinitions 授與擷取目前區域中所有容器群組定義名稱清單的權限 清單
ListFleets 授予檢索當前區域中所IDs有艦隊列表的權限 清單
ListGameServerGroups 准許擷取目前區域中定義的所有遊戲伺服器群組 列出
ListGameServers 准許擷取目前在遊戲伺服器群組中執行的所有遊戲伺服器 清單

gameServerGroup*

ListLocations 准許擷取此帳戶中的所有位置 清單
ListScripts 准許擷取目前區域中所有 Realtime Servers 指令碼的屬性 清單
ListTagsForResource 授予擷取 GameLift 資源標籤的權限 讀取

alias

build

containerGroupDefinition

fleet

gameServerGroup

gameSessionQueue

location

matchmakingConfiguration

matchmakingRuleSet

script

PutScalingPolicy 准許建立或更新機群自動調整規模政策 寫入

fleet*

RegisterCompute 准許註冊機群運算 寫入

fleet*

RegisterGameServer 授予在新遊戲伺服器準備好託管遊戲時通知 GameLift FleetIQ 的權限 寫入

gameServerGroup*

RequestUploadCredentials 准許擷取更新後的上傳登入資料,以供上傳新遊戲組建時使用。 讀取

build*

ResolveAlias 准許擷取與別名相關聯的機群 ID 讀取

alias*

ResumeGameServerGroup 准許恢復已暫停的遊戲伺服器群組的 FleetIQ 活動 寫入

gameServerGroup*

SearchGameSessions 准許擷取符合一組搜尋條件的遊戲工作階段 讀取
StartFleetActions 授予在使用 StopFleetActions () 暫停叢集後繼續自動調整規模活動的權限 寫入

fleet*

StartGameSessionPlacement 准許將遊戲工作階段放置請求傳送到遊戲工作階段佇列 寫入

gameSessionQueue*

StartMatchBackfill 授予要求 FlexMatch 配對以填滿現有遊戲工作階段中可用玩家位置的權限 寫入
StartMatchmaking 授予對一名或一群玩家要求 FlexMatch 配對並啟動遊戲階段位置的權限 寫入
StopFleetActions 准許暫停機群上的自動調整規模活動 寫入

fleet*

StopGameSessionPlacement 准許取消正在進行中的遊戲工作階段放置請求 寫入
StopMatchmaking 准許取消配對構建或比對正在進行中的回填請求 寫入
SuspendGameServerGroup 准許暫時停止遊戲伺服器群組的 FleetIQ 活動 寫入

gameServerGroup*

TagResource 授予標記資 GameLift 源的權限 標記

alias

build

containerGroupDefinition

fleet

gameServerGroup

gameSessionQueue

location

matchmakingConfiguration

matchmakingRuleSet

script

aws:RequestTag/${TagKey}

aws:TagKeys

UntagResource 授予取消標記 GameLift 資源的權限 標記

alias

build

containerGroupDefinition

fleet

gameServerGroup

gameSessionQueue

location

matchmakingConfiguration

matchmakingRuleSet

script

aws:TagKeys

UpdateAlias 准許更新現有別名的屬性 寫入

alias*

UpdateBuild 准許更新現有組建的中繼資料 寫入

build*

UpdateFleetAttributes 准許更新現有機群的一般屬性 寫入

fleet*

UpdateFleetCapacity 准許調整機群的容量設定 寫入

fleet*

UpdateFleetPortSettings 准許調整機群的連接埠設定 寫入

fleet*

UpdateGameServer 准許變更遊戲伺服器屬性、運作狀態或使用狀態 寫入

gameServerGroup*

UpdateGameServerGroup 准許更新遊戲伺服器群組的屬性,包括允許的執行個體類型 寫入

gameServerGroup*

iam:PassRole

UpdateGameSession 准許更新現有遊戲工作階段的屬性 寫入
UpdateGameSessionQueue 准許更新現有遊戲工作階段佇列的屬性 寫入

gameSessionQueue*

UpdateMatchmakingConfiguration 授予更新現有 FlexMatch 配對組態屬性的權限 寫入

matchmakingConfiguration*

UpdateRuntimeConfiguration 准許更新在現有機群執行個體上設定伺服器程序的方式 寫入

fleet*

UpdateScript 准許更新現有 Realtime Servers 指令碼的中繼資料和內容 寫入

script*

iam:PassRole

s3:GetObject

ValidateMatchmakingRuleSet 授予驗證 FlexMatch 配對規則集語法的權限 讀取

Amazon 定義的資源類型 GameLift

下列資源類型由此服務定義,可用於IAM權限原則陳述式的Resource元素中。動作資料表中的每個動作都會指明可使用該動作指定的資源類型。資源類型也能定義您可以在政策中包含哪些條件索引鍵。這些索引鍵都會顯示在「資源類型」資料表的最後一欄。如需下表各欄的詳細資訊,請參閱資源類型資料表

資源類型 ARN 條件索引鍵
alias arn:${Partition}:gamelift:${Region}::alias/${AliasId}

aws:ResourceTag/${TagKey}

build arn:${Partition}:gamelift:${Region}:${Account}:build/${BuildId}

aws:ResourceTag/${TagKey}

containerGroupDefinition arn:${Partition}:gamelift:${Region}:${Account}:containergroupdefinition/${Name}

aws:ResourceTag/${TagKey}

fleet arn:${Partition}:gamelift:${Region}:${Account}:fleet/${FleetId}

aws:ResourceTag/${TagKey}

gameServerGroup arn:${Partition}:gamelift:${Region}:${Account}:gameservergroup/${GameServerGroupName}

aws:ResourceTag/${TagKey}

gameSessionQueue arn:${Partition}:gamelift:${Region}:${Account}:gamesessionqueue/${GameSessionQueueName}

aws:ResourceTag/${TagKey}

location arn:${Partition}:gamelift:${Region}:${Account}:location/${LocationId}

aws:ResourceTag/${TagKey}

matchmakingConfiguration arn:${Partition}:gamelift:${Region}:${Account}:matchmakingconfiguration/${MatchmakingConfigurationName}

aws:ResourceTag/${TagKey}

matchmakingRuleSet arn:${Partition}:gamelift:${Region}:${Account}:matchmakingruleset/${MatchmakingRuleSetName}

aws:ResourceTag/${TagKey}

script arn:${Partition}:gamelift:${Region}:${Account}:script/${ScriptId}

aws:ResourceTag/${TagKey}

Amazon 的條件密鑰 GameLift

Amazon GameLift 定義了下列可在IAM政策Condition元素中使用的條件金鑰。您可以使用這些索引鍵來縮小套用政策陳述式的條件。如需下表各欄的詳細資訊,請參閱條件索引鍵資料表

若要檢視所有服務都可使用的全域條件索引鍵,請參閱可用全域條件索引鍵

條件索引鍵 描述 類型
aws:RequestTag/${TagKey} 依要求中傳遞的標籤來篩選存取權 字串
aws:ResourceTag/${TagKey} 依與資源關聯的標籤來篩選存取權 字串
aws:TagKeys 依要求中傳遞的標籤索引鍵來篩選存取權 ArrayOfString