Minimal Role / Permissions for Analyst
Contents
Minimal Role / Permissions for Analyst#
Assumption
Service account had been created and granted the necessary Viewer roles (Organization Viewer
, Folder Viewer
, Viewer
, Private Logs Viewer
)
Besides the non-read permissions at the target organisation / project, the service account also requires a specific set of non-read permissions at the analyst project to perform operations (e.g. create firewall rules, attach disks) to facilitate incident response.
Grant Permissions Guide#
To simplify matters, the service account can be granted Editor
role in the analyst project. If that is not possible, a specific set of minimal permissions and Compute Security Admin
role can be granted using gcloud cli and this yml file to the service account.
# create a custom role with the required permissions
# when prompted to confirm the creation, input Y (Yes)
gcloud iam roles create <role_id> --project=<project_id> --file=min_perm_list_analyst.yml
# grant created role to the service account
# when prompted to specify a condition, select None
gcloud projects add-iam-policy-binding <project_id> \
--member=serviceAccount:<svc_acct> \
--role=projects/<project_id>/roles/<role_id>
# grant Compute Security Admin role to the service account
# when prompted to specify a condition, select None
gcloud projects add-iam-policy-binding <project_id> \
--member=serviceAccount:<svc_acct> \
--role=roles/compute.securityAdmin
Permissions Usage#
Permissions |
Used in |
Required for |
---|---|---|
compute.firewalls |
||
|
|
Packet Mirroring (firewall rule) |
compute.forwardingRules |
||
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
compute.instanceGroups |
||
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
compute.instances |
||
|
|
Attach disk to compute instance |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
compute.networks |
||
|
|
Packet Mirroring (VPC network peering) |
|
|
Packet Mirroring (VPC network peering) |
|
|
Packet Mirroring (VPC network peering) |
compute.packetMirrorings |
||
|
|
Packet Mirroring (Policy) |
compute.regionBackendServices |
||
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
compute.regionHealthChecks |
||
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |
compute.subnetworks |
||
|
|
Packet Mirroring (VPC network peering) |
|
|
Packet Mirroring (VPC network peering) |
|
|
Packet Mirroring (load balancer) |
|
|
Packet Mirroring (load balancer) |