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 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 nas políticas de permissão do IAM.
Referências:
-
Saiba como configurar este serviço.
-
Visualize uma lista das operações de API disponíveis para este 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 usa uma ação em uma política, você geralmente permite ou nega acesso à operação da API ou ao comando da CLI 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 instruçã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 elemento Resource
em uma política do IAM, deverá incluir um ARN ou padrão 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 uma API GraphQL a um nome de domínio personalizado no AppSync | Escrever | |||
AssociateMergedGraphqlApi | Concede permissão para associar uma API mesclada a uma API de origem | Escrever | |||
AssociateSourceGraphqlApi | Concede permissão para associar uma API de origem a uma API mesclada | Escrever | |||
CreateApiCache | Concede permissão para criar um cache de API no AppSync | Escrever | |||
CreateApiKey | Concede permissões para criar uma chave exclusiva que você pode distribuir para clientes que estão executando sua API | 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 uma API GraphQL, 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 | |||
DeleteApiCache | Concede permissão para excluir um cache de API no AppSync | Escrever | |||
DeleteApiKey | Concede permissão para excluir uma chave de API | 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 dessa 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 uma API GraphQL a um nome de domínio personalizado no AppSync | Escrever | |||
DisassociateMergedGraphqlApi | Concede permissão para remover uma API de origem associada de uma API mesclada identificada pela API de origem | Escrever | |||
DisassociateSourceGraphqlApi | Concede permissão para remover uma API de origem associada de uma API mesclada identificada pela API mesclada | 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 | |||
FlushApiCache | Concede permissão para liberar um cache de API em AppSync | Escrever | |||
GetApiAssociation | Concede permissão para ler o nome de domínio personalizado - detalhes da associação da API GraphQL em AppSync | Leitura | |||
GetApiCache | Concede permissão para ler informações sobre um cache de API no AppSync | 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 uma API GraphQL | Leitura | |||
GetGraphqlApiEnvironmentVariables | Concede permissão para recuperar as variáveis de ambiente para uma API GraphQL | Leitura | |||
GetIntrospectionSchema | Concede permissão para recuperar o esquema de introspecção de uma API GraphQL | 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 API de origem associada à API mesclada | Leitura | |||
GetType | Concede permissão para recuperar um tipo | Leitura | |||
GraphQL | Concede permissão para enviar uma consulta GraphQL a uma API GraphQL | Escrever | |||
ListApiKeys | Concede permissão para listar as chaves de API para uma determinada API | Lista | |||
ListDataSources | Concede permissão para listar as origens de dados de uma determinada API | Lista | |||
ListDomainNames | Concede permissão para enumerar nomes de domínio personalizados no AppSync | Lista | |||
ListFunctions | Concede permissão para listar as funções de uma determinada API | Lista | |||
ListGraphqlApis | Concede permissão para listar APIs GraphQL | Lista | |||
ListResolvers | Concede permissão para listar os resolvedores de uma determinada API e tipo | Lista | |||
ListResolversByFunction | Concede permissão para listar os resolvedores associados a uma função específica | Lista | |||
ListSourceApiAssociations | Concede permissão para listar APIs de origem associadas a uma determinada API mesclada | Lista | |||
ListTagsForResource | Concede permissão para listar as etiquetas de um recurso | Leitura | |||
ListTypes | Concede permissão para listar os tipos de uma determinada API | Lista | |||
ListTypesByAssociation | Concede permissão para listar os tipos para uma determinada API mesclada e associação de API de origem | Lista | |||
PutGraphqlApiEnvironmentVariables | Concede permissão para atualizar as variáveis de ambiente para uma API GraphQL | Escrever | |||
PutResourcePolicy [somente permissão] | Concede permissão para definir uma política de recursos | Escrever | |||
SetWebACL | Concede permissão para definir uma ACL Web | Escrever | |||
SourceGraphQL [somente permissão] | Concede permissão para enviar uma consulta GraphQL para uma API de origem de uma API mesclada | Escrever | |||
StartDataSourceIntrospection | Concede permissão para introspectar uma fonte de dados | Escrever | |||
StartSchemaCreation | Concede permissão para adicionar um novo esquema à sua API GraphQL. 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 API mesclada e API de origem associada | Escrever | |||
TagResource | Concede permissão para marcar um recurso | Marcação | |||
UntagResource | Concede permissão para desmarcar um recurso | Tags | |||
UpdateApiCache | Concede permissão para atualizar um cache de API no AppSync | Escrever | |||
UpdateApiKey | Concede permissão para atualizar uma chave de API para uma determinada API | 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 uma API GraphQL | Escrever |
iam:CreateServiceLinkedRole |
||
UpdateResolver | Concede permissão para atualizar um resolvedor | Escrever | |||
UpdateSourceApiAssociation | Concede permissão para atualizar uma associação de API de origem de 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}
|
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 política do IAM. É 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 visualizar 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 uma 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 |