Ações, recursos e chaves de condição para o AWS AppSync - Referência de autorização do serviço

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Ações, recursos e chaves de condição para o AWS AppSync

AWS AppSync (prefixo do serviço:appsync) fornece os seguintes recursos, ações e chaves de contexto de condição específicos do serviço para uso em IAM políticas de permissão.

Referências:

Ações definidas pelo AWS AppSync

Você pode especificar as seguintes ações no elemento Action de uma declaração de política do IAM. Use políticas para conceder permissões para executar uma operação na AWS. Quando você usa uma ação em uma política, geralmente permite ou nega acesso à API operação ou ao CLI comando com o mesmo nome. No entanto, em alguns casos, uma única ação controla o acesso a mais de uma operação. Como alternativa, algumas operações exigem várias ações diferentes.

A coluna Tipos de recursos na tabela Ações indica se cada ação é compatível com permissões no nível do recurso. Se não houver valor para essa coluna, você deverá especificar todos os recursos ("*") aos quais a política se aplica no elemento Resource de sua declaração de política. Se a coluna incluir um tipo de recurso, você poderá especificar um ARN desse tipo em uma declaração com essa ação. Se a ação tiver um ou mais recursos necessários, o chamador deverá ter permissão para usar a ação com esses recursos. Os recursos obrigatórios são indicados na tabela com um asterisco (*). Se você limitar o acesso aos recursos com o Resource elemento em uma IAM política, deverá incluir um padrão ARN ou para cada tipo de recurso necessário. Algumas ações oferecem suporte a vários tipos de recursos. Se o tipo de recurso for opcional (não indicado como obrigatório), você poderá optar por usar um dos tipos de recurso opcionais.

A coluna Chaves de condição na tabela Ações inclui chaves que você pode especificar em um elemento Condition da declaração de política. Para obter mais informações sobre as chaves de condição associadas aos recursos do serviço, consulte a coluna Chaves de condição da tabela Tipos de recursos.

nota

As chaves de condição do recurso estão listadas na tabela Tipos de recursos. Você pode encontrar um link para o tipo de recurso que se aplica a uma ação na coluna Tipos de recursos (*obrigatório) da tabela Ações. O tipo de recurso na tabela Tipos de recursos inclui a coluna Chaves de condição, que são as chaves de condição do recurso que se aplicam a uma ação na tabela Ações.

Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de ações.

Ações Descrição Nível de acesso Tipos de recursos (*necessários) Chaves de condição Ações dependentes
AssociateApi Concede permissão para anexar um GraphQL API a um nome de domínio personalizado no AppSync Escrever

domain*

AssociateMergedGraphqlApi Concede permissão para associar uma mesclagem API a uma fonte API Escrever

graphqlapi*

AssociateSourceGraphqlApi Concede permissão para associar uma fonte API a uma mesclada API Escrever

graphqlapi*

CreateApi Concede permissão para criar um API Escrever

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

iam:CreateServiceLinkedRole

CreateApiCache Concede permissão para criar um API cache no AppSync Escrever
CreateApiKey Concede permissão para criar uma chave exclusiva que você pode distribuir aos clientes que estão executando sua API Escrever
CreateChannelNamespace Concede permissão para criar um namespace de canal Escrever

channelNamespace*

aws:ResourceTag/${TagKey}

aws:RequestTag/${TagKey}

aws:TagKeys

CreateDataSource Concede permissão para criar uma fonte de dados Escrever
CreateDomainName Concede permissão para criar um nome de domínio personalizado no AppSync Escrever
CreateFunction Concede permissões para criar um novo objeto function Escrever
CreateGraphqlApi Concede permissão para criar um GraphQLAPI, que é o recurso de nível superior AppSync Escrever

aws:RequestTag/${TagKey}

aws:TagKeys

appsync:Visibility

iam:CreateServiceLinkedRole

CreateResolver Concede permissão para criar um resolvedor. Um resolvedor converte solicitações de entrada em um formato que uma fonte de dados pode compreender e converte as respostas da fonte de dados em GraphQL Escrever
CreateType Concede permissão para criar um tipo Escrever
DeleteApi Concede permissão para excluir umAPI. Isso também limpará todos os AppSync recursos abaixo desse API Escrever

api*

aws:ResourceTag/${TagKey}

