Ações, recursos e chaves de condição do Amazon API Gateway Management - 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 do Amazon API Gateway Management

O Amazon API Gateway Management (prefixo de serviço: apigateway) fornece os recursos, ações e chaves de contexto de condição específicos do serviço a seguir para uso em políticas de permissão do IAM.

Referências:

Ações definidas pelo Amazon API Gateway Management

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
AddCertificateToDomain Concede permissão para adicionar certificados para autenticação TLS mútua a um nome de domínio. Esse é um controle de autorização adicional para gerenciar o DomainName recurso devido à natureza confidencial do mTLS. Gerenciamento de permissões

DomainName

DomainNames

CreateAccessAssociation Concede permissão para criar uma associação de acesso de uma fonte de associação de acesso a um nome de domínio personalizado para uso privado APIs Gerenciamento de permissões

PrivateDomainName

DELETE Concede permissão para excluir um recurso específico Write

ApiKey

Authorizer

BasePathMapping

ClientCertificate

Deployment

DocumentationPart

DocumentationVersion

DomainName

DomainNameAccessAssociation

GatewayResponse

Integration

IntegrationResponse

Method

MethodResponse

Model

PrivateBasePathMapping

PrivateDomainName

RequestValidator

Resource

RestApi

Stage

Tags

Template

UsagePlan

UsagePlanKey

VpcLink

aws:RequestTag/${TagKey}

aws:TagKeys

GET Concede permissão para ler um recurso específico Read

Account

ApiKey

ApiKeys

Authorizer

Authorizers

BasePathMapping

BasePathMappings

ClientCertificate

ClientCertificates

Deployment

Deployments

DocumentationPart

DocumentationParts

DocumentationVersion

DocumentationVersions

DomainName

DomainNameAccessAssociations

DomainNames

GatewayResponse

GatewayResponses

Integration

IntegrationResponse

Method

MethodResponse

Model

Models

PrivateBasePathMapping

PrivateBasePathMappings

PrivateDomainName

RequestValidator

RequestValidators

Resource

Resources

RestApi

RestApis

Sdk

Stage

Stages

Tags

UsagePlan

UsagePlanKey

UsagePlanKeys

UsagePlans

VpcLink

VpcLinks

PATCH Concede permissão para atualizar um recurso específico Write

Account

ApiKey

Authorizer

BasePathMapping

ClientCertificate

Deployment

DocumentationPart

DocumentationVersion

DomainName

GatewayResponse

Integration

IntegrationResponse

Method

MethodResponse

Model

PrivateBasePathMapping

PrivateDomainName

RequestValidator

Resource

RestApi

Stage

Template

UsagePlan

UsagePlanKey

VpcLink

aws:RequestTag/${TagKey}

aws:TagKeys

POST Concede permissão para criar um recurso específico Write

ApiKeys

Authorizers

BasePathMappings

ClientCertificates

Deployments

DocumentationParts

DocumentationVersions

DomainNameAccessAssociations

DomainNames

GatewayResponses

IntegrationResponse

MethodResponse

Models

PrivateBasePathMappings

RequestValidators

Resources

RestApis

Stages

UsagePlanKeys

UsagePlans

VpcLinks

aws:RequestTag/${TagKey}

aws:TagKeys

PUT Concede permissão para atualizar um recurso específico Escrever

DocumentationPart

GatewayResponse

IntegrationResponse

MethodResponse

RestApi

Tags

aws:RequestTag/${TagKey}

aws:TagKeys

RejectAccessAssociation Concede permissão para rejeitar uma associação de acesso existente pertencente a outra conta a um nome de domínio personalizado para uso privado APIs Gerenciamento de permissões

PrivateDomainName

RemoveCertificateFromDomain Concede permissão para remover certificados para autenticação TLS mútua de um nome de domínio. Esse é um controle de autorização adicional para gerenciar o DomainName recurso devido à natureza confidencial do mTLS. Gerenciamento de permissões

DomainName

DomainNames

SetWebACL Concede permissão para definir uma lista de controle de acesso (ACL) do WAF. Esse é um controle de autorização adicional para gerenciar o recurso Stage devido à natureza confidencial WebAcl de Gerenciamento de permissões

Stage

Stages

UpdateDomainNameManagementPolicy Concede permissão para atualizar a política de gerenciamento de um nome de domínio personalizado para uso privado APIs Gerenciamento de permissões

PrivateDomainName

UpdateDomainNamePolicy Concede permissão para atualizar a política de invocação de um nome de domínio personalizado para uso privado APIs Gerenciamento de permissões

DomainNames

PrivateDomainName

UpdateRestApiPolicy Concede permissão para gerenciar a política de recursos do IAM para uma API. Esse é um controle de autorização adicional para gerenciar uma API devido à natureza confidencial da política de recursos Permissions management

