Ações, recursos e chaves de condição para o AWS WAF V2
O AWS WAF V2 (prefixo de serviço: wafv2
) 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:
-
Saiba como configurar este serviço.
-
Visualize uma lista das operações de API disponíveis para este serviço.
-
Saiba como proteger esse serviço e seus recursos usando políticas de permissão do IAM.
Tópicos
Ações definidas pelo AWS WAF V2
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 |
---|---|---|---|---|---|
AssociateWebACL | Concede permissão para associar uma WebACL a um recurso. | Write |
apigateway:SetWebACL apprunner:AssociateWebAcl appsync:SetWebACL cognito-idp:AssociateWebACL ec2:AssociateVerifiedAccessInstanceWebAcl elasticloadbalancing:SetWebAcl |
||
CheckCapacity | Concede permissão para calcular os requisitos da unidade de capacidade da ACL da Web (WCU) para um escopo especificado e um conjunto de regras. | Leitura | |||
CreateAPIKey | Concede permissão para criar uma chave de API para uso na integração da API CAPTCHA em seus aplicativos cliente JavaScript | Escrever | |||
CreateIPSet | Concede permissão para criar um IPSet | Write | |||
CreateRegexPatternSet | Concede permissão para criar um RegexPatternSet | Write | |||
CreateRuleGroup | Concede permissão para criar um RuleGroup. | Write | |||
CreateWebACL | Concede permissão para criar uma WebACL | Escrever | |||
DeleteAPIKey | Concede permissão para excluir uma chave de API | Escrever | |||
DeleteFirewallManagerRuleGroups | Concede permissão para excluir FirewallManagedRulesGroups especificados da WebACL especificada se não for mais gerenciado pelo Firewall Manager | Write | |||
DeleteIPSet | Concede permissão para excluir um IPSet | Write | |||
DeleteLoggingConfiguration | Concede permissão para excluir a LoggingConfiguration da WebACL especificada | Write | |||
DeletePermissionPolicy | Concede permissão para excluir a PermissionPolicy em um RuleGroup | Permissions management | |||
DeleteRegexPatternSet | Concede permissão para excluir um RegexPatternSet | Write | |||
DeleteRuleGroup | Concede permissão para excluir um RuleGroup | Write | |||
DeleteWebACL | Concede permissão para excluir uma WebACL | Escrever | |||
DescribeAllManagedProducts | Concede permissão para recuperar informações de produto para um grupo de regras gerenciado | Leitura | |||
DescribeManagedProductsByVendor | Concede permissão para recuperar informações de produto para um grupo de regras gerenciado por um determinado fornecedor | Leitura | |||
DescribeManagedRuleGroup | Concede permissão para visualizar informações de alto nível para um grupo de regras gerenciado | Leitura | |||
DisassociateFirewallManager [somente permissão] | Concede permissão para desassociar o Firewall Manager da WebACL especificada | Escrever | |||
DisassociateWebACL | Concede permissão para desassociar uma WebACL de um recurso de aplicação | Escrever |
apigateway:SetWebACL apprunner:DisassociateWebAcl appsync:SetWebACL cognito-idp:DisassociateWebACL ec2:DisassociateVerifiedAccessInstanceWebAcl elasticloadbalancing:SetWebAcl |
||
GenerateMobileSdkReleaseUrl | Concede permissão para gerar um URL de download pré-assinado para a versão especificada do SDK móvel | Leitura | |||
GetDecryptedAPIKey | Concede permissão para retornar sua chave de API no formato descriptografado. Use isso para verificar os domínios de token que você definiu para a chave | Leitura | |||
GetIPSet | Concede permissão para recuperar detalhes sobre um IPSet | Read | |||
GetLoggingConfiguration | Concede permissão para recuperar a LoggingConfiguration para uma WebACL | Leitura | |||
GetManagedRuleSet | Concede permissão para recuperar detalhes sobre um ManagedRuleSet | Leitura | |||
GetMobileSdkRelease | Concede permissão para recuperar informações para a versão do SDK móvel especificada, incluindo notas de lançamento e etiquetas | Leitura | |||
GetPermissionPolicy | Concede permissão para recuperar uma PermissionPolicy para um RuleGroup | Read | |||
GetRateBasedStatementManagedKeys | Concede permissão para recuperar as chaves atualmente bloqueadas por uma regra com base em taxa | Read | |||
GetRegexPatternSet | Concede permissão para recuperar detalhes sobre um RegexPatternSet | Read | |||
GetRuleGroup | Concede permissão para recuperar detalhes sobre um RuleGroup | Read | |||
GetSampledRequests | Concede permissão para recuperar informações detalhadas sobre uma amostragem de solicitações da Web | Read | |||
GetWebACL | Concede permissão para recuperar detalhes sobre uma WebACL | Read | |||
GetWebACLForResource | Concede permissão para recuperar A WebACL associada a um recurso | Leitura |
apprunner:DescribeWebAclForService cognito-idp:GetWebACLForResource ec2:GetVerifiedAccessInstanceWebAcl wafv2:GetWebACL |
||
ListAPIKeys | Concede permissão para recuperar uma lista das chaves de API que você definiu para o escopo especificado | Listar | |||
ListAvailableManagedRuleGroupVersions | Concede permissão para recuperar uma matriz de versões de grupo de regra gerenciados que estão disponíveis para uso | Listar | |||
ListAvailableManagedRuleGroups | Concede permissão para recuperar uma matriz de grupos de regra gerenciados que estão disponíveis para uso | List | |||
ListIPSets | Concede permissão para recuperar uma matriz de objetos IPSetSummary para os conjuntos de IP que você gerencia | List | |||
ListLoggingConfigurations | Concede permissão para recuperar uma matriz de seus objetos LoggingConfiguration | Listar | |||
ListManagedRuleSets | Concede permissão para recuperar uma matriz de objetos do seu ManagedRuleSet | Listar | |||
ListMobileSdkReleases | Concede permissão para recuperar uma lista das versões disponíveis para o SDK móvel e para a plataforma de dispositivo especificada | Listar | |||
ListRegexPatternSets | Concede permissão para recuperar uma matriz de objetos RegexPatternSetSummary para os conjuntos de padrões do regex que você gerencia | List | |||
ListResourcesForWebACL | Concede permissão para recuperar uma matriz de nomes do recurso da Amazon (ARNs) dos recursos que estão associados à ACL da Web especificada | List |
apprunner:ListAssociatedServicesForWebAcl cognito-idp:ListResourcesForWebACL ec2:DescribeVerifiedAccessInstanceWebAclAssociations |
||
ListRuleGroups | Concede permissão para recuperar uma matriz de objetos RuleGroupSummary para os grupos de regras que você gerencia | List | |||
ListTagsForResource | Concede permissão para listar as etiquetas de um recurso | Read | |||
ListWebACLs | Concede permissão para recuperar uma matriz de objetos WebACLSummary para as ACLs da Web que você gerencia | List | |||
PutFirewallManagerRuleGroups [somente permissão] | Concede permissão para criar FirewallManagedRulesGroups na WebACL especificada | Write | |||
PutLoggingConfiguration | Concede permissão para habilitar uma LoggingConfiguration, para iniciar o registro em log de uma ACL da Web | Escrever |
iam:CreateServiceLinkedRole |
||
PutManagedRuleSetVersions | Concede permissão para habilitar a criação de uma nova versão ou atualizar uma versão existente de um ManagedRuleSet | Escrever | |||
PutPermissionPolicy | Concede permissão para anexar uma política do IAM a um recurso, usado para compartilhar grupos de regras entre contas | Permissions management | |||
TagResource | Concede permissão para associar etiquetas a recursos da AWS | Marcação | |||
UntagResource | Concede permissão para desassociar etiquetas de um recurso da AWS | Marcação | |||
UpdateIPSet | Concede permissão para atualizar um IPSet | Escrever | |||
UpdateManagedRuleSetVersionExpiryDate | Concede permissão para atualizar a data de expiração de uma versão no ManagedRuleSet | Escrever | |||
UpdateRegexPatternSet | Concede permissão para atualizar um RegexPatternSet. | Write | |||
UpdateRuleGroup | Concede permissão para atualizar um RuleGroup | Write | |||
UpdateWebACL | Concede permissão para atualizar uma WebACL | Escrever | |||
Tipos de recursos definidos pelo AWS WAF V2
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 |
---|---|---|
webacl |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/webacl/${Name}/${Id}
|
|
ipset |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/ipset/${Name}/${Id}
|
|
managedruleset |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/managedruleset/${Name}/${Id}
|
|
rulegroup |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/rulegroup/${Name}/${Id}
|
|
regexpatternset |
arn:${Partition}:wafv2:${Region}:${Account}:${Scope}/regexpatternset/${Name}/${Id}
|
|
loadbalancer/app/ |
arn:${Partition}:elasticloadbalancing:${Region}:${Account}:loadbalancer/app/${LoadBalancerName}/${LoadBalancerId}
|
|
apigateway |
arn:${Partition}:apigateway:${Region}::/restapis/${ApiId}/stages/${StageName}
|
|
appsync |
arn:${Partition}:appsync:${Region}:${Account}:apis/${GraphQLAPIId}
|
|
userpool |
arn:${Partition}:cognito-idp:${Region}:${Account}:userpool/${UserPoolId}
|
|
apprunner |
arn:${Partition}:apprunner:${Region}:${Account}:service/${ServiceName}/${ServiceId}
|
|
verified-access-instance |
arn:${Partition}:ec2:${Region}:${Account}:verified-access-instance/${VerifiedAccessInstanceId}
|
Chaves de condição para o AWS WAF V2
O AWS WAF V2 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 |
---|---|---|
aws:RequestTag/${TagKey} | Filtra o acesso pelo conjunto de valores permitido para cada uma das etiquetas | Segmento |
aws:ResourceTag/${TagKey} | Filtra o acesso pelo valor-etiqueta associado ao recurso | String |
aws:TagKeys | Filtra o acesso pela presença de etiquetas obrigatórias na solicitação | ArrayOfString |
wafv2:LogDestinationResource | Filtra o acesso por ARN de destino do log para a API PutLoggingConfiguration | ARN |
wafv2:LogScope | Filtra o acesso por escopo de log para a API Logging Configuration | String |