DeleteApiCache Concede permissão para excluir um API cache no AppSync Escrever
DeleteApiKey Concede permissão para excluir uma API chave Escrever
DeleteChannelNamespace Concede permissão para excluir um namespace do canal Escrever

channelNamespace*

aws:ResourceTag/${TagKey}

DeleteDataSource Concede permissão para excluir uma fonte de dados Escrever
DeleteDomainName Concede permissão para excluir um nome de domínio personalizado no AppSync Escrever

domain*

DeleteFunction Concede permissão para excluir uma função Escrever
DeleteGraphqlApi Concede permissões para excluir uma Api GraphQL. Isso também limpará todos os AppSync recursos abaixo desse API Escrever

graphqlapi*

aws:ResourceTag/${TagKey}

DeleteResolver Concede permissão para excluir um resolvedor Escrever
DeleteResourcePolicy [somente permissão] Concede permissão para remover uma política de recurso Escrever
DeleteType Concede permissão para excluir um tipo Escrever
DisassociateApi Concede permissão para separar um API GraphQL de um nome de domínio personalizado no AppSync Escrever

domain*

DisassociateMergedGraphqlApi Concede permissão para remover uma fonte associada API de uma mesclagem API identificada pela fonte API Escrever

mergedApiAssociation*

DisassociateSourceGraphqlApi Concede permissão para remover uma fonte associada API de uma mesclagem API identificada pela mesclada API Escrever

sourceApiAssociation*

EvaluateCode Concede permissão para avaliar o código com um runtime e contexto Leitura
EvaluateMappingTemplate Concede permissão para avaliar um mapeamento de modelo Leitura
EventConnect Concede permissão para se conectar a um evento API Escrever

api*

EventPublish Concede permissão para publicar eventos em um namespace do canal Escrever

channelNamespace*

EventSubscribe Concede permissão para se inscrever em um namespace de canal Escrever

channelNamespace*

FlushApiCache Concede permissão para limpar um API cache em AppSync Escrever
GetApi Concede permissão para recuperar um API Leitura

api*

aws:ResourceTag/${TagKey}

GetApiAssociation Concede permissão para ler o nome de domínio personalizado - detalhes da API associação GraphQL em AppSync Leitura

domain*

GetApiCache Concede permissão para ler informações sobre um API cache no AppSync Leitura
GetChannelNamespace Concede permissão para recuperar um namespace de canal Leitura

channelNamespace*

aws:ResourceTag/${TagKey}

GetDataSource Concede permissão para recuperar uma origem dos dados Leitura
GetDataSourceIntrospection Concede permissão para recuperar uma introspecção de fonte de dados Leitura
GetDomainName Concede permissão para ler informações sobre um nome de domínio personalizado no AppSync Leitura

domain*

GetFunction Concede permissão para recuperar uma função Leitura
GetGraphqlApi Concede permissão para recuperar um GraphQL API Leitura

graphqlapi*

aws:ResourceTag/${TagKey}

GetGraphqlApiEnvironmentVariables Concede permissão para recuperar as variáveis de ambiente para um GraphQL API Leitura
GetIntrospectionSchema Concede permissão para recuperar o esquema de introspecção para um GraphQL API Leitura
GetResolver Concede permissão para recuperar um resolvedor Leitura
GetResourcePolicy [somente permissão] Concede permissão para ler uma política de recurso Leitura
GetSchemaCreationStatus Concede permissão para recuperar o status atual de uma operação de criação de esquema Leitura
GetSourceApiAssociation Concede permissão para ler informações sobre uma fonte API associada mesclada API Leitura

sourceApiAssociation*

GetType Concede permissão para recuperar um tipo Leitura
GraphQL Concede permissão para enviar uma consulta GraphQL para um GraphQL API Escrever

field*

graphqlapi*

ListApiKeys Concede permissão para listar as API chaves de um determinado API Listar
ListApis Concede permissão para listar APIs Listar

aws:ResourceTag/${TagKey}

ListChannelNamespaces Concede permissão para listar o namespace do canal Listar

api*

aws:ResourceTag/${TagKey}

ListDataSources Concede permissão para listar as fontes de dados de um determinado API Listar
ListDomainNames Concede permissão para enumerar nomes de domínio personalizados no AppSync Listar
ListFunctions Concede permissão para listar as funções de um determinado API Listar
ListGraphqlApis Concede permissão para listar o GraphQL APIs Listar
ListResolvers Concede permissão para listar os resolvedores de um determinado tipo de API e Listar
ListResolversByFunction Concede permissão para listar os resolvedores associados a uma função específica Listar
ListSourceApiAssociations Concede permissão para listar a fonte APIs associada a uma determinada mesclagem API Listar
ListTagsForResource Concede permissão para listar as etiquetas de um recurso Leitura