RestApi

RestApis

Tipos de recursos definidos pelo Amazon API Gateway

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
Account arn:${Partition}:apigateway:${Region}::/account
ApiKey arn:${Partition}:apigateway:${Region}::/apikeys/${ApiKeyId}

aws:ResourceTag/${TagKey}

ApiKeys arn:${Partition}:apigateway:${Region}::/apikeys

aws:ResourceTag/${TagKey}

Authorizer arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/authorizers/${AuthorizerId}

apigateway:Request/AuthorizerType

apigateway:Request/AuthorizerUri

apigateway:Resource/AuthorizerType

apigateway:Resource/AuthorizerUri

aws:ResourceTag/${TagKey}

Authorizers arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/authorizers

apigateway:Request/AuthorizerType

apigateway:Request/AuthorizerUri

aws:ResourceTag/${TagKey}

BasePathMapping arn:${Partition}:apigateway:${Region}::/domainnames/${DomainName}/basepathmappings/${BasePath}

aws:ResourceTag/${TagKey}

BasePathMappings arn:${Partition}:apigateway:${Region}::/domainnames/${DomainName}/basepathmappings

aws:ResourceTag/${TagKey}

ClientCertificate arn:${Partition}:apigateway:${Region}::/clientcertificates/${ClientCertificateId}

aws:ResourceTag/${TagKey}

ClientCertificates arn:${Partition}:apigateway:${Region}::/clientcertificates

aws:ResourceTag/${TagKey}

Deployment arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/deployments/${DeploymentId}

aws:ResourceTag/${TagKey}

Deployments arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/deployments

apigateway:Request/StageName

aws:ResourceTag/${TagKey}

DocumentationPart arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/documentation/parts/${DocumentationPartId}

aws:ResourceTag/${TagKey}

DocumentationParts arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/documentation/parts

aws:ResourceTag/${TagKey}

DocumentationVersion arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/documentation/versions/${DocumentationVersionId}

aws:ResourceTag/${TagKey}

DocumentationVersions arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/documentation/versions

aws:ResourceTag/${TagKey}

DomainName arn:${Partition}:apigateway:${Region}::/domainnames/${DomainName}

apigateway:Request/EndpointType

apigateway:Request/MtlsTrustStoreUri

apigateway:Request/MtlsTrustStoreVersion

apigateway:Request/SecurityPolicy

apigateway:Resource/EndpointType

apigateway:Resource/MtlsTrustStoreUri

apigateway:Resource/MtlsTrustStoreVersion

apigateway:Resource/SecurityPolicy

aws:ResourceTag/${TagKey}

DomainNames arn:${Partition}:apigateway:${Region}::/domainnames

apigateway:Request/EndpointType

apigateway:Request/MtlsTrustStoreUri

apigateway:Request/MtlsTrustStoreVersion

apigateway:Request/SecurityPolicy

aws:ResourceTag/${TagKey}

DomainNameAccessAssociation arn:${Partition}:apigateway:${Region}:${Account}:/domainnameaccessassociations/domainname/${DomainName}/${SourceType}/${SourceId}
DomainNameAccessAssociations arn:${Partition}:apigateway:${Region}:${Account}:/domainnameaccessassociations

apigateway:Request/AccessAssociationSource

apigateway:Request/DomainNameArn

aws:ResourceTag/${TagKey}

GatewayResponse arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/gatewayresponses/${ResponseType}

aws:ResourceTag/${TagKey}

GatewayResponses arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/gatewayresponses

aws:ResourceTag/${TagKey}

Integration arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/resources/${ResourceId}/methods/${HttpMethodType}/integration

aws:ResourceTag/${TagKey}

IntegrationResponse arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/resources/${ResourceId}/methods/${HttpMethodType}/integration/responses/${StatusCode}

aws:ResourceTag/${TagKey}

Method arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/resources/${ResourceId}/methods/${HttpMethodType}

apigateway:Request/ApiKeyRequired

apigateway:Request/RouteAuthorizationType

apigateway:Resource/ApiKeyRequired

apigateway:Resource/RouteAuthorizationType

aws:ResourceTag/${TagKey}

MethodResponse arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/resources/${ResourceId}/methods/${HttpMethodType}/responses/${StatusCode}

aws:ResourceTag/${TagKey}

Model arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/models/${ModelName}

aws:ResourceTag/${TagKey}

Models arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/models

aws:ResourceTag/${TagKey}

PrivateBasePathMapping arn:${Partition}:apigateway:${Region}::/domainnames/${DomainName}+${DomainIdentifier}/basepathmappings/${BasePath}

aws:ResourceTag/${TagKey}

PrivateBasePathMappings arn:${Partition}:apigateway:${Region}::/domainnames/${DomainName}+${DomainIdentifier}/basepathmappings

