View a markdown version of this page

AWS AppSync 的動作、資源和條件索引鍵 - 服務授權參考

AWS AppSync 的動作、資源和條件索引鍵

AWS AppSync (服務字首:appsync) 提供下列服務特定的操作、資源、動作和條件索引鍵,可用於 IAM 許可政策。

參考資料:

AWS AppSync 定義的 API 操作

下表將 API 操作映射至其授權的 IAM 動作。只會列出具有指定 API 和動作靜態值的條件金鑰;如需每個動作支援的完整條件金鑰集,請參閱動作表格。

作業 IAM 動作 條件鍵 可能的值 (s) 存取層級

AssociateApi

appsync:AssociateApi

寫入

AssociateMergedGraphqlApi

appsync:AssociateMergedGraphqlApi

寫入

appsync:AssociateSourceGraphqlApi

寫入

AssociateSourceGraphqlApi

appsync:AssociateMergedGraphqlApi

寫入

appsync:AssociateSourceGraphqlApi

寫入

CreateApi

appsync:CreateApi

寫入

appsync:TagResource

標記、寫入

iam:PassRole

iam:PassedToService

appsync.amazonaws.com

寫入

CreateApiCache

appsync:CreateApiCache

寫入

CreateApiKey

appsync:CreateApiKey

寫入

CreateChannelNamespace

appsync:CreateChannelNamespace

寫入

appsync:TagResource

標記、寫入

CreateDataSource

appsync:CreateDataSource

寫入

iam:PassRole

iam:PassedToService

appsync.amazonaws.com

寫入

CreateDomainName

appsync:CreateDomainName

寫入

appsync:TagResource

標記、寫入

CreateFunction

appsync:CreateFunction

寫入

CreateGraphqlApi

appsync:CreateGraphqlApi

寫入

appsync:TagResource

標記、寫入

iam:PassRole

iam:PassedToService

appsync.amazonaws.com

寫入

CreateResolver

appsync:CreateResolver

寫入

CreateType

appsync:CreateType

寫入

DeleteApi

appsync:DeleteApi

寫入

DeleteApiCache

appsync:DeleteApiCache

寫入

DeleteApiKey

appsync:DeleteApiKey

寫入

DeleteChannelNamespace

appsync:DeleteChannelNamespace

寫入

DeleteDataSource

appsync:DeleteDataSource

寫入

DeleteDomainName

appsync:DeleteDomainName

寫入

DeleteFunction

appsync:DeleteFunction

寫入

DeleteGraphqlApi

appsync:DeleteGraphqlApi

寫入

DeleteResolver

appsync:DeleteResolver

寫入

DeleteType

appsync:DeleteType

寫入

DisassociateApi

appsync:DisassociateApi

寫入

DisassociateMergedGraphqlApi

appsync:DisassociateMergedGraphqlApi

寫入

DisassociateSourceGraphqlApi

appsync:DisassociateSourceGraphqlApi

寫入

EvaluateCode

appsync:EvaluateCode

讀取

EvaluateMappingTemplate

appsync:EvaluateMappingTemplate

讀取

FlushApiCache

appync:FlushApiCache

寫入

GetApi

appsync:GetApi

讀取

GetApiAssociation

appsync:GetApiAssociation

讀取

GetApiCache

appsync:GetApiCache

讀取

GetChannelNamespace

appsync:GetChannelNamespace

讀取

GetDataSource

appsync:GetDataSource

讀取

GetDataSourceIntrospection

appsync:GetDataSourceIntrospection

讀取

GetDomainName

appsync:GetDomainName

讀取

GetFunction

appsync:GetFunction

讀取

GetGraphqlApi

appync:GetGraphqlApi

讀取

GetGraphqlApiEnvironmentVariables

appsync:GetGraphqlApiEnvironmentVariables

讀取

GetIntrospectionSchema

appync:GetIntrospectionSchema

讀取

GetResolver

appsync:GetResolver

讀取

GetSchemaCreationStatus

appsync:GetSchemaCreationStatus

讀取

GetSourceApiAssociation

appsync:GetSourceApiAssociation

讀取

GetType

appsync:GetType

讀取

ListApiKeys

appsync:ListApiKeys

清單

ListApis

appsync:ListApis

清單

ListChannelNamespaces

appsync:ListChannelNamespaces

清單

ListDataSources

appsync:ListDataSources

清單

ListDomainNames

appsync:ListDomainNames

清單

ListFunctions

appsync:ListFunctions

清單

ListGraphqlApis