api

channelNamespace

graphqlapi

aws:ResourceTag/${TagKey}

ListTypes Concede permissão para listar os tipos de um determinado API Listar
ListTypesByAssociation Concede permissão para listar os tipos de uma determinada associação mesclada API e de origem API Listar
PutGraphqlApiEnvironmentVariables Concede permissão para atualizar as variáveis de ambiente para um GraphQL API Escrever
PutResourcePolicy [somente permissão] Concede permissão para definir uma política de recursos Escrever
SetWebACL Concede permissão para configurar uma web ACL Escrever
SourceGraphQL [somente permissão] Concede permissão para enviar uma consulta GraphQL a uma fonte API de uma mesclada API Escrever

field*

graphqlapi*

StartDataSourceIntrospection Concede permissão para introspectar uma fonte de dados Escrever
StartSchemaCreation Concede permissão para adicionar um novo esquema ao seu GraphQLAPI. Esta operação é assíncrona - GetSchemaCreationStatus pode mostrar quando foi concluída Escrever
StartSchemaMerge Concede permissão para iniciar uma mesclagem de esquema para uma determinada fonte API mesclada e associada API Escrever

sourceApiAssociation*

TagResource Concede permissão para marcar um recurso Marcação

api*

channelNamespace*

graphqlapi*

api

channelNamespace

graphqlapi

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

UntagResource Concede permissão para desmarcar um recurso Tags

api*

channelNamespace*

graphqlapi*

api

channelNamespace

graphqlapi

aws:TagKeys

aws:ResourceTag/${TagKey}

UpdateApi Concede permissão para atualizar um API Escrever

api*

iam:CreateServiceLinkedRole

aws:ResourceTag/${TagKey}

UpdateApiCache Concede permissão para atualizar um API cache no AppSync Escrever
UpdateApiKey Concede permissão para atualizar uma API chave para um determinado API Escrever
UpdateChannelNamespace Concede permissão para atualizar o namespace de um canal Escrever

channelNamespace*

aws:ResourceTag/${TagKey}

UpdateDataSource Concede permissão para atualizar uma fonte de dados Escrever
UpdateDomainName Concede permissão para atualizar um nome de domínio personalizado no AppSync Escrever

domain*

UpdateFunction Concede permissão para atualizar uma função existente Escrever
UpdateGraphqlApi Concede permissão para atualizar um GraphQL API Escrever

graphqlapi*

iam:CreateServiceLinkedRole

aws:ResourceTag/${TagKey}

UpdateResolver Concede permissão para atualizar um resolvedor Escrever
UpdateSourceApiAssociation Concede permissão para atualizar uma associação de API origem API mesclada Escrever

sourceApiAssociation*

UpdateType Concede permissão para atualizar um tipo Escrever

Tipos de recursos definidos pelo AWS AppSync

Os seguintes tipos de recursos são definidos por este serviço e podem ser usados no elemento Resource de declarações de políticas de permissão do IAM. Cada ação na Tabela de ações identifica os tipos de recursos que podem ser especificados com essa ação. Um tipo de recurso também pode definir quais chaves de condição você pode incluir em uma política. Essas chaves são exibidas na última coluna da tabela Tipos de recursos. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de tipos de recursos.

Tipos de recursos ARN Chaves de condição
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}

Chaves de condição do AWS AppSync

AWS AppSync define as seguintes chaves de condição que podem ser usadas no Condition elemento de uma IAM política. É possível usar essas chaves para refinar ainda mais as condições sob as quais a declaração de política se aplica. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de chaves de condição.

Para exibir as chaves de condição globais disponíveis para todos os serviços, consulte Chaves de condição globais disponíveis.

Chaves de condição Descrição Tipo
appsync:Visibility Filtra o acesso pela visibilidade de um API String
aws:RequestTag/${TagKey} Filtra o acesso pelos pares de chave-valor da etiqueta na solicitação String
aws:ResourceTag/${TagKey} Filtra o acesso por pares chave-valor da etiqueta anexados ao recurso String
aws:TagKeys Filtra ações pela presença de chaves da etiqueta na solicitação ArrayOfString