Identity and Access Management

gcpPolicy enginegoogle-cloud-iam

Allow and deny policies that decide who can act on which Google Cloud resource.

Provider
gcp
Category
Operations
Properties · 4 set by this component
propertytypevaluesrequiredkind defaultthis component
conditionalBindings · component propertyboolean—nofalseinherited
denyPolicies · component propertyboolean—nofalseinherited
effectenumaudit | deny | modify | deploy-if-not-existsno—▸ deny
enforcementModeenumenforced | disabledno—▸ enforced
managedboolean—nofalse▸ true
maxPrincipalsPerPolicy · component propertyinteger—no1500inherited
policyCountinteger—no—inherited
remediationboolean—nofalse▸ false
roleType · component propertyenumbasic | predefined | customno—inherited
scopeenumresource | group | account | organizationno—inherited
Rules that apply · 0

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

No rule reads this kind yet. That is a gap, not a guarantee.
Use it in a design
nodes:
  - { id: "cloud-iam", component: "google-cloud-iam" }
Other Policy engine products · 56
Cloud Configalibaba-cloud-configalibabacloudpolicy-engineData Security Centeralibaba-data-security-centeralibabacloudpolicy-engineAmazon CodeGuru Revieweraws-codeguru-reviewerawspolicy-engineAWS Configaws-configawspolicy-engineAWS Control Toweraws-control-towerawspolicy-engineIAM Access Analyzeraws-iam-access-analyzerawspolicy-engineAWS Lake Formationaws-lake-formationawspolicy-engineAWS License Manageraws-license-managerawspolicy-engineAWS Organizationsaws-organizationsawspolicy-engineAWS Resource Access Manageraws-ramawspolicy-engineAmazon Verified Permissionsaws-verified-permissionsawspolicy-engineMicrosoft Entra Conditional Accessazure-conditional-accessazurepolicy-engineAzure Policyazure-policyazurepolicy-engineMicrosoft Entra Privileged Identity Managementazure-privileged-identity-managementazurepolicy-engineCloudflare Data Loss Preventioncloudflare-dlpcloudflarepolicy-engineCalypsoAIcalypsoaipolicy-engineCerboscerbospolicy-engineOPA Gatekeepergatekeeperpolicy-engineGuardrails AIguardrails-aipolicy-engineHiddenLayer AI Security Platformhiddenlayerpolicy-engineKubeArmorkubearmorpolicy-engineKubewardenkubewardenpolicy-engineKyvernokyvernopolicy-engineLakera Guardlakera-guardpolicy-engineLLM Guardllm-guardpolicy-engineNeMo Guardrailsnemo-guardrailspolicy-engineOpen Policy Agentopapolicy-enginePermit.iopermit-iopolicy-engineGeneric policy enginepolicy-enginepolicy-enginePrompt Securityprompt-securitypolicy-engineProtect AIprotect-aipolicy-engineRebuffrebuffpolicy-engineRobust Intelligencerobust-intelligencepolicy-engineSonarQube Serversonarqubepolicy-engineDigitalOcean CSPMdigitalocean-cspmdigitaloceanpolicy-engineAccess Context Managergoogle-access-context-managergcppolicy-engineAssured Workloadsgoogle-assured-workloadsgcppolicy-engineBinary Authorizationgoogle-binary-authorizationgcppolicy-engineFirebase App Checkgoogle-firebase-app-checkgcppolicy-engineModel Armorgoogle-model-armorgcppolicy-engine
and 16 more → Policy engine page
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Cloud IAM: the allow policy (role bindings) attached to a resource and inherited by everything
# below it in the hierarchy. Per "IAM overview" every action is denied unless a permission grants it,
# and deny policies, IAM Conditions and principal access boundaries are separate opt-in layers.
# Per "Allow policies" a policy holds at most 1,500 principals and changes are eventually consistent.
schemaVersion: "1"
type: "component"
id: "google-cloud-iam"
kind: "policy-engine"
provider: "gcp"
docs: "https://cloud.google.com/iam/docs/overview"
defaults:
  effect: "deny"
  enforcementMode: "enforced"
  remediation: false
  managed: true
properties:
  roleType:
    type: "enum"
    values: ["basic", "predefined", "custom"]
  denyPolicies:
    type: "boolean"
    default: false
  conditionalBindings:
    type: "boolean"
    default: false
  maxPrincipalsPerPolicy:
    type: "integer"
    default: 1500

The same page as markdown, for an agent: /catalogue/components/google-cloud-iam.md