AWS AppSyncのアクション、リソース、および条件キー - サービス認可リファレンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS AppSyncのアクション、リソース、および条件キー

AWS AppSync (サービスプレフィックス: appsync) では、 アクセスIAM許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。

リファレンス:

AWS AppSyncで定義されるアクション

IAM ポリシーステートメントの Action 要素では、以下のアクションを指定できます。ポリシーを使用して、 AWSでオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合、通常、同じ名前のAPIオペレーションまたはCLIコマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。

[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれている場合は、ARNそのアクションを含むステートメントでそのタイプの を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource要素を使用してリソースアクセスを制限する場合は、必要なリソースタイプごとに ARNまたは パターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。

[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition 要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。

注記

リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。

以下の表の列の詳細については、「アクションテーブル」を参照してください。

アクション 説明 アクセスレベル リソースタイプ (* 必須) 条件キー 依存アクション
AssociateApi のカスタムドメイン名APIに GraphQL をアタッチする許可を付与 AppSync 書き込み

domain*

AssociateMergedGraphqlApi マージされた をAPIソースに関連付ける許可を付与 API 書き込み

graphqlapi*

AssociateSourceGraphqlApi マージされた にソースAPIを関連付ける許可を付与 API 書き込み

graphqlapi*

CreateApi を作成する許可を付与 API 書き込み

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

iam:CreateServiceLinkedRole

CreateApiCache で APIキャッシュを作成する許可を付与 AppSync 書き込み
CreateApiKey を実行しているクライアントに配布できる一意のキーを作成する許可を付与 API 書き込み
CreateChannelNamespace チャネル名前空間を作成する許可を付与 書き込み

channelNamespace*

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

CreateDataSource データソースを作成するアクセス許可を付与 書き込み
CreateDomainName でカスタムドメイン名を作成する許可を付与 AppSync 書き込み
CreateFunction 新しい関数を作成する許可を付与 書き込み
CreateGraphqlApi 最上位 AppSync リソースAPIである GraphQL を作成する許可を付与 書き込み

aws:RequestTag/${TagKey}

aws:TagKeys

appsync:Visibility

iam:CreateServiceLinkedRole

CreateResolver リゾルバーを作成するアクセス許可を付与。リゾルバーは、受信リクエストをデータソースが理解できる形式に変換し、データソースのレスポンスを GraphQL に変換 書き込み
CreateType タイプを作成するためのアクセス許可を付与 書き込み
DeleteApi を削除する許可を付与API。これにより、以下のすべての AppSync リソースもクリーンアップされます。 API 書き込み

api*

aws:ResourceTag/${TagKey}

DeleteApiCache で APIキャッシュを削除する許可を付与 AppSync 書き込み
DeleteApiKey API キーを削除する許可を付与 書き込み
DeleteChannelNamespace チャネル名前空間を削除する許可を付与 書き込み

channelNamespace*

aws:ResourceTag/${TagKey}

DeleteDataSource データソースを削除するアクセス許可を付与 書き込み
DeleteDomainName でカスタムドメイン名を削除する許可を付与 AppSync 書き込み

domain*

DeleteFunction 関数を削除する許可を付与 書き込み
DeleteGraphqlApi GraphQL API を削除する許可を付与。これにより、以下のすべての AppSync リソースもクリーンアップされます。 API 書き込み

graphqlapi*

aws:ResourceTag/${TagKey}

DeleteResolver Resolver を削除する許可を付与 書き込み
DeleteResourcePolicy[アクセス許可のみ] リソースポリシーを削除する許可を付与 書き込み
DeleteType タイプを削除する許可を付与 書き込み
DisassociateApi のカスタムドメイン名APIに GraphQL をデタッチする許可を付与 AppSync 書き込み

domain*

DisassociateMergedGraphqlApi ソースによってAPI識別されるマージされた APIから関連付けられたソースを削除する許可を付与 API 書き込み

mergedApiAssociation*

DisassociateSourceGraphqlApi マージされた によってAPI識別されたマージされた APIから関連付けられたソースを削除する許可を付与 API 書き込み

sourceApiAssociation*

EvaluateCode ランタイムとコンテキストを使用してコードを評価するアクセス許可を付与 読み取り
EvaluateMappingTemplate テンプレートマッピングを評価する許可を付与 読み取り
EventConnect イベントに接続する許可を付与 API 書き込み

api*

EventPublish チャネル名前空間にイベントを発行する許可を付与 書き込み

channelNamespace*

EventSubscribe チャネル名前空間をサブスクライブする許可を付与 書き込み

channelNamespace*

FlushApiCache で APIキャッシュをフラッシュする許可を付与 AppSync 書き込み
GetApi を取得する許可を付与 API 読み取り

api*

aws:ResourceTag/${TagKey}

GetApiAssociation カスタムドメイン名を読み取るアクセス許可を付与 - の GraphQL API関連付けの詳細 AppSync 読み取り

domain*

GetApiCache の API キャッシュに関する情報を読み取る許可を付与 AppSync 読み取り
GetChannelNamespace チャネル名前空間を取得する許可を付与 読み取り

channelNamespace*

aws:ResourceTag/${TagKey}

GetDataSource データソースを取得する許可を付与 読み取り
GetDataSourceIntrospection データソースのイントロスペクションを取得するための許可を付与 読み取り
GetDomainName のカスタムドメイン名に関する情報を読み取る許可を付与 AppSync 読み取り

domain*

GetFunction 関数を取得する許可を付与 読み取り
GetGraphqlApi GraphQL を取得する許可を付与 API 読み取り

graphqlapi*

aws:ResourceTag/${TagKey}

GetGraphqlApiEnvironmentVariables GraphQL の環境変数を取得する許可を付与 API 読み取り
GetIntrospectionSchema GraphQL のイントロスペクションスキーマを取得する許可を付与 API 読み取り
GetResolver リゾルバーを取得する許可を付与 読み取り
GetResourcePolicy[アクセス許可のみ] リソースポリシーを読み取る許可の付与 読み取り
GetSchemaCreationStatus スキーマ作成オペレーションの現在のステータスを取得する許可を付与 読み取り
GetSourceApiAssociation マージされたAPI関連ソースに関する情報を読み取る許可を付与 API 読み取り

sourceApiAssociation*

GetType タイプを取得する許可を付与 読み取り
GraphQL GraphQL クエリを GraphQL に送信する許可を付与 API 書き込み

field*

graphqlapi*

ListApiKeys 特定の のAPIキーを一覧表示する許可を付与 API リスト
ListApis 一覧表示する許可を付与 APIs リスト

aws:ResourceTag/${TagKey}

ListChannelNamespaces チャネル名前空間を一覧表示する許可を付与 リスト

api*

aws:ResourceTag/${TagKey}

ListDataSources 特定の のデータソースを一覧表示する許可を付与 API リスト
ListDomainNames でカスタムドメイン名を列挙する許可を付与 AppSync リスト
ListFunctions 特定の の関数を一覧表示する許可を付与 API リスト
ListGraphqlApis GraphQL を一覧表示する許可を付与 APIs リスト
ListResolvers 特定の APIおよびタイプのリゾルバーを一覧表示する許可を付与 リスト
ListResolversByFunction 特定の関数に関連付けられたリゾルバーを一覧表示する許可を付与 リスト
ListSourceApiAssociations 特定のマージされた APIs に関連付けられたソースを一覧表示する許可を付与 API リスト
ListTagsForResource リソースのタグを一覧表示する許可を付与 読み取り

api

channelNamespace

graphqlapi

aws:ResourceTag/${TagKey}

ListTypes 特定の のタイプを一覧表示する許可を付与 API リスト
ListTypesByAssociation 特定のマージされた関連付けAPIとソースAPI関連付けのタイプを一覧表示する許可を付与 リスト
PutGraphqlApiEnvironmentVariables GraphQL の環境変数を更新する許可を付与 API 書き込み
PutResourcePolicy[アクセス許可のみ] ソースポリシーを設定する許可を付与 書き込み
SetWebACL ウェブを設定する許可を付与 ACL 書き込み
SourceGraphQL[アクセス許可のみ] マージされた API のソースに GraphQL クエリを送信する許可を付与 API 書き込み

field*

graphqlapi*

StartDataSourceIntrospection データソースをイントロスペクトするための許可を付与 書き込み
StartSchemaCreation GraphQL に新しいスキーマを追加する許可を付与API。このオペレーションは非同期で、完了すると GetSchemaCreationStatus 表示できます。 書き込み
StartSchemaMerge 特定のマージされたソースAPIと関連付けられたソースのスキーママージを開始する許可を付与 API 書き込み

sourceApiAssociation*

TagResource リソースにタグを付けるアクセス許可を付与 タグ付け

api*

channelNamespace*

graphqlapi*

api

channelNamespace

graphqlapi

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

UntagResource リソースのタグを解除する許可を付与 Tagging

api*

channelNamespace*

graphqlapi*

api

channelNamespace

graphqlapi

aws:TagKeys

aws:ResourceTag/${TagKey}

UpdateApi を更新する許可を付与 API 書き込み

api*

iam:CreateServiceLinkedRole

aws:ResourceTag/${TagKey}

UpdateApiCache で APIキャッシュを更新する許可を付与 AppSync 書き込み
UpdateApiKey 特定の の APIキーを更新する許可を付与 API 書き込み
UpdateChannelNamespace チャネル名前空間を更新する許可を付与 書き込み

channelNamespace*

aws:ResourceTag/${TagKey}

UpdateDataSource データソースを更新する権限を付与 書き込み
UpdateDomainName でカスタムドメイン名を更新する許可を付与 AppSync 書き込み

domain*

UpdateFunction 既存の関数を更新する許可を付与 書き込み
UpdateGraphqlApi GraphQL を更新する許可を付与 API 書き込み

graphqlapi*

iam:CreateServiceLinkedRole

aws:ResourceTag/${TagKey}

UpdateResolver リゾルバーを更新する許可を付与 書き込み
UpdateSourceApiAssociation マージされたAPIソースのAPI関連付けを更新する許可を付与 書き込み

sourceApiAssociation*

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}

aws:ResourceTag/${TagKey}

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}

aws:ResourceTag/${TagKey}

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

aws:ResourceTag/${TagKey}

AWS AppSync の条件キー

AWS AppSync は、 IAMポリシーの Condition要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。

すべてのサービスで使用できるグローバル条件キーを確認するには、「使用できるグローバル条件キー」を参照してください。

条件キー 説明 [Type] (タイプ)
appsync:Visibility の可視性によってアクセスをフィルタリングします API 文字列
aws:RequestTag/${TagKey} リクエスト内のタグキーと値のペアによるアクセスをフィルタリングします 文字列
aws:ResourceTag/${TagKey} リソースにアタッチされているタグのキーと値のペアでアクセスをフィルタリングします 文字列
aws:TagKeys リクエスト内のタグキーが存在するかどうかでアクセスをフィルタリングします ArrayOfString