appsync:ListGraphqlApis

清單

ListResolvers

appsync:ListResolvers

清單

ListResolversByFunction

appsync:ListResolversByFunction

清單

ListSourceApiAssociations

appsync:ListSourceApiAssociations

清單

ListTagsForResource

appsync:ListTagsForResource

讀取

ListTypes

appsync:ListTypes

清單

ListTypesByAssociation

appsync:ListTypesByAssociation

清單

PutGraphqlApiEnvironmentVariables

appsync:PutGraphqlApiEnvironmentVariables

寫入

StartDataSourceIntrospection

appsync:StartDataSourceIntrospection

寫入

StartSchemaCreation

appsync:StartSchemaCreation

寫入

StartSchemaMerge

appsync:StartSchemaMerge

寫入

TagResource

appsync:TagResource

標記、寫入

UntagResource

appsync:UntagResource

標記、寫入

UpdateApi

appsync:UpdateApi

寫入

iam:PassRole

iam:PassedToService

appsync.amazonaws.com

寫入

UpdateApiCache

appsync:UpdateApiCache

寫入

UpdateApiKey

appsync:UpdateApiKey

寫入

UpdateChannelNamespace

appsync:UpdateChannelNamespace

寫入

UpdateDataSource

appsync:UpdateDataSource

寫入

iam:PassRole

iam:PassedToService

appsync.amazonaws.com

寫入

UpdateDomainName

appsync:UpdateDomainName

寫入

UpdateFunction

appsync:UpdateFunction

寫入

UpdateGraphqlApi

appsync:UpdateGraphqlApi

寫入

iam:PassRole

iam:PassedToService

appsync.amazonaws.com

寫入

UpdateResolver

appsync:UpdateResolver

寫入

UpdateSourceApiAssociation

appsync:UpdateSourceApiAssociation

寫入

UpdateType

appsync:UpdateType

寫入

AWS AppSync 定義的動作

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

動作 說明 資源類型 (*必填項目) 條件索引鍵 存取層級

AssociateApi

准許將 GraphQL API 連接至 AppSync 中的自訂網域名稱

網域*

aws:ResourceTag/${TagKey}

寫入

AssociateMergedGraphqlApi

准許將合併的 API 與來源 API 建立關聯

graphqlapi*

aws:ResourceTag/${TagKey}

寫入

AssociateSourceGraphqlApi

准許將來源 API 與合併的 API 建立關聯

graphqlapi*

aws:ResourceTag/${TagKey}

寫入

CreateApi

准許建立 API

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

寫入

CreateApiCache

准許在 AppSync 中建立 API 快取

寫入

CreateApiKey

准許建立唯一金鑰,您可以分配給執行 API 的用戶端

寫入

CreateChannelNamespace

准許建立頻道命名空間

channelNamespace*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

寫入

CreateDataSource

准許建立資料來源

寫入

CreateDomainName

准許在 AppSync 中建立自訂網域名稱

網域*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

寫入

CreateFunction

准許建立新函數

寫入

CreateGraphqlApi

准許建立 GraphQL API,這是最上層 AppSync 資源

appsync:Visibility

aws:RequestTag/${TagKey}

aws:TagKeys

寫入

CreateResolver

准許建立解析程式。解析程式會將傳入的請求轉換成資料來源可理解的格式,並將資料來源的回應轉換成 GraphQL

寫入

CreateType

准許建立類型

寫入

DeleteApi

准許刪除 API。這也會清除該 API 之下的每個 AppSync 資源

api*

aws:ResourceTag/${TagKey}

寫入

DeleteApiCache

准許刪除 AppSync 中的 API 快取

寫入

DeleteApiKey

准許刪除 API 金鑰

寫入

DeleteChannelNamespace

准許刪除頻道命名空間

channelNamespace*

aws:ResourceTag/${TagKey}

寫入

DeleteDataSource

准許刪除資料來源

寫入

DeleteDomainName

准許在 AppSync 中刪除自訂網域名稱

網域*

aws:ResourceTag/${TagKey}

寫入

DeleteFunction

准許刪除函數

寫入

DeleteGraphqlApi

准許刪除 GraphQL API。這也會清除該 API 之下的每個 AppSync 資源

graphqlapi*

aws:ResourceTag/${TagKey}

寫入

DeleteResolver

准許刪除解析程式

寫入

DeleteType

准許刪除類型

寫入

DisassociateApi

准許取消將 GraphQL API 連接至 AppSync 中的自訂域名稱