aws:ResourceTag/${TagKey}

PrivateDomainName arn:${Partition}:apigateway:${Region}:${Account}:/domainnames/${DomainName}+${DomainIdentifier}

apigateway:Request/EndpointType

apigateway:Resource/EndpointType

aws:ResourceTag/${TagKey}

RequestValidator arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/requestvalidators/${RequestValidatorId}

aws:ResourceTag/${TagKey}

RequestValidators arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/requestvalidators

aws:ResourceTag/${TagKey}

Resource arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/resources/${ResourceId}

aws:ResourceTag/${TagKey}

Resources arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/resources

aws:ResourceTag/${TagKey}

RestApi arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}

apigateway:Request/ApiKeyRequired

apigateway:Request/ApiName

apigateway:Request/AuthorizerType

apigateway:Request/AuthorizerUri

apigateway:Request/DisableExecuteApiEndpoint

apigateway:Request/EndpointType

apigateway:Request/RouteAuthorizationType

apigateway:Resource/ApiKeyRequired

apigateway:Resource/ApiName

apigateway:Resource/AuthorizerType

apigateway:Resource/AuthorizerUri

apigateway:Resource/DisableExecuteApiEndpoint

apigateway:Resource/EndpointType

apigateway:Resource/RouteAuthorizationType

aws:ResourceTag/${TagKey}

RestApis arn:${Partition}:apigateway:${Region}::/restapis

apigateway:Request/ApiKeyRequired

apigateway:Request/ApiName

apigateway:Request/AuthorizerType

apigateway:Request/AuthorizerUri

apigateway:Request/DisableExecuteApiEndpoint

apigateway:Request/EndpointType

apigateway:Request/RouteAuthorizationType

aws:ResourceTag/${TagKey}

Sdk arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/stages/${StageName}/sdks/${SdkType}

aws:ResourceTag/${TagKey}

Stage arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/stages/${StageName}

apigateway:Request/AccessLoggingDestination

apigateway:Request/AccessLoggingFormat

apigateway:Resource/AccessLoggingDestination

apigateway:Resource/AccessLoggingFormat

aws:ResourceTag/${TagKey}

Stages arn:${Partition}:apigateway:${Region}::/restapis/${RestApiId}/stages

apigateway:Request/AccessLoggingDestination

apigateway:Request/AccessLoggingFormat

aws:ResourceTag/${TagKey}

Template arn:${Partition}:apigateway:${Region}::/restapis/models/${ModelName}/template

aws:ResourceTag/${TagKey}

UsagePlan arn:${Partition}:apigateway:${Region}::/usageplans/${UsagePlanId}

aws:ResourceTag/${TagKey}

UsagePlans arn:${Partition}:apigateway:${Region}::/usageplans

aws:ResourceTag/${TagKey}

UsagePlanKey arn:${Partition}:apigateway:${Region}::/usageplans/${UsagePlanId}/keys/${Id}

aws:ResourceTag/${TagKey}

UsagePlanKeys arn:${Partition}:apigateway:${Region}::/usageplans/${UsagePlanId}/keys

aws:ResourceTag/${TagKey}

arn:${Partition}:apigateway:${Region}::/vpclinks/${VpcLinkId}

aws:ResourceTag/${TagKey}

arn:${Partition}:apigateway:${Region}::/vpclinks

aws:ResourceTag/${TagKey}

Tags arn:${Partition}:apigateway:${Region}::/tags/${UrlEncodedResourceARN}

Chaves de condição do Amazon API Gateway Management

