This page explains how to configure Google Cloud Armor Adaptive Protection, which helps protect your services from layer 7 (L7) distributed denial-of-service (DDoS) attacks and other web attacks by using Google's global infrastructure and security systems. By following the instructions on this page, you can fine-tune Adaptive Protection's mitigation strategies and customize how it safeguards your applications. Before you begin, familiarize yourself with the Adaptive Protection overview and its Adaptive Protection use cases to understand its capabilities.
Before you begin
The following sections explain all of the Identity and Access Management (IAM) roles and
permissions required to configure Google Cloud Armor security policies. For
the use cases in this document, you only need the
compute.securityPolicies.update permission.
Set up IAM permissions for Cloud Armor security policies
The following operations require the Identity and Access Management (IAM)
Compute Security Admin role
(roles/compute.securityAdmin):
- Configuring, modifying, updating, and deleting a Cloud Armor security policy
- Using the following API methods:
SecurityPolicies insertSecurityPolicies deleteSecurityPolicies patchSecurityPolicies addRuleSecurityPolicies patchRuleSecurityPolicies removeRule
A user with the
Compute Network Admin role
(roles/compute.networkAdmin) can perform the following operations:
- Setting a Cloud Armor security policy for a backend service
- Using the following API methods:
BackendServices setSecurityPolicyBackendServices list(gcloudonly)
Users with the Security Admin role
(roles/iam.securityAdmin) and the Compute Network Admin role
(roles/compute.networkAdmin) can view Cloud Armor security
policies by using the SecurityPolicies API methods get, list, and
getRule.
Set up IAM permissions for custom roles
The following table lists the IAM roles' base permissions, their associated API methods, and the roles that grant that permission.
| IAM permission | API methods | Roles |
|---|---|---|
compute.securityPolicies.create |
SecurityPolicies insert |
Compute Security Admin (roles/compute.securityAdmin) |
compute.securityPolicies.delete |