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

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

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

Referências:

Ações definidas pelo AWS WAF

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 Resource types (Tipos de recursos) 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 ("*") 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. Os recursos obrigatórios são indicados na tabela com um asterisco (*). Se você especificar um ARN de permissão no nível do recurso em uma instrução que esteja usando essa ação, ele deverá ser desse tipo. 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, mas não o outro.

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
CreateByteMatchSet Concede permissão para criar um ByteMatchSet Write

bytematchset*

CreateGeoMatchSet Concede permissão para criar um GeoMatchSet Write

geomatchset*

CreateIPSet Concede permissão para criar um IPSet Write

ipset*

CreateRateBasedRule Concede permissão para criar uma RateBasedRule para limitar o volume de solicitações de um único endereço IP Write

ratebasedrule*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateRegexMatchSet Concede permissão para criar um RegexMatchSet Write

regexmatchset*

CreateRegexPatternSet Concede permissão para criar um RegexPatternSet Write

regexpatternset*

CreateRule Concede permissão para criar uma Rule para filtrar solicitações da Web Write

rule*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateRuleGroup Concede permissão para criar um RuleGroup, que é uma coleção de regras predefinidas que você pode usar em uma WebACL Write

rulegroup*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateSizeConstraintSet Concede permissão para criar um SizeConstraintSet Write

sizeconstraintset*

CreateSqlInjectionMatchSet Concede permissão para criar um SqlInjectionMatchSet Write

sqlinjectionmatchset*

CreateWebACL Concede permissão para criar uma WebACL, que contém regras para filtrar solicitações da Web Permissions management

webacl*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateWebACLMigrationStack Concede permissão para criar um modelo de ACL da Web do CloudFormation em um bucket do S3 com a finalidade de migrar a ACL da Web do AWS WAF Classic para o AWS WAF v2 Write

webacl*

s3:PutObject

CreateXssMatchSet Concede permissão para criar um XssMatchSet, que você usa para detectar solicitações que contêm ataques de desenvolvimento de scripts multiplataforma Write

xssmatchset*

DeleteByteMatchSet Concede permissão para excluir um ByteMatchSet Write

bytematchset*

DeleteGeoMatchSet Concede permissão para excluir um GeoMatchSet Write

geomatchset*

DeleteIPSet Concede permissão para excluir um IPSet Write

ipset*

DeleteLoggingConfiguration Concede permissão para excluir a LoggingConfiguration de uma ACL da Web Write

webacl*

DeletePermissionPolicy Concede permissão para excluir uma política do IAM de um grupo de regras Permissions management

rulegroup*

DeleteRateBasedRule Concede permissão para excluir uma RateBasedRule Write

ratebasedrule*

DeleteRegexMatchSet Concede permissão para excluir um RegexMatchSet Write

regexmatchset*

DeleteRegexPatternSet Concede permissão para excluir um RegexPatternSet Write

regexpatternset*

DeleteRule Concede permissão para excluir uma Rule Write

rule*

DeleteRuleGroup Concede permissão para excluir um RuleGroup Write

rulegroup*

DeleteSizeConstraintSet Concede permissão para excluir um SizeConstraintSet Write

sizeconstraintset*

DeleteSqlInjectionMatchSet Concede permissão para excluir um SqlInjectionMatchSet Write

sqlinjectionmatchset*

DeleteWebACL Concede permissão para excluir uma WebACL Permissions management

webacl*

DeleteXssMatchSet Concede permissão para excluir um XssMatchSet Write

xssmatchset*

GetByteMatchSet Concede permissão para recuperar um ByteMatchSet Read

bytematchset*

GetChangeToken Concede permissão para recuperar um token de alteração para usar em solicitações de criação, atualização e exclusão Read
GetChangeTokenStatus Concede permissão para recuperar o status de um token de alteração Read
GetGeoMatchSet Concede permissão para recuperar um GeoMatchSet Read

geomatchset*

GetIPSet Concede permissão para recuperar um IPSet Read

ipset*

GetLoggingConfiguration Concede permissão para recuperar uma LoggingConfiguration para uma ACL da Web Read

webacl*

GetPermissionPolicy Concede permissão para recuperar uma política do IAM para um grupo de regras Read

rulegroup*

GetRateBasedRule Concede permissão para recuperar uma RateBasedRule Read

ratebasedrule*

GetRateBasedRuleManagedKeys Concede permissão para recuperar a matriz de endereços IP que estão sendo bloqueados atualmente por uma RateBasedRule Read

ratebasedrule*

GetRegexMatchSet Concede permissão para recuperar um RegexMatchSet Read

regexmatchset*

GetRegexPatternSet Concede permissão para recuperar um RegexPatternSet Read

regexpatternset*

GetRule Concede permissão para recuperar uma Rule Read

rule*

GetRuleGroup Concede permissão para recuperar um RuleGroup Read

rulegroup*

GetSampledRequests Concede permissão para recuperar informações detalhadas sobre um conjunto de exemplos de solicitações da Web Read

rule

webacl

GetSizeConstraintSet Concede permissão para recuperar um SizeConstraintSet Read

sizeconstraintset*

GetSqlInjectionMatchSet Concede permissão para recuperar um SqlInjectionMatchSet Read

sqlinjectionmatchset*

GetWebACL Concede permissão para recuperar uma WebACL Read

webacl*

GetXssMatchSet Concede permissão para recuperar um XssMatchSet Read

xssmatchset*

