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:
-
Saiba como configurar este serviço.
-
Veja uma lista das APIoperações disponíveis para esse serviço.
-
Saiba como proteger este serviço e seus recursos usando políticas de permissão do IAM.
Tópicos
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 | |||
AssociateMergedGraphqlApi | Concede permissão para associar uma mesclagem API a uma fonte API | Escrever | |||
AssociateSourceGraphqlApi | Concede permissão para associar uma fonte API a uma mesclada API | Escrever | |||
CreateApi | Concede permissão para criar um API | Escrever |
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 | |||
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 |
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 | |||
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 | |||
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 | |||
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 | |||
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 | |||
DisassociateMergedGraphqlApi | Concede permissão para remover uma fonte associada API de uma mesclagem API identificada pela fonte API | Escrever | |||
DisassociateSourceGraphqlApi | Concede permissão para remover uma fonte associada API de uma mesclagem API identificada pela mesclada API | Escrever | |||
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 | |||
EventPublish | Concede permissão para publicar eventos em um namespace do canal | Escrever | |||
EventSubscribe | Concede permissão para se inscrever em um namespace de canal | Escrever | |||
FlushApiCache | Concede permissão para limpar um API cache em AppSync | Escrever | |||
GetApi | Concede permissão para recuperar um API | Leitura | |||
GetApiAssociation | Concede permissão para ler o nome de domínio personalizado - detalhes da API associação GraphQL em AppSync | Leitura | |||
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 | |||
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 | |||
GetFunction | Concede permissão para recuperar uma função | Leitura | |||
GetGraphqlApi | Concede permissão para recuperar um GraphQL API | Leitura | |||
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 | |||
GetType | Concede permissão para recuperar um tipo | Leitura | |||
GraphQL | Concede permissão para enviar uma consulta GraphQL para um GraphQL API | Escrever | |||
ListApiKeys | Concede permissão para listar as API chaves de um determinado API | Listar | |||
ListApis | Concede permissão para listar APIs | Listar | |||
ListChannelNamespaces | Concede permissão para listar o namespace do canal | Listar | |||
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 | |||
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 | |||
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 | |||
TagResource | Concede permissão para marcar um recurso | Marcação | |||
UntagResource | Concede permissão para desmarcar um recurso | Tags | |||
UpdateApi | Concede permissão para atualizar um API | Escrever |
iam:CreateServiceLinkedRole |
||
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 | |||
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 | |||
UpdateFunction | Concede permissão para atualizar uma função existente | Escrever | |||
UpdateGraphqlApi | Concede permissão para atualizar um GraphQL API | Escrever |
iam:CreateServiceLinkedRole |
||
UpdateResolver | Concede permissão para atualizar um resolvedor | Escrever | |||
UpdateSourceApiAssociation | Concede permissão para atualizar uma associação de API origem API mesclada | Escrever | |||
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}
|
|
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}
|
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 |