翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS AppSyncのアクション、リソース、および条件キー
AWS AppSync (サービスプレフィックス: appsync
) では、 アクセスIAM許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
リファレンス:
-
このサービスを設定する方法について説明します。
-
API このサービスで使用可能なオペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
AWS AppSyncで定義されるアクション
IAM ポリシーステートメントの Action
要素では、以下のアクションを指定できます。ポリシーを使用して、 AWSでオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合、通常、同じ名前のAPIオペレーションまたはCLIコマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource
要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれている場合は、ARNそのアクションを含むステートメントでそのタイプの を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource
要素を使用してリソースアクセスを制限する場合は、必要なリソースタイプごとに ARNまたは パターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition
要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
---|---|---|---|---|---|
AssociateApi | のカスタムドメイン名APIに GraphQL をアタッチする許可を付与 AppSync | 書き込み | |||
AssociateMergedGraphqlApi | マージされた をAPIソースに関連付ける許可を付与 API | 書き込み | |||
AssociateSourceGraphqlApi | マージされた にソースAPIを関連付ける許可を付与 API | 書き込み | |||
CreateApi | を作成する許可を付与 API | 書き込み |
iam:CreateServiceLinkedRole |
||
CreateApiCache | で APIキャッシュを作成する許可を付与 AppSync | 書き込み | |||
CreateApiKey | を実行しているクライアントに配布できる一意のキーを作成する許可を付与 API | 書き込み | |||
CreateChannelNamespace | チャネル名前空間を作成する許可を付与 | 書き込み | |||
CreateDataSource | データソースを作成するアクセス許可を付与 | 書き込み | |||
CreateDomainName | でカスタムドメイン名を作成する許可を付与 AppSync | 書き込み | |||
CreateFunction | 新しい関数を作成する許可を付与 | 書き込み | |||
CreateGraphqlApi | 最上位 AppSync リソースAPIである GraphQL を作成する許可を付与 | 書き込み |
iam:CreateServiceLinkedRole |
||
CreateResolver | リゾルバーを作成するアクセス許可を付与。リゾルバーは、受信リクエストをデータソースが理解できる形式に変換し、データソースのレスポンスを GraphQL に変換 | 書き込み | |||
CreateType | タイプを作成するためのアクセス許可を付与 | 書き込み | |||
DeleteApi | を削除する許可を付与API。これにより、以下のすべての AppSync リソースもクリーンアップされます。 API | 書き込み | |||
DeleteApiCache | で APIキャッシュを削除する許可を付与 AppSync | 書き込み | |||
DeleteApiKey | API キーを削除する許可を付与 | 書き込み | |||
DeleteChannelNamespace | チャネル名前空間を削除する許可を付与 | 書き込み | |||
DeleteDataSource | データソースを削除するアクセス許可を付与 | 書き込み | |||
DeleteDomainName | でカスタムドメイン名を削除する許可を付与 AppSync | 書き込み | |||
DeleteFunction | 関数を削除する許可を付与 | 書き込み | |||
DeleteGraphqlApi | GraphQL API を削除する許可を付与。これにより、以下のすべての AppSync リソースもクリーンアップされます。 API | 書き込み | |||
DeleteResolver | Resolver を削除する許可を付与 | 書き込み | |||
DeleteResourcePolicy[アクセス許可のみ] | リソースポリシーを削除する許可を付与 | 書き込み | |||
DeleteType | タイプを削除する許可を付与 | 書き込み | |||
DisassociateApi | のカスタムドメイン名APIに GraphQL をデタッチする許可を付与 AppSync | 書き込み | |||
DisassociateMergedGraphqlApi | ソースによってAPI識別されるマージされた APIから関連付けられたソースを削除する許可を付与 API | 書き込み | |||
DisassociateSourceGraphqlApi | マージされた によってAPI識別されたマージされた APIから関連付けられたソースを削除する許可を付与 API | 書き込み | |||
EvaluateCode | ランタイムとコンテキストを使用してコードを評価するアクセス許可を付与 | 読み取り | |||
EvaluateMappingTemplate | テンプレートマッピングを評価する許可を付与 | 読み取り | |||
EventConnect | イベントに接続する許可を付与 API | 書き込み | |||
EventPublish | チャネル名前空間にイベントを発行する許可を付与 | 書き込み | |||
EventSubscribe | チャネル名前空間をサブスクライブする許可を付与 | 書き込み | |||
FlushApiCache | で APIキャッシュをフラッシュする許可を付与 AppSync | 書き込み | |||
GetApi | を取得する許可を付与 API | 読み取り | |||
GetApiAssociation | カスタムドメイン名を読み取るアクセス許可を付与 - の GraphQL API関連付けの詳細 AppSync | 読み取り | |||
GetApiCache | の API キャッシュに関する情報を読み取る許可を付与 AppSync | 読み取り | |||
GetChannelNamespace | チャネル名前空間を取得する許可を付与 | 読み取り | |||
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 | リスト | |||
ListApis | 一覧表示する許可を付与 APIs | リスト | |||
ListChannelNamespaces | チャネル名前空間を一覧表示する許可を付与 | リスト | |||
ListDataSources | 特定の のデータソースを一覧表示する許可を付与 API | リスト | |||
ListDomainNames | でカスタムドメイン名を列挙する許可を付与 AppSync | リスト | |||
ListFunctions | 特定の の関数を一覧表示する許可を付与 API | リスト | |||
ListGraphqlApis | GraphQL を一覧表示する許可を付与 APIs | リスト | |||
ListResolvers | 特定の APIおよびタイプのリゾルバーを一覧表示する許可を付与 | リスト | |||
ListResolversByFunction | 特定の関数に関連付けられたリゾルバーを一覧表示する許可を付与 | リスト | |||
ListSourceApiAssociations | 特定のマージされた APIs に関連付けられたソースを一覧表示する許可を付与 API | リスト | |||
ListTagsForResource | リソースのタグを一覧表示する許可を付与 | 読み取り | |||
ListTypes | 特定の のタイプを一覧表示する許可を付与 API | リスト | |||
ListTypesByAssociation | 特定のマージされた関連付けAPIとソースAPI関連付けのタイプを一覧表示する許可を付与 | リスト | |||
PutGraphqlApiEnvironmentVariables | GraphQL の環境変数を更新する許可を付与 API | 書き込み | |||
PutResourcePolicy[アクセス許可のみ] | ソースポリシーを設定する許可を付与 | 書き込み | |||
SetWebACL | ウェブを設定する許可を付与 ACL | 書き込み | |||
SourceGraphQL[アクセス許可のみ] | マージされた API のソースに GraphQL クエリを送信する許可を付与 API | 書き込み | |||
StartDataSourceIntrospection | データソースをイントロスペクトするための許可を付与 | 書き込み | |||
StartSchemaCreation | GraphQL に新しいスキーマを追加する許可を付与API。このオペレーションは非同期で、完了すると GetSchemaCreationStatus 表示できます。 | 書き込み | |||
StartSchemaMerge | 特定のマージされたソースAPIと関連付けられたソースのスキーママージを開始する許可を付与 API | 書き込み | |||
TagResource | リソースにタグを付けるアクセス許可を付与 | タグ付け | |||
UntagResource | リソースのタグを解除する許可を付与 | Tagging | |||
UpdateApi | を更新する許可を付与 API | 書き込み |
iam:CreateServiceLinkedRole |
||
UpdateApiCache | で APIキャッシュを更新する許可を付与 AppSync | 書き込み | |||
UpdateApiKey | 特定の の APIキーを更新する許可を付与 API | 書き込み | |||
UpdateChannelNamespace | チャネル名前空間を更新する許可を付与 | 書き込み | |||
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}
|
|
api |
arn:${Partition}:appsync:${Region}:${Account}:apis/${ApiId}
|
|
channelNamespace |
arn:${Partition}:appsync:${Region}:${Account}:apis/${ApiId}/channelNamespace/${ChannelNamespaceName}
|
AWS AppSync の条件キー
AWS AppSync は、 IAMポリシーの Condition
要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、「使用できるグローバル条件キー」を参照してください。
条件キー | 説明 | [Type] (タイプ) |
---|---|---|
appsync:Visibility | の可視性によってアクセスをフィルタリングします API | 文字列 |
aws:RequestTag/${TagKey} | リクエスト内のタグキーと値のペアによるアクセスをフィルタリングします | 文字列 |
aws:ResourceTag/${TagKey} | リソースにアタッチされているタグのキーと値のペアでアクセスをフィルタリングします | 文字列 |
aws:TagKeys | リクエスト内のタグキーが存在するかどうかでアクセスをフィルタリングします | ArrayOfString |