ListActivatedRulesInRuleGroup Concede permissão para recuperar uma matriz de objetos ActivatedRule List
ListByteMatchSets Concede permissão para recuperar uma matriz de objetos ByteMatchSetSummary List
ListGeoMatchSets Concede permissão para recuperar uma matriz de objetos GeoMatchSetSummary List
ListIPSets Concede permissão para recuperar uma matriz de objetos IPSetSummary List
ListLoggingConfigurations Concede permissão para recuperar uma matriz de objetos LoggingConfiguration List
ListRateBasedRules Concede permissão para recuperar uma matriz de objetos RuleSummary List
ListRegexMatchSets Concede permissão para recuperar uma matriz de objetos RegexMatchSetSummary List
ListRegexPatternSets Concede permissão para recuperar uma matriz de objetos RegexPatternSetSummary List
ListRuleGroups Concede permissão para recuperar uma matriz de objetos RuleGroup List
ListRules Concede permissão para recuperar uma matriz de objetos RuleSummary List
ListSizeConstraintSets Concede permissão para recuperar uma matriz de objetos SizeConstraintSetSummary List
ListSqlInjectionMatchSets Concede permissão para recuperar uma matriz de objetos SqlInjectionMatchSet List
ListSubscribedRuleGroups Concede permissão para recuperar uma matriz de objetos RuleGroup nos quais você está inscrito List
ListTagsForResource Concede permissão para recuperar as etiquetas de um recurso Read

ratebasedrule

rule

rulegroup

webacl

ListWebACLs Concede permissão para recuperar uma matriz de objetos WebACLSummary List
ListXssMatchSets Concede permissão para recuperar uma matriz de objetos XssMatchSet List
PutLoggingConfiguration Concede permissão para associar uma LoggingConfiguration a uma ACL da Web especificada Write

webacl*

iam:CreateServiceLinkedRole

PutPermissionPolicy Concede permissão para anexar uma política do IAM a um grupo de regras para compartilhar o grupo de regras entre contas Permissions management

rulegroup*

TagResource Concede permissão para adicionar uma Etiqueta a um recurso Marcação

ratebasedrule

rule

rulegroup

webacl

aws:RequestTag/${TagKey}

aws:TagKeys

UntagResource Concede permissão para remover uma Etiqueta de um recurso Marcação

ratebasedrule

rule

rulegroup

webacl

aws:TagKeys

UpdateByteMatchSet Concede permissão para inserir ou excluir objetos ByteMatchTuple em um ByteMatchSet Write

bytematchset*

UpdateGeoMatchSet Concede permissão para inserir ou excluir objetos GeoMatchConstraint em um GeoMatchSet Write

geomatchset*

UpdateIPSet Concede permissão para inserir ou excluir objetos IPSetDescriptor em um IPSet Write

ipset*

UpdateRateBasedRule Concede permissão para modificar uma regra com base em taxa Write

ratebasedrule*

UpdateRegexMatchSet Concede permissão para inserir ou excluir objetos RegexMatchTuple em um RegexMatchSet Write

regexmatchset*

UpdateRegexPatternSet Concede permissão para inserir ou excluir RegexPatternStrings em um RegexPatternSet Write

regexpatternset*

UpdateRule Concede permissão para modificar uma Rule Write

rule*

UpdateRuleGroup Concede permissão para inserir ou excluir objetos ActivatedRule em um RuleGroup Write

rulegroup*

UpdateSizeConstraintSet Concede permissão para inserir ou excluir objetos SizeConstraint em um SizeConstraintSet Write

sizeconstraintset*

UpdateSqlInjectionMatchSet Concede permissão para inserir ou excluir objetos SqlInjectionMatchTuple em um SqlInjectionMatchSet Write

sqlinjectionmatchset*

UpdateWebACL Concede permissão para inserir ou excluir objetos ActivatedRule em um WebACL Permissions management

webacl*

UpdateXssMatchSet Concede permissão para inserir ou excluir objetos XssMatchTuple em um XssMatchSet Write

xssmatchset*

Tipos de recursos definidos pelo AWS WAF

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. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de tipos de recursos.

Tipos de recursos ARN Chaves de condição
bytematchset arn:${Partition}:waf::${Account}:bytematchset/${Id}
ipset arn:${Partition}:waf::${Account}:ipset/${Id}
ratebasedrule arn:${Partition}:waf::${Account}:ratebasedrule/${Id}

aws:ResourceTag/${TagKey}

rule arn:${Partition}:waf::${Account}:rule/${Id}

aws:ResourceTag/${TagKey}

sizeconstraintset arn:${Partition}:waf::${Account}:sizeconstraintset/${Id}
sqlinjectionmatchset arn:${Partition}:waf::${Account}:sqlinjectionset/${Id}
webacl arn:${Partition}:waf::${Account}:webacl/${Id}

aws:ResourceTag/${TagKey}

xssmatchset arn:${Partition}:waf::${Account}:xssmatchset/${Id}
regexmatchset arn:${Partition}:waf::${Account}:regexmatch/${Id}
regexpatternset arn:${Partition}:waf::${Account}:regexpatternset/${Id}
geomatchset arn:${Partition}:waf::${Account}:geomatchset/${Id}
rulegroup arn:${Partition}:waf::${Account}:rulegroup/${Id}

aws:ResourceTag/${TagKey}

Chaves de condição do AWS WAF

O AWS WAF 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 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 Type
aws:RequestTag/${TagKey} Filtra ações com base no conjunto de valores permitidos para cada uma das etiquetas String
aws:ResourceTag/${TagKey} Filtra ações com base no etiqueta-value associado ao recurso String
aws:TagKeys Filtra ações com base na presença de etiquetas obrigatórias na solicitação ArrayOfString