本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
的動作、資源和條件索引鍵 AWS AppSync
AWS AppSync (服務前置詞:appsync
) 提供下列服務特定資源、動作和條件內容金鑰,以供 IAM 權限政策使用。
參考資料:
-
了解如何設定此服務。
-
檢視可供此服務使用的 API 操作清單。
-
了解如何使用 IAM 許可政策來保護此服務及其資源。
AWS AppSync 定義的動作
您可在 IAM 政策陳述式的 Action
元素中指定以下動作。使用政策來授予在 AWS中執行操作的許可。在政策中使用動作時,通常會允許或拒絕存取相同名稱的 API 操作或 CLI 命令。不過,在某些情況下,單一動作可控制對多個操作的存取。或者,某些操作需要多種不同的動作。
「動作」資料表的資源類型欄會指出每個動作是否支援資源層級的許可。如果此欄沒有值,您必須在政策陳述式的 Resource
元素中指定政策適用的所有資源 ("*")。如果資料欄包含資源類型,則您可以在具有該動作的陳述式中指定該類型的 ARN。如果動作具有一或多個必要資源,呼叫者必須具有對這些資源使用動作的許可。表格中的必要資源會以星號 (*) 表示。如果您使用 IAM 政策中的 Resource
元素限制資源存取,則每種必要的資源類型必須要有 ARN 或模式。某些動作支援多種資源類型。如果資源類型是選用 (未顯示為必要),則您可以選擇使用其中一種選用資源類型。
「動作」資料表的條件索引鍵欄包含您可以在政策陳述式的 Condition
元素中指定的索引鍵。如需有關與服務資源相關聯之條件索引鍵的詳細資訊,請參閱「資源類型」資料表的條件索引鍵欄。
注意
資源條件索引鍵會列在資源類型資料表中。您可以在「動作」資料表的資源類型 (*必填) 欄中找到適用於動作的資源類型連結。「資源類型」資料表中的資源類型包括條件索引鍵欄,其中包含套用至「動作」資料表中動作的資源條件索引鍵。
如需下表各欄的詳細資訊,請參閱動作資料表。
動作 | 描述 | 存取層級 | 資源類型 (*必填項目) | 條件索引鍵 | 相依動作 |
---|---|---|---|---|---|
AssociateApi | 授予將 GraphQL API 附加到自訂網域名稱的權限 AppSync | 寫入 | |||
AssociateMergedGraphqlApi | 准許將合併的 API 與來源 API 建立關聯 | 寫入 | |||
AssociateSourceGraphqlApi | 准許將來源 API 與合併的 API 建立關聯 | 寫入 | |||
CreateApiCache | 授予在中建立 API 快取的權限 AppSync | 寫入 | |||
CreateApiKey | 准許建立唯一金鑰,您可以分配給執行 API 的用戶端 | 寫入 | |||
CreateDataSource | 准許建立資料來源 | 寫入 | |||
CreateDomainName | 授予在中建立自訂網域名稱的權限 AppSync | 寫入 | |||
CreateFunction | 准許建立新函數 | 寫入 | |||
CreateGraphqlApi | 授予建立 GraphQL API (最上層 AppSync 資源) 的權限 | 寫入 |
iam:CreateServiceLinkedRole |
||
CreateResolver | 准許建立解析程式。解析程式會將傳入的請求轉換成資料來源可理解的格式,並將資料來源的回應轉換成 GraphQL | 寫入 | |||
CreateType | 准許建立類型 | 寫入 | |||
DeleteApiCache | 授予刪除 API 緩存的權限 AppSync | 寫入 | |||
DeleteApiKey | 准許刪除 API 金鑰 | 寫入 | |||
DeleteDataSource | 准許刪除資料來源 | 寫入 | |||
DeleteDomainName | 授予刪除自訂網域名稱的權限 AppSync | 寫入 | |||
DeleteFunction | 准許刪除函數 | 寫入 | |||
DeleteGraphqlApi | 准許刪除 GraphQL API。這也將清理該 API 下面的每個 AppSync 資源 | 寫入 | |||
DeleteResolver | 准許刪除解析程式 | 寫入 | |||
DeleteResourcePolicy [僅限許可] | 准許移除資源政策 | 寫入 | |||
DeleteType | 准許刪除類型 | 寫入 | |||
DisassociateApi | 授予將 GraphQL API 分離至自訂網域名稱的權限 AppSync | 寫入 | |||
DisassociateMergedGraphqlApi | 准許從來源 API 識別的合併 API 中移除關聯的來源 API | 寫入 | |||
DisassociateSourceGraphqlApi | 准許從來源 API 識別的合併 API 中移除關聯的合併 API | 寫入 | |||
EvaluateCode | 准許使用執行時間和相關內容評估程式碼 | 讀取 | |||
EvaluateMappingTemplate | 准許評估範本映射 | 讀取 | |||
FlushApiCache | 授予刷新 API 緩存的權限 AppSync | 寫入 | |||
GetApiAssociation | 授予讀取自訂網域名稱-GraphQL API 關聯詳細資料的權限 AppSync | 讀取 | |||
GetApiCache | 授予讀取有關 API 緩存信息的權限 AppSync | 讀取 | |||
GetDataSource | 准許擷取資料來源 | 讀取 | |||
GetDataSourceIntrospection | 准許擷取資料來源自我檢查 | 讀取 | |||
GetDomainName | 授予讀取有關自訂網域名稱資訊的權限 AppSync | 讀取 | |||
GetFunction | 准許擷取函數 | 讀取 | |||
GetGraphqlApi | 准許擷取 GraphQL API | 讀取 | |||
GetGraphqlApiEnvironmentVariables | 授予擷取 GraphQL API 環境變數的權限 | 讀取 | |||
GetIntrospectionSchema | 准許擷取 GraphQL API 的內部檢查結構描述 | 讀取 | |||
GetResolver | 准許擷取解析程式 | 讀取 | |||
GetResourcePolicy [僅限許可] | 准許讀取資源政策 | 讀取 | |||
GetSchemaCreationStatus | 准許擷取結構描述建立操作的最新狀態 | 讀取 | |||
GetSourceApiAssociation | 准許讀取有關合併 API 相關來源 API 的資訊 | 讀取 | |||
GetType | 准許擷取類型 | 讀取 | |||
GraphQL | 准許將 GraphQL 查詢傳送至 GraphQL API | 寫入 | |||
ListApiKeys | 准許列出指定 API 的 API 金鑰 | 列出 | |||
ListDataSources | 准許列出指定 API 的資料來源 | 清單 | |||
ListDomainNames | 授予列舉自訂網域名稱的權限 AppSync | 清單 | |||
ListFunctions | 准許列出指定 API 的功能 | 列出 | |||
ListGraphqlApis | 准許列出 GraphQL API | 列出 | |||
ListResolvers | 准許列出指定 API 和類型的解析程式 | 列出 | |||
ListResolversByFunction | 准許列出與特定函數相關聯的解析程式 | 清單 | |||
ListSourceApiAssociations | 准許列出與指定合併 API 相關聯的來源 API | 清單 | |||
ListTagsForResource | 准許列出資源的標籤 | 讀取 | |||
ListTypes | 准許列出指定 API 的類型 | 清單 | |||
ListTypesByAssociation | 准許列出指定合併 API 和來源 API 關聯的類型 | 清單 | |||
PutGraphqlApiEnvironmentVariables | 授予更新 GraphQL API 環境變數的權限 | 寫入 | |||
PutResourcePolicy [僅限許可] | 准許設定資源政策 | 寫入 | |||
SetWebACL | 准許設定 web ACL | 寫入 | |||
SourceGraphQL [僅限許可] | 准許將 GraphQL 查詢傳送至合併 API 之來源 API | 寫入 | |||
StartDataSourceIntrospection | 准許自我檢查資料來源 | 寫入 | |||
StartSchemaCreation | 准許將新結構描述新增至 GraphQL API。此操作是異步的- GetSchemaCreationStatus 可以顯示何時完成 | 寫入 | |||
StartSchemaMerge | 准許對指定合併 API 和關聯來源 API 啟動結構描述合併 | 寫入 | |||
TagResource | 准許標記資源 | 標記 | |||
UntagResource | 准許取消標記資源 | 標記 | |||
UpdateApiCache | 授予更新 API 快取的權限 AppSync | 寫入 | |||
UpdateApiKey | 准許更新指定 API 的 API 金鑰 | 寫入 | |||
UpdateDataSource | 准許更新資料來源 | 寫入 | |||
UpdateDomainName | 授予更新自訂網域名稱的權限 AppSync | 寫入 | |||
UpdateFunction | 准許更新現有函數 | 寫入 | |||
UpdateGraphqlApi | 准許更新 GraphQL API | 寫入 |
iam:CreateServiceLinkedRole |
||
UpdateResolver | 准許更新解析程式 | 寫入 | |||
UpdateSourceApiAssociation | 准許更新合併 API 來源 API 關聯 | 寫入 | |||
UpdateType | 准許更新類型 | 寫入 |
AWS AppSync 定義的資源類型
此服務會定義下列資源類型,並可用在 IAM 許可政策陳述式的 Resource
元素中。動作資料表中的每個動作都會指明可使用該動作指定的資源類型。資源類型也能定義您可以在政策中包含哪些條件索引鍵。這些索引鍵都會顯示在「資源類型」資料表的最後一欄。如需下表各欄的詳細資訊,請參閱資源類型資料表。
資源類型 | ARN | 條件索引鍵 |
---|---|---|
datasource |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/datasources/${DatasourceName}
|
|
domain |
arn:${Partition}:appsync:${Region}:${Account}:domainnames/${DomainName}
|
|
graphqlapi |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}
|
|
field |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/types/${TypeName}/fields/${FieldName}
|
|
type |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/types/${TypeName}
|
|
function |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}/functions/${FunctionId}
|
|
sourceApiAssociation |
arn:${Partition}:appsync:${Region}:${Account}:apis/${MergedGraphQLAPIId}/sourceApiAssociations/${Associationid}
|
|
mergedApiAssociation |
arn:${Partition}:appsync:${Region}:${Account}:apis/${SourceGraphQLAPIId}/mergedApiAssociations/${Associationid}
|
AWS AppSync 的條件索引鍵
AWS AppSync 定義下列可用於 IAM 政策Condition
元素的條件金鑰。您可以使用這些索引鍵來縮小套用政策陳述式的條件。如需下表各欄的詳細資訊,請參閱條件索引鍵資料表。
若要檢視所有服務都可使用的全域條件索引鍵,請參閱可用全域條件索引鍵。
條件索引鍵 | 描述 | Type |
---|---|---|
appsync:Visibility | 依 API 的可見性篩選存取權 | 字串 |
aws:RequestTag/${TagKey} | 依請求中的標籤鍵值組篩選存取權 | 字串 |
aws:ResourceTag/${TagKey} | 依連接到資源的標籤鍵值對篩選存取權 | 字串 |
aws:TagKeys | 依請求中是否存在標籤索引鍵來篩選存取 | ArrayOfString |