網域*

aws:ResourceTag/${TagKey}

寫入

DisassociateMergedGraphqlApi

准許從來源 API 識別的合併 API 中移除關聯的來源 API

mergedApiAssociation*

寫入

DisassociateSourceGraphqlApi

准許從來源 API 識別的合併 API 中移除關聯的合併 API

sourceApiAssociation*

寫入

EvaluateCode

准許使用執行時間和相關內容評估程式碼

讀取

EvaluateMappingTemplate

准許評估範本映射

讀取

EventConnect

准許連線至事件 API

api*

aws:ResourceTag/${TagKey}

寫入

EventPublish

准許將事件發佈至頻道命名空間

channelNamespace*

aws:ResourceTag/${TagKey}

寫入

EventSubscribe

准許訂閱頻道命名空間

channelNamespace*

aws:ResourceTag/${TagKey}

寫入

FlushApiCache

准許在 AppSync 中清除 API 快取

寫入

GetApi

准許擷取 API

api*

aws:ResourceTag/${TagKey}

讀取

GetApiAssociation

准許讀取 AppSync 中的自訂網域名稱 - GraphQL API 關聯詳細資訊

網域*

aws:ResourceTag/${TagKey}

讀取

GetApiCache

准許讀取 AppSync 中 API 快取的相關資訊

讀取

GetChannelNamespace

准許擷取頻道命名空間

channelNamespace*

aws:ResourceTag/${TagKey}

讀取

GetDataSource

准許擷取資料來源

讀取

GetDataSourceIntrospection

准許擷取資料來源自我檢查

讀取

GetDomainName

准許讀取 AppSync 中自訂網域名稱的相關資訊

網域*

aws:ResourceTag/${TagKey}

讀取

GetFunction

准許擷取函數

讀取

GetGraphqlApi

准許擷取 GraphQL API

graphqlapi*

aws:ResourceTag/${TagKey}

讀取

GetGraphqlApiEnvironmentVariables

准許擷取 GraphQL API 的環境變數

讀取

GetIntrospectionSchema

准許擷取 GraphQL API 的內部檢查結構描述

讀取

GetResolver

准許擷取解析程式

讀取

GetSchemaCreationStatus

准許擷取結構描述建立操作的最新狀態

讀取

GetSourceApiAssociation

准許讀取有關合併 API 相關來源 API 的資訊

sourceApiAssociation*

讀取

GetType

准許擷取類型

讀取

ListApiKeys

准許列出指定 API 的 API 金鑰

清單

ListApis

准許列出 APIs

aws:ResourceTag/${TagKey}

清單

ListChannelNamespaces

准許列出頻道命名空間

api*

aws:ResourceTag/${TagKey}

清單

ListDataSources

准許列出指定 API 的資料來源

清單

ListDomainNames

准許列舉 AppSync 中的自訂網域名稱

aws:ResourceTag/${TagKey}

清單

ListFunctions

准許列出指定 API 的功能

清單

ListGraphqlApis

准許列出 GraphQL API

清單

ListResolvers

准許列出指定 API 和類型的解析程式

清單

ListResolversByFunction

准許列出與特定函數相關聯的解析程式

清單

ListSourceApiAssociations

准許列出與指定合併 API 相關聯的來源 API

清單

ListTagsForResource

准許列出資源的標籤

api

aws:ResourceTag/${TagKey}

讀取

channelNamespace

aws:ResourceTag/${TagKey}

網域

aws:ResourceTag/${TagKey}

graphqlapi

aws:ResourceTag/${TagKey}

ListTypes

准許列出指定 API 的類型

清單

ListTypesByAssociation

准許列出指定合併 API 和來源 API 關聯的類型

清單

PutGraphqlApiEnvironmentVariables

准許更新 GraphQL API 的環境變數

寫入

SetWebACL

准許設定 web ACL

許可管理、寫入

StartDataSourceIntrospection

准許自我檢查資料來源

寫入

StartSchemaCreation

准許將新結構描述新增至 GraphQL API。這個操作為非同步 - GetSchemaCreationStatus 可以顯示操作何時完成

寫入

StartSchemaMerge

准許對指定合併 API 和關聯來源 API 啟動結構描述合併

sourceApiAssociation*

寫入

TagResource

准許標記資源

api

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

標記、寫入

channelNamespace

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

網域

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

graphqlapi

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

UntagResource

准許取消標記資源

api

aws:ResourceTag/${TagKey}

aws:TagKeys

標記、寫入

channelNamespace