O Amazon API Gateway Management define as seguintes chaves de condição que podem ser usadas no elemento Condition 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 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
apigateway:Request/AccessAssociationSource Filtra o acesso por fonte de associação de acesso. Disponível durante a CreateDomainNameAccessAssociation operação String
apigateway:Request/AccessLoggingDestination Filtra o acesso pelo destino do log de acesso. Disponível durante CreateStage as UpdateStage operações String
apigateway:Request/AccessLoggingFormat Filtra o acesso pelo formato do log de acesso. Disponível durante CreateStage as UpdateStage operações String
apigateway:Request/ApiKeyRequired Filtra o acesso com base na necessidade de uma chave de API ou não. Disponível durante CreateMethod as PutMethod operações e. Também disponível como coleção durante a importação e reimportação ArrayOfBool
apigateway:Request/ApiName Filtra o acesso pelo nome da API. Disponível durante CreateRestApi as UpdateRestApi operações String
apigateway:Request/AuthorizerType Filtra o acesso pelo tipo de autorizador na solicitação, por exemplo TOKEN, REQUEST, JWT. Disponível durante CreateAuthorizer UpdateAuthorizer e. Também disponível durante a importação e reimportação como ArrayOfString ArrayOfString
apigateway:Request/AuthorizerUri Filtra o acesso pelo URI de uma função de autorizador do Lambda. Disponível durante CreateAuthorizer UpdateAuthorizer e. Também disponível durante a importação e reimportação como ArrayOfString ArrayOfString
apigateway:Request/DisableExecuteApiEndpoint Filtra o acesso pelo status do endpoint execute-api padrão. Disponível durante CreateRestApi as DeleteRestApi operações Bool
apigateway:Request/DomainNameArn Filtra o acesso por ARN do nome de domínio. Disponível durante a CreateDomainNameAccessAssociation operação ARN
apigateway:Request/EndpointType Filtra o acesso pelo tipo de endpoint. Disponível durante as UpdateRestApi operações CreateDomainName UpdateDomainName CreateRestApi,, e ArrayOfString
apigateway:Request/MtlsTrustStoreUri Filtra o acesso pelo URI do truststore usado para autenticação TLS mútua. Disponível durante CreateDomainName as UpdateDomainName operações String
apigateway:Request/MtlsTrustStoreVersion Filtra o acesso pela versão do truststore usado para autenticação TLS mútua. Disponível durante CreateDomainName as UpdateDomainName operações String
apigateway:Request/RouteAuthorizationType Filtra o acesso por tipo de autorização, por exemplo, NONE, CUSTOM, JWT AWS_IAM, COGNITO_USER_POOLS. Disponível durante as PutMethod operações CreateMethod e Também disponível como coleção durante a importação ArrayOfString
apigateway:Request/SecurityPolicy Filtra o acesso pela versão do TLS. Disponível durante CreateDomain as UpdateDomain operações ArrayOfString
apigateway:Request/StageName Filtra o acesso pelo nome de estágio da implantação que você tenta criar. Disponível durante a CreateDeployment operação String
apigateway:Resource/AccessLoggingDestination Filtra o acesso pelo destino do log de acesso do recurso Stage atual. Disponível durante UpdateStage as DeleteStage operações String
apigateway:Resource/AccessLoggingFormat Filtra o acesso pelo formato do log de acesso do recurso Stage atual. Disponível durante UpdateStage as DeleteStage operações String
apigateway:Resource/ApiKeyRequired Filtra o acesso com base na necessidade de uma chave de API ou não para o recurso Method existente. Disponível durante PutMethod as DeleteMethod operações e. Também disponível como uma coleção durante a reimportação ArrayOfBool
apigateway:Resource/ApiName Filtra o acesso pelo nome da API do RestApi recurso existente. Disponível durante UpdateRestApi e durante DeleteRestApi as operações String
apigateway:Resource/AuthorizerType Filtra o acesso pelo tipo atual de autorizador, por exemplo TOKEN, REQUEST, JWT. Disponível durante UpdateAuthorizer e durante DeleteAuthorizer as operações. Também disponível durante a reimportação como ArrayOfString ArrayOfString
apigateway:Resource/AuthorizerUri Filtra o acesso pelo URI de uma função de autorizador do Lambda. Disponível durante UpdateAuthorizer e durante DeleteAuthorizer as operações. Também disponível durante a reimportação como ArrayOfString ArrayOfString
apigateway:Resource/DisableExecuteApiEndpoint Filtra o acesso por status do endpoint de execução da API padrão do recurso atual. RestApi Disponível durante UpdateRestApi e durante DeleteRestApi as operações Bool
apigateway:Resource/EndpointType Filtra o acesso pelo tipo de endpoint. Disponível durante as DeleteRestApi operações UpdateDomainName DeleteDomainName UpdateRestApi,, e ArrayOfString
apigateway:Resource/MtlsTrustStoreUri Filtra o acesso pelo URI do truststore usado para autenticação TLS mútua. Disponível durante UpdateDomainName e durante DeleteDomainName as operações String
apigateway:Resource/MtlsTrustStoreVersion Filtra o acesso pela versão do truststore usado para autenticação TLS mútua. Disponível durante UpdateDomainName e durante DeleteDomainName as operações String
apigateway:Resource/RouteAuthorizationType Filtra o acesso por tipo de autorização do recurso de método existente, por exemplo NONE, CUSTOM, JWT AWS_IAM, COGNITO_USER_POOLS. Disponível durante PutMethod as DeleteMethod operações e. Também disponível como uma coleção durante a reimportação ArrayOfString
apigateway:Resource/SecurityPolicy Filtra o acesso pela versão do TLS. Disponível durante UpdateDomain e durante DeleteDomain as operações ArrayOfString
aws:RequestTag/${TagKey} Filtra o acesso pelos pares de chave-valor da etiqueta na solicitação String
aws:ResourceTag/${TagKey} Filtra o acesso pelas etiquetas anexadas ao recurso String
aws:TagKeys Filtra o acesso pelas chaves da etiqueta na solicitação ArrayOfString