aws:ResourceTag/${TagKey}

aws:TagKeys

網域

aws:ResourceTag/${TagKey}

aws:TagKeys

graphqlapi

aws:ResourceTag/${TagKey}

aws:TagKeys

UpdateApi

准許更新 API

api*

aws:ResourceTag/${TagKey}

寫入

UpdateApiCache

准許在 AppSync 中更新 API 快取

寫入

UpdateApiKey

准許更新指定 API 的 API 金鑰

寫入

UpdateChannelNamespace

准許更新頻道命名空間

channelNamespace*

aws:ResourceTag/${TagKey}

寫入

UpdateDataSource

准許更新資料來源

寫入

UpdateDomainName

准許更新 AppSync 中的自訂網域名稱

網域*

aws:ResourceTag/${TagKey}

寫入

UpdateFunction

准許更新現有函數

寫入

UpdateGraphqlApi

准許更新 GraphQL API

graphqlapi*

aws:ResourceTag/${TagKey}

寫入

UpdateResolver

准許更新解析程式

寫入

UpdateSourceApiAssociation

准許更新合併 API 來源 API 關聯

sourceApiAssociation*

寫入

UpdateType

准許更新類型

寫入

AWS AppSync 的僅限許可動作

下列動作是由 AWS AppSync 定義,但無法透過任何 API 操作直接叫用。它們只能在 IAM 政策陳述式中使用,以授予或拒絕許可。

動作 說明 資源類型 (*必填項目) 條件索引鍵 存取層級

AssociateWebACL

准許將 Web ACL 和資源建立關聯

api

aws:ResourceTag/${TagKey}

寫入

graphqlapi

aws:ResourceTag/${TagKey}

DeleteResourcePolicy

准許移除資源政策

寫入

DisassociateWebACL

准許取消 Web ACL 和資源的關聯

api

aws:ResourceTag/${TagKey}

寫入

graphqlapi

aws:ResourceTag/${TagKey}

GetResourcePolicy

准許讀取資源政策

讀取

GetWebACLForResource

准許取得資源的相關聯 Web ACLs

api

aws:ResourceTag/${TagKey}

讀取

graphqlapi

aws:ResourceTag/${TagKey}

GraphQL

准許將 GraphQL 查詢傳送至 GraphQL API

欄位*

寫入

graphqlapi*

aws:ResourceTag/${TagKey}

ListResourcesForWebACL

准許取得 Web ACL 的相關資源

清單

PutResourcePolicy

准許設定資源政策

寫入

SourceGraphQL

准許將 GraphQL 查詢傳送至合併 API 之來源 API

欄位*

寫入

graphqlapi*

aws:ResourceTag/${TagKey}

AWS AppSync 定義的資源類型

此服務會定義下列資源類型,並可用在 IAM 許可政策陳述式的 Resource 元素中。

資源類型 ARN 條件索引鍵

api

arn:${Partition}:appsync:${Region}:${Account}:apis/${ApiId}

aws:ResourceTag/${TagKey}

channelNamespace

arn:${Partition}:appsync:${Region}:${Account}:apis/${ApiId}/channelNamespace/${ChannelNamespaceName}

aws:ResourceTag/${TagKey}

資料來源

arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/datasources/${DatasourceName}

網域

arn:${Partition}:appsync:${Region}:${Account}:domainnames/${DomainName}

aws:ResourceTag/${TagKey}

欄位

arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/types/${TypeName}/fields/${FieldName}

函數

arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/functions/${FunctionId}

graphqlapi

arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}

aws:ResourceTag/${TagKey}

mergedApiAssociation

arn:${Partition}:appsync:${Region}:${Account}:apis/${SourceGraphQLAPIId}/mergedApiAssociations/${Associationid}

sourceApiAssociation

arn:${Partition}:appsync:${Region}:${Account}:apis/${MergedGraphQLAPIId}/sourceApiAssociations/${Associationid}

類型

arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/types/${TypeName}

AWS AppSync 的條件索引鍵

AWS AppSync 定義了下列條件索引鍵,可用於 IAM 政策的 Condition元素。

條件索引鍵 描述 Type

appync:Visibility

依 API 的可見性篩選存取權

String

aws:RequestTag/${TagKey}

依請求中的標籤鍵值組篩選存取權

String

aws:ResourceTag/${TagKey}

依連接到資源的標籤鍵值對篩選存取權

String

aws:TagKeys

依請求中是否存在標籤索引鍵來篩選存取

ArrayOfString