Analiza las políticas de la organización

Esta página contiene información sobre el análisis de la configuración de políticas de la organización para ver qué recursos están cubiertos por cada política de la organización. Usando Analizador de políticas para políticas de la organización, puedes crear un análisis para obtener información sobre las políticas de la organización, tanto personalizadas como predefinidas.

Una consulta de análisis consta de un alcance y una restricción.

  • Restricción: especifica el nombre de recurso de una restricción.
  • Alcance: Especifica la organización en la que se definirá el alcance del análisis. Todas las organizaciones las políticas con la restricción especificada que se definió en este permiso se incluyen en el análisis.

Para obtener más información sobre las políticas de la organización, consulta el Introducción al Servicio de políticas de la organización. Para obtener más información sobre cómo crear restricciones personalizadas, consulta Crea y administra restricciones personalizadas.

Antes de comenzar

Funciones y permisos requeridos

A fin de obtener los permisos que necesitas para ejecutar un análisis de políticas de la organización, solicita a tu administrador que te otorgue el siguientes roles de IAM en el recurso de la organización en el que quieres realizar tu análisis:

Si quieres obtener más información para otorgar roles, consulta Administra el acceso.

Estos roles predefinidos contienen los permisos necesarios para ejecutar un análisis de políticas de la organización. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para ejecutar un análisis de políticas de la organización:

  • Para llevar a cabo el análisis:
    • cloudasset.assets.analyzeOrgPolicy
    • cloudasset.assets.searchAllResources
    • cloudasset.assets.searchAllIamPolicies
  • Para ver las restricciones personalizadas, sigue estos pasos: orgpolicy.customConstraints.get

También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos

Precios y cuota

Analizador de políticas para políticas de la organización a gran escala (más de 20 consultas) por organización, por día) y visualizaciones de herencia solo están disponibles para clientes con activaciones de Security Command Center a nivel de organización.

La cuota del Analizador de políticas para la política de la organización se comparte entre todos de políticas de Google Cloud. Para obtener más información, consulta Preguntas sobre la facturación.

Analiza las políticas configuradas

Una política de la organización se compila a partir de una restricción y condiciones opcionales en la que se aplica la restricción. Puedes usar Analizador de políticas para mostrar una lista de políticas de la organización con un restricción específica y los recursos a los que se adjuntan esas políticas.

Para cada política de la organización que se detecta en el permiso de la consulta, El Analizador de políticas muestra una entrada de resultado. Una entrada de resultado contiene los siguientes campos:

  • consolidatedPolicy: Es el recurso al que se aplica la política de la organización. adjuntos y la aplicación efectiva de la política en ese recurso con respecto al reglas de evaluación de jerarquías.

  • project: El ID del recurso del proyecto al que se aplica esta política consolidada pertenece.

  • folders: Es el ID de cualquier recurso de carpeta que sea principal del recurso. al que se adjunta la política de la organización.

  • organization: Es el ID del recurso de la organización del principal. el recurso al que está adjunta la política de la organización.

  • policyBundle: La política de la organización configurada completa conectada a lo anterior recurso y las políticas de la organización definidas en sus principales en la jerarquía de recursos.

Console

  1. En la consola de Google Cloud, ve a la página Analizador de políticas.

    Ir al Analizador de políticas

  2. En la sección Analiza la política de la organización, busca el panel etiquetado ¿Dónde se configuran las políticas de la organización específicas? y haz clic en Crear. consulta en ese panel.

  3. En el cuadro Seleccionar organización para la consulta, selecciona la organización para la cual quieres analizar las políticas de la organización.

  4. Selecciona el tipo de restricción que quieres analizar. En el caso de un entorno restricción, selecciona Restricción integrada. Para una restricción personalizada, selecciona Restricción personalizada.

  5. Ingresa el nombre de la restricción que quieres analizar. El prefijo del tipo de limitación que estás analizando. Por ejemplo: Para la restricción de dominio predefinida, ingresa iam.allowedPolicyMemberDomains y, para una restricción personalizada, ingresa su como disableGkeAutoUpgrade.

  6. Haz clic en Analizar y, luego, en Ejecutar consulta. La página del informe muestra la consulta los parámetros que ingresaste y una tabla de resultados con todos los recursos a los que se aplica directamente esta restricción.

  7. Puedes guardar esta consulta para volver a verla más adelante haciendo clic en Copiar URL de consulta. Para ver esta consulta, navega a la URL generada.

  8. Puedes visualizar la herencia de la restricción que analizaste selecciona al menos un recurso de la lista y, luego, haz clic Herencia de vistas. También puedes ir inmediatamente a la sección de cuando crees tu consulta de análisis. Para ello, haz clic en Analizar y, luego, Visualizar Consulta Visualiza la herencia. para obtener más información.

gcloud

Para obtener un análisis de cómo se aplica una restricción de política de la organización dentro de una organización, usa el Comando gcloud asset analyze-org-policies:

gcloud asset analyze-org-policies \
    --constraint=CONSTRAINT_NAME  \
    --scope=organizations/ORGANIZATION_ID \
    --limit=LIMIT_POLICIES \
    --filter=FILTER_QUERY

Reemplaza lo siguiente:

  • CONSTRAINT_NAME: Es el nombre de la política de la organización. restricción que quieres analizar. Para obtener una lista de restricciones, consulta Restricciones de las políticas de la organización.

  • ORGANIZATION_ID: Es el ID de tu organización. recurso. Para obtener más información sobre cómo encontrar el ID de tu organización, consulta Crea y administra organizaciones.

  • LIMIT_POLICIES: Es la cantidad de entradas de resultados que deseas. para visualizar. Para ver entradas ilimitadas, ingresa unlimited.

  • FILTER_QUERY: Una consulta de filtro para ver solo las políticas que coincidan con tu expresión de filtrado. El único campo disponible para el filtro es consolidated_policy.attached_resource. Por ejemplo: consolidated_policy.attached_resource="//cloudresourcemanager.googleapis.com/projects/1234567890" solo devolvería las políticas que estaban adjuntas al proyecto con el ID del proyecto 1234567890.

La respuesta de YAML es similar a la siguiente:

Respuesta de YAML de muestra

---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  attachedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  rules:
  - enforce: true
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  attachedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  reset: true
- appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true
---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true

REST

Para obtener un análisis de cómo se aplica una restricción de política de la organización dentro de una organización, usa las APIs de Cloud Asset Método analyzeOrgPolicies.

Método HTTP y URL:

GET https://cloudasset.googleapis.com/v1/organizations/ORGANIZATION_ID:analyzeOrgPolicies

Cuerpo JSON de la solicitud:

JSON_REQUEST="{
  'constraint': 'CONSTRAINT_NAME',
  'filter': 'FILTER_QUERY',
  'page_size': PAGE_SIZE,
  'page_token': PAGE_TOKEN
}"

Reemplaza lo siguiente:

  • ORGANIZATION_ID: Es el ID de tu organización. recurso. Para obtener más información sobre cómo encontrar el ID de tu organización, consulta Crea y administra organizaciones.

  • CONSTRAINT_NAME: Es el nombre de la política de la organización. restricción que quieres analizar. Para obtener una lista de restricciones, consulta Restricciones de las políticas de la organización.

  • FILTER_QUERY: Una consulta de filtro para ver solo las políticas que coincidan con tu expresión de filtrado. El único campo disponible para el filtro es consolidated_policy.attached_resource. Por ejemplo: consolidated_policy.attached_resource="//cloudresourcemanager.googleapis.com/projects/1234567890" solo devolvería las políticas que estaban adjuntas al proyecto con el ID del proyecto 1234567890.

  • PAGE_SIZE: Es la cantidad de entradas de resultados por página que deseas. para visualizar. Para ver entradas ilimitadas, ingresa unlimited. Una solicitud realizada a este conjunto de marcas devuelve un valor nextPageToken si la cantidad total de las entradas de resultado sean mayores que PAGE_SIZE.

  • PAGE_TOKEN: Solo se configurará en las solicitudes posteriores a la primera. que incluya la marca page_size. Puedes usar la Valores nextPageToken recibidos de respuestas anteriores para mostrar un determinada página de resultados.

La respuesta JSON es similar a la siguiente:

Respuesta JSON de muestra

{
  "orgPolicyResults": [
    {
      "consolidatedPolicy": {
        "attachedResource": "//cloudresourcemanager.googleapis.com/folders/123456789012",
        "rules": [
          {
            "values": {
              "allowedValues": [
                "C0265whk2"
              ]
            }
          },
          {
            "values": {
              "allowedValues": [
                "C03kd36xr"
              ]
            }
          }
        ],
        "appliedResource": "//cloudresourcemanager.googleapis.com/folders/123456789012"
      },
      "policyBundle": [
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/123456789012",
          "rules": [
            {
              "values": {
                "allowedValues": [
                  "C03kd36xr"
                ]
              }
            }
          ],
          "inheritFromParent": true,
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/123456789012"
        },
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/234567890123",
          "rules": [
            {
              "values": {
                "allowedValues": [
                  "C0265whk2"
                ]
              }
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/234567890123"
        }
      ]
    },
    {
      "consolidatedPolicy": {
        "attachedResource": "//cloudresourcemanager.googleapis.com/folders/234567890123",
        "rules": [
          {
            "values": {
              "allowedValues": [
                "C0265whk2"
              ]
            }
          }
        ],
        "appliedResource": "//cloudresourcemanager.googleapis.com/folders/234567890123"
      },
      "policyBundle": [
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/234567890123",
          "rules": [
            {
              "values": {
                "allowedValues": [
                  "C0265whk2"
                ]
              }
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/234567890123"
        }
      ]
    }
  ]
  "constraint": {
    "googleDefinedConstraint": {
      "name": "constraints/iam.allowedPolicyMemberDomains",
      "displayName": "Domain restricted sharing",
      "description": "This list constraint defines one or more Cloud Identity or Google Workspace customer IDs whose principals can be added to IAM policies. \u003cbr\u003eBy default, all user identities are allowed to be added to IAM policies. Only allowed values can be defined in this constraint, denied values are not supported. \u003cbr\u003eIf this constraint is active, only principals that belong to the allowed customer IDs can be added to IAM policies.",
      "constraintDefault": "ALLOW",
      "listConstraint": {}
    }
  }
}

Analiza los contenedores

Un contenedor en este contexto es un recurso de proyecto, organización o carpeta. Puedes usar el Analizador de políticas para mostrar una lista de todos los contenedores que tienen políticas de la organización con una restricción en particular aplicada. El Analizador de políticas también muestra el nombre completo de cada contenedor, el elemento superior del contenedor en la jerarquía y las etiquetas heredadas por el contenedor o vinculadas a este.

Para cada contenedor que se detecta en el alcance de la consulta, el Analizador de políticas muestra una entrada de resultado. Una entrada de resultado contiene los siguientes campos:

  • consolidatedPolicy: Es el contenedor al que se aplica la política de la organización. se adjuntan y la aplicación eficaz de la política a ese contenedor con respecto a reglas de evaluación de jerarquías.

  • conditionEvaluation: Si las condiciones incluidas dan como resultado la aplicación de la política de la organización, evaluationValue es TRUE. Si las condiciones provocarán que no se aplique la política de la organización, evaluationValue es FALSE Si la condición no es compatible con uno o más de los recursos en en la que se aplica la política de la organización, se devuelve la condición propiamente dicha.

  • effectiveTags: Todas las etiquetas que el y los elementos superiores del contenedor en la jerarquía.

  • folders: El ID de cualquier recurso de carpeta que contenga el contenedor al que se debe enviar se adjunta la política de la organización.

  • fullResourceName: Es el nombre completo del contenedor.

  • organization: Es el ID del recurso de la organización del principal. el contenedor al que se adjunta la política de la organización.

  • parent: Es el nombre completo del recurso del elemento superior de este contenedor.

  • policyBundle: Es la política de la organización configurada directamente en el contenedor. si existe, y las políticas de la organización definidas en los principales de la contenedor en la jerarquía de recursos.

  • project: El ID del contenedor al que se aplica la política de la organización si se trata de un recurso del proyecto.

Console

  1. En la consola de Google Cloud, ve a la página Analizador de políticas.

    Ir al Analizador de políticas

  2. En la sección Analiza la política de la organización, busca el panel etiquetado Qué proyectos o carpetas se ven afectados por una política de la organización restrict? y haz clic en Crear consulta en ese panel.

  3. En el cuadro Seleccionar organización para la consulta, selecciona la organización para la cual quieres analizar las políticas de la organización.

  4. Selecciona el tipo de restricción que quieres analizar. En el caso de un entorno restricción, selecciona Restricción integrada. Para una restricción personalizada, selecciona Restricción personalizada.

  5. Ingresa el nombre de la restricción que quieres analizar. El prefijo del tipo de limitación que estás analizando. Por ejemplo: Para la restricción de dominio predefinida, ingresa iam.allowedPolicyMemberDomains y, para una restricción personalizada, ingresa su como disableGkeAutoUpgrade.

  6. Haz clic en Ejecutar consulta. La página del informe muestra los parámetros de consulta que ingresar y una tabla de resultados de todos los contenedores a los que se aplica se aplican o heredan.

  7. Puedes guardar esta consulta para volver a verla más adelante haciendo clic en Copiar URL de consulta. Para ver esta consulta, navega a la URL generada.

  8. Puedes visualizar la herencia de la restricción que analizaste selecciona al menos un contenedor de la lista y, luego, haz clic Herencia de vistas. También puedes ir inmediatamente a la sección de cuando crees tu consulta de análisis. Para ello, haz clic en Analizar y, luego, Visualizar Consulta Visualiza la herencia. para obtener más información.

gcloud

Para obtener un análisis de cómo se aplica una restricción de la política de la organización contenedores dentro de una organización, usa el Comando gcloud asset analyze-org-policy-governed-containers:

gcloud asset analyze-org-policy-governed-containers \
    --constraint=CONSTRAINT_NAME  \
    --scope=organizations/ORGANIZATION_ID \
    --limit=LIMIT_CONTAINERS \
    --filter=FILTER_QUERY

Reemplaza lo siguiente:

  • CONSTRAINT_NAME: Es el nombre de la política de la organización. restricción que quieres analizar. Para obtener una lista de restricciones, consulta Restricciones de las políticas de la organización.

  • ORGANIZATION_ID: Es el ID de tu organización. recurso. Para obtener más información sobre cómo encontrar el ID de tu organización, consulta Crea y administra organizaciones.

  • LIMIT_CONTAINERS: Es la cantidad de entradas de resultados que que deseas ver. Para ver entradas ilimitadas, ingresa unlimited.

  • FILTER_QUERY: Una consulta de filtro para ver solo los contenedores que coincidan con tu expresión de filtrado. El único campo disponible para el filtro es parent. Por ejemplo, parent="//cloudresourcemanager.googleapis.com/organizations/012345678901". solo mostrarían contenedores que fueran secundarios de la organización el ID de la organización 012345678901.

La respuesta de YAML es similar a la siguiente:

Respuesta de YAML de muestra

---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/projects/donghe-project1
  attachedResource: //cloudresourcemanager.googleapis.com/projects/donghe-project1
  rules:
  - values:
      allowedValues:
      - projects/donghe-project1/zones/us-central1-a/instances/instance-1
fullResourceName: //cloudresourcemanager.googleapis.com/projects/donghe-project1
parent: //cloudresourcemanager.googleapis.com/folders/86513245445
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/projects/donghe-project1
  attachedResource: //cloudresourcemanager.googleapis.com/projects/donghe-project1
  inheritFromParent: true
  rules:
  - values:
      allowedValues:
      - projects/donghe-project1/zones/us-central1-a/instances/instance-1
---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/projects/jeffreyai-prj01-on-ipa1
  attachedResource: //cloudresourcemanager.googleapis.com/projects/jeffreyai-prj01-on-ipa1
  rules:
  - denyAll: true
fullResourceName: //cloudresourcemanager.googleapis.com/projects/jeffreyai-prj01-on-ipa1
parent: //cloudresourcemanager.googleapis.com/organizations/474566717491
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/projects/jeffreyai-prj01-on-ipa1
  attachedResource: //cloudresourcemanager.googleapis.com/projects/jeffreyai-prj01-on-ipa1
  inheritFromParent: true
  rules:
  - denyAll: true
---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  attachedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  rules:
  - values:
      allowedValues:
      - projects/opa-test-project-1-364621/zones/us-central1-a/instances/instance-1
fullResourceName: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
parent: //cloudresourcemanager.googleapis.com/folders/666681422980
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  attachedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-1-364621
  rules:
  - values:
      allowedValues:
      - projects/opa-test-project-1-364621/zones/us-central1-a/instances/instance-1

REST

Para obtener un análisis de cómo se aplica una restricción de la política de la organización contenedores dentro de una organización, usa las APIs de Cloud Asset Método analyzeOrgPolicyGovernedContainers.

Método HTTP y URL:

GET https://cloudasset.googleapis.com/v1/organizations/ORGANIZATION_ID:analyzeOrgPolicyGovernedContainers

Cuerpo JSON de la solicitud:

JSON_REQUEST="{
  'constraint': 'CONSTRAINT_NAME',
  'filter': '"FILTER_QUERY"',
  'page_size': PAGE_SIZE,
  'page_token': PAGE_TOKEN
}"

Reemplaza lo siguiente:

  • ORGANIZATION_ID: Es el ID de tu organización. recurso. Para obtener más información sobre cómo encontrar el ID de tu organización, consulta Crea y administra organizaciones.

  • CONSTRAINT_NAME: Es el nombre de la política de la organización. restricción que quieres analizar. Para obtener una lista de restricciones, consulta Restricciones de las políticas de la organización.

  • FILTER_QUERY: Una consulta de filtro para ver solo los contenedores que coincidan con tu expresión de filtrado. El único campo disponible para el filtro es parent. Por ejemplo: parent="//cloudresourcemanager.googleapis.com/organizations/012345678901" harían lo siguiente solo devolver los contenedores que eran secundarios de la organización con el ID de la organización 012345678901.

  • PAGE_SIZE: La cantidad de páginas de entradas de resultados que deseas para visualizar. Para ver entradas ilimitadas, ingresa unlimited. Una solicitud realizada a este conjunto de marcas devuelve un valor nextPageToken si la cantidad total de las entradas de resultado sean mayores que PAGE_SIZE.

  • PAGE_TOKEN: Solo se configurará en las solicitudes posteriores a la primera. que incluya la marca page_size. Puedes usar la Valores nextPageToken recibidos de respuestas anteriores para mostrar un determinada página de resultados.

La respuesta JSON es similar a la siguiente:

Respuesta JSON de muestra

{
  "governedContainers": [
    {
      "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/opa-test-project-2",
      "parent": "//cloudresourcemanager.googleapis.com/folders/513502730678",
      "consolidatedPolicy": {
        "attachedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678",
        "rules": [
          {
            "enforce": false
          }
        ],
        "appliedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678"
      },
      "policyBundle": [
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678",
          "rules": [
            {
              "enforce": false
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678"
        },
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/666681422980",
          "rules": [
            {
              "enforce": true
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/666681422980"
        }
      ]
    },
    {
      "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/opa-test-project-1",
      "parent": "//cloudresourcemanager.googleapis.com/folders/513502730678",
      "consolidatedPolicy": {
        "attachedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678",
        "rules": [
          {
            "enforce": false
          }
        ],
        "appliedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678"
      },
      "policyBundle": [
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678",
          "rules": [
            {
              "enforce": false
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/513502730678"
        },
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/666681422980",
          "rules": [
            {
              "enforce": true
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/666681422980"
        }
      ]
    }
  ]
  "constraint": {
    "googleDefinedConstraint": {
      "name": "constraints/compute.requireOsLogin",
      "displayName": "Require OS Login",
      "description": "This boolean constraint, when set to \u003ccode\u003etrue\u003c/code\u003e, enables OS Login on all newly created Projects. All VM instances created in new projects will have OS Login enabled. On new and existing projects, this constraint prevents metadata updates that disable OS Login at the project or instance level. \u003cbr\u003eBy default, the OS Login feature is disabled on Compute Engine projects.\u003cbr\u003eGKE instances in private clusters running node pool versions 1.20.5-gke.2000 and later support OS Login. GKE instances in public clusters do not currently support OS Login. If this constraint is applied to a Project running public clusters, GKE instances running in that Project may not function properly.",
      "constraintDefault": "ALLOW",
      "booleanConstraint": {}
    }
  }
}

Analiza los recursos

Un recurso en este contexto es un recurso o Política de permisos de Identity and Access Management (IAM). Puedes usar El Analizador de políticas mostrará una lista de todos los elementos que tienen políticas de la organización con una restricción específica. Se admiten restricciones personalizadas y las siguientes limitaciones predefinidas:

  • constraints/ainotebooks.accessMode
  • constraints/ainotebooks.disableFileDownloads
  • constraints/ainotebooks.disableRootAccess
  • constraints/ainotebooks.disableTerminal
  • constraints/ainotebooks.environmentOptions
  • constraints/ainotebooks.requireAutoUpgradeSchedule
  • constraints/ainotebooks.restrictVpcNetworks
  • constraints/compute.disableGuestAttributesAccess
  • constraints/compute.disableInstanceDataAccessApis
  • constraints/compute.disableNestedVirtualization
  • constraints/compute.disableSerialPortAccess
  • constraints/compute.disableSerialPortLogging
  • constraints/compute.disableVpcExternalIpv6
  • constraints/compute.requireOsLogin
  • constraints/compute.requireShieldedVm
  • constraints/compute.restrictLoadBalancerCreationForTypes
  • constraints/compute.restrictProtocolForwardingCreationForTypes
  • constraints/compute.restrictXpnProjectLienRemoval
  • constraints/compute.setNewProjectDefaultToZonalDNSOnly
  • constraints/compute.skipDefaultNetworkCreation
  • constraints/compute.trustedImageProjects
  • constraints/compute.vmCanIpForward
  • constraints/compute.vmExternalIpAccess
  • constraints/gcp.detailedAuditLoggingMode
  • constraints/gcp.resourceLocations
  • constraints/iam.allowedPolicyMemberDomains
  • constraints/iam.automaticIamGrantsForDefaultServiceAccounts
  • constraints/iam.disableServiceAccountCreation
  • constraints/iam.disableServiceAccountKeyCreation
  • constraints/iam.disableServiceAccountKeyUpload
  • constraints/iam.restrictCrossProjectServiceAccountLienRemoval
  • constraints/iam.serviceAccountKeyExpiryHours
  • constraints/resourcemanager.accessBoundaries
  • constraints/resourcemanager.allowedExportDestinations
  • constraints/sql.restrictAuthorizedNetworks
  • constraints/sql.restrictNoncompliantDiagnosticDataAccess
  • constraints/sql.restrictNoncompliantResourceCreation
  • constraints/sql.restrictPublicIp
  • constraints/storage.publicAccessPrevention
  • constraints/storage.restrictAuthTypes
  • constraints/storage.uniformBucketLevelAccess

El Analizador de políticas devuelve el nombre completo de cada recurso, el superior en la jerarquía y cualquier proyecto principal, carpeta y organización que están por encima del recurso en la jerarquía.

Para cada recurso que se detecta en el permiso de la consulta, El Analizador de políticas muestra una entrada de resultado.

Una entrada de resultado para un recurso contiene los siguientes campos:

  • consolidatedPolicy: Es el recurso al que se aplica la política de la organización. adjuntos y la aplicación efectiva de la política en ese recurso con respecto al reglas de evaluación de jerarquías.

  • conditionEvaluation: Si las condiciones incluidas dan como resultado la aplicación de la política de la organización, evaluationValue es TRUE. Si las condiciones provocarán que no se aplique la política de la organización, evaluationValue es FALSE Si la condición no es compatible con uno o más de los recursos en en la que se aplica la política de la organización, se devuelve la condición propiamente dicha.

  • assetType: Es el tipo de recurso del recurso.

  • effectiveTags: Todas las etiquetas que el recurso al que se adjunta la política de la organización, así como superiores en la jerarquía.

  • folders: El ID de cualquier recurso de carpeta que contenga el recurso al que se adjunta la política de la organización.

  • fullResourceName: Es el nombre completo del recurso.

  • organization: Es el nombre del recurso relativo de la organización que contiene el recurso.

  • parent: Es el nombre completo del recurso del elemento superior.

  • project: Es el ID del proyecto que contiene el recurso.

  • policyBundle: La política de la organización configurada completa conectada a lo anterior recurso y las políticas de la organización definidas en sus principales en la jerarquía de recursos.

Una entrada de resultado para una política de permiso contiene los siguientes campos:

  • consolidatedPolicy: Es el recurso al que se aplica la política de la organización. adjuntos y la aplicación efectiva de la política en ese recurso con respecto al reglas de evaluación de jerarquías.

  • assetType: Es el tipo de recurso al que se aplica la política de permiso. que se adjuntan.

  • attachedResource: Es el nombre completo del recurso al que la política de permisos. está conectado.

  • folders: Es el nombre del recurso relativo de cualquier carpeta que contenga el permiso .

  • organization: Es el nombre del recurso relativo de la organización que contiene la política de permisos.

  • policy: Es la política de permiso.

  • project: Es el nombre del recurso relativo del proyecto que contiene el permiso .

  • policyBundle: La política de la organización configurada completa conectada a lo anterior recurso y las políticas de la organización definidas en sus principales en la jerarquía de recursos.

Console

  1. En la consola de Google Cloud, ve a la página Analizador de políticas.

    Ir al Analizador de políticas

  2. En la sección Analiza la política de la organización, busca el panel etiquetado ¿Qué recursos se ven afectados por una restricción de la política de la organización? Luego, haz clic en Crear consulta (Create query) en ese panel.

  3. En el cuadro Seleccionar organización para la consulta, selecciona la organización para la cual quieres analizar las políticas de la organización.

  4. Selecciona el tipo de restricción que quieres analizar. En el caso de un entorno restricción, selecciona Restricción integrada. Para una restricción personalizada, selecciona Restricción personalizada.

  5. Ingresa el nombre de la restricción que quieres analizar. El prefijo del tipo de limitación que estás analizando. Por ejemplo: Para la restricción de acceso predefinida a nivel de bucket, ingresa storage.uniformBucketLevelAccess y, para una restricción personalizada, ingresa su como disableGkeAccess.

  6. Haz clic en Ejecutar consulta. La página del informe muestra los parámetros de consulta que ingresados y una tabla de resultados con todos los elementos a los que se aplica esta restricción se aplican o heredan.

  7. Puedes guardar esta consulta para volver a verla más adelante haciendo clic en Copiar URL de consulta. Para ver esta consulta, navega a la URL generada.

  8. Puedes visualizar la herencia de la restricción que analizaste selecciona al menos un recurso de la lista y, luego, haz clic Herencia de vistas. También puedes ir inmediatamente a la sección de cuando crees tu consulta de análisis. Para ello, haz clic en Analizar y, luego, Visualizar Consulta Visualiza la herencia. para obtener más información.

gcloud

Para obtener un análisis de cómo se aplica una restricción de la política de la organización recursos dentro de una organización, usa el Comando gcloud asset analyze-org-policy-governed-assets:

gcloud asset analyze-org-policy-governed-assets \
    --constraint=CONSTRAINT_NAME  \
    --scope=organizations/ORGANIZATION_ID \
    --limit=LIMIT_ASSETS \
    --filter=FILTER_QUERY

Reemplaza lo siguiente:

  • CONSTRAINT_NAME: Es el nombre de la política de la organización. restricción que quieres analizar. Para obtener una lista de restricciones, consulta Restricciones de las políticas de la organización.

  • ORGANIZATION_ID: Es el ID de tu organización. recurso. Para obtener más información sobre cómo encontrar el ID de tu organización, consulta Crea y administra organizaciones.

  • LIMIT_ASSETS: Es la cantidad de entradas de resultados que deseas. para visualizar. Para ver entradas ilimitadas, ingresa unlimited.

  • FILTER_QUERY: Una búsqueda de filtro para ver solo los elementos que coincidan con tu expresión de filtrado. Los campos disponibles para los filtros son governed_resource.folders, governed_resource.project, governed_iam_policy.folders y governed_iam_policy.project. Para Por ejemplo, governed_resource.project="projects/1234567890" solo mostraría el resultado activos que se adjuntaron al proyecto con el ID del proyecto 1234567890.

La respuesta de YAML es similar a la siguiente:

Respuesta de YAML de muestra

---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-2
  attachedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-2
  rules:
  - enforce: false
governedResource:
  folders:
  - folders/513502730678
  - folders/666681422980
  fullResourceName: //container.googleapis.com/projects/opa-test-project-2/zones/us-central1-c/clusters/opa-test-project-2-cluster-1/nodePools/default-pool
  organization: organizations/474566717491
  parent: //container.googleapis.com/projects/opa-test-project-2/zones/us-central1-c/clusters/opa-test-project-2-cluster-1
  project: projects/892625391619
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-2
  attachedResource: //cloudresourcemanager.googleapis.com/projects/opa-test-project-2
  reset: true
- appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  attachedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true
---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/projects/project2-244918
  attachedResource: //cloudresourcemanager.googleapis.com/projects/project2-244918
  rules:
  - enforce: false
governedResource:
  folders:
  - folders/800636178739
  - folders/408342778736
  fullResourceName: //container.googleapis.com/projects/project2-244918/zones/us-central1-c/clusters/cluster-1/nodePools/default-pool
  organization: organizations/474566717491
  parent: //container.googleapis.com/projects/project2-244918/zones/us-central1-c/clusters/cluster-1
  project: projects/761097189269
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/projects/project2-244918
  attachedResource: //cloudresourcemanager.googleapis.com/projects/project2-244918
  rules:
  - enforce: false
- appliedResource: //cloudresourcemanager.googleapis.com/folders/408342778736
  attachedResource: //cloudresourcemanager.googleapis.com/folders/408342778736
  rules:
  - condition:
      description: cond-desc1
      expression: resource.matchTag("474566717491/env", "prod")
      title: cond-title1
    enforce: false
  - enforce: true
- appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  attachedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true
---
consolidatedPolicy:
  appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  attachedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true
governedResource:
  fullResourceName: //container.googleapis.com/projects/probe-per-rt-project/zones/us-west1-a/clusters/test-cluster-for-backup/nodePools/default-pool
  organization: organizations/474566717491
  parent: //container.googleapis.com/projects/probe-per-rt-project/zones/us-west1-a/clusters/test-cluster-for-backup
  project: projects/896190383908
policyBundle:
- appliedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  attachedResource: //cloudresourcemanager.googleapis.com/organizations/474566717491
  rules:
  - enforce: true

REST

Para obtener un análisis de cómo se aplica una restricción de la política de la organización recursos dentro de una organización, usa las APIs de Cloud Asset Método analyzeOrgPolicyGovernedAssets.

Método HTTP y URL:

GET https://cloudasset.googleapis.com/v1/organizations/ORGANIZATION_ID:analyzeOrgPolicyGovernedAssets

Cuerpo JSON de la solicitud:

JSON_REQUEST="{
  'constraint': 'CONSTRAINT_NAME',
  'filter': 'FILTER_QUERY',
  'page_size': PAGE_SIZE,
  'page_token': PAGE_TOKEN
}"

Reemplaza lo siguiente:

  • ORGANIZATION_ID: Es el ID de tu organización. recurso. Para obtener más información sobre cómo encontrar el ID de tu organización, consulta Crea y administra organizaciones.

  • CONSTRAINT_NAME: Es el nombre de la política de la organización. restricción que quieres analizar. Para obtener una lista de restricciones, consulta Restricciones de las políticas de la organización.

  • FILTER_QUERY: Una búsqueda de filtro para ver solo los elementos que coincidan con tu expresión de filtrado. Los campos disponibles para los filtros son governed_resource.folders, governed_resource.project, governed_iam_policy.folders y governed_iam_policy.project. Para Por ejemplo, governed_resource.project="projects/1234567890" solo mostraría el resultado activos que se adjuntaron al proyecto con el ID del proyecto 1234567890.

  • PAGE_SIZE: La cantidad de páginas de entradas de resultados que deseas para visualizar. Para ver entradas ilimitadas, ingresa unlimited. Una solicitud realizada a este conjunto de marcas devuelve un valor nextPageToken si la cantidad total de las entradas de resultado sean mayores que PAGE_SIZE.

  • PAGE_TOKEN: Solo se configurará en las solicitudes posteriores a la primera. que incluya la marca page_size. Puedes usar la Valores nextPageToken recibidos de respuestas anteriores para mostrar un determinada página de resultados.

La respuesta JSON es similar a la siguiente:

Respuesta JSON de muestra

{
  "governedAssets": [
    {
      "governedResource": {
        "fullResourceName": "//container.googleapis.com/projects/opa-test-project-2/zones/us-central1-c/clusters/opa-test-project-2-cluster-1/nodePools/default-pool",
        "parent": "//container.googleapis.com/projects/opa-test-project-2/zones/us-central1-c/clusters/opa-test-project-2-cluster-1",
        "project": "projects/892625391619",
        "folders": [
          "folders/513502730678",
          "folders/666681422980"
        ],
        "organization": "organizations/474566717491"
      },
      "consolidatedPolicy": {
        "attachedResource": "//cloudresourcemanager.googleapis.com/projects/opa-test-project-2",
        "rules": [
          {
            "enforce": false
          }
        ],
        "appliedResource": "//cloudresourcemanager.googleapis.com/projects/opa-test-project-2"
      },
      "policyBundle": [
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/projects/opa-test-project-2",
          "reset": true,
          "appliedResource": "//cloudresourcemanager.googleapis.com/projects/opa-test-project-2"
        },
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/organizations/474566717491",
          "rules": [
            {
              "enforce": true
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/organizations/474566717491"
        }
      ]
    },
    {
      "governedResource": {
        "fullResourceName": "//container.googleapis.com/projects/project2-244918/zones/us-central1-c/clusters/cluster-1/nodePools/default-pool",
        "parent": "//container.googleapis.com/projects/project2-244918/zones/us-central1-c/clusters/cluster-1",
        "project": "projects/761097189269",
        "folders": [
          "folders/800636178739",
          "folders/408342778736"
        ],
        "organization": "organizations/474566717491"
      },
      "consolidatedPolicy": {
        "attachedResource": "//cloudresourcemanager.googleapis.com/projects/project2-244918",
        "rules": [
          {
            "enforce": false
          }
        ],
        "appliedResource": "//cloudresourcemanager.googleapis.com/projects/project2-244918"
      },
      "policyBundle": [
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/projects/project2-244918",
          "rules": [
            {
              "enforce": false
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/projects/project2-244918"
        },
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/folders/408342778736",
          "rules": [
            {
              "enforce": false,
              "condition": {
                "expression": "resource.matchTag(\"474566717491/env\", \"prod\")",
                "title": "cond-title1",
                "description": "cond-desc1"
              }
            },
            {
              "enforce": true
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/folders/408342778736"
        },
        {
          "attachedResource": "//cloudresourcemanager.googleapis.com/organizations/474566717491",
          "rules": [
            {
              "enforce": true
            }
          ],
          "appliedResource": "//cloudresourcemanager.googleapis.com/organizations/474566717491"
        }
      ]
    }
  ]
  "constraint": {
    "customConstraint": {
      "name": "organizations/474566717491/customConstraints/custom.disableGkeAutoUpgrade",
      "resourceTypes": [
        "container.googleapis.com/NodePool"
      ],
      "methodTypes": [
        "CREATE",
        "UPDATE"
      ],
      "condition": "resource.management.autoUpgrade == false",
      "actionType": "ALLOW",
      "displayName": "Disable GKE auto upgrade",
      "description": "Only allow GKE NodePool resource create or updates if AutoUpgrade is not enabled"
    }
  }
}

Visualiza la herencia

Si tienes una activación a nivel de la organización del nivel Premium de Security Command Center, puedes visualizar la herencia de las políticas de la organización que analizaste con la consola de Google Cloud.

Para visualizar la visualización de herencia, crea un análisis de políticas de la organización para las políticas configuradas, contenedores o recursos. En la En la página Ejecutar análisis de consultas, haz clic en Analizar y, luego, selecciona Visualizar.

También puedes navegar a la URL de una consulta guardada, seleccionar los recursos que que quieras destacar y, luego, haz clic en Herencia de vistas.

En la página Herencia de recursos, se muestra una visualización del recurso. de los recursos seleccionados en tu consulta de análisis:

Visualización de la herencia de la política de la organización en una jerarquía de recursos. Visualización de una política booleana no aplicada.

  1. Indica si el recurso es una organización, una carpeta o un proyecto.

  2. Un punto azul indica que el recurso está seleccionado en la consulta.

  3. Indica que el recurso anula la política de su recurso superior.

  4. Indica que el recurso restablece la política de la organización al servicio administrado por Google predeterminada para esa política. Un recurso que restablece la política al valor predeterminado tiene un línea de puntos que la conecta con su elemento superior.

  5. Indica que el recurso combina la política con su superior.

  6. Indica que la política de la organización en este recurso aplica un booleana que se aplica o una restricción de lista con permisos de salida.

  7. Indica que la política de la organización en este recurso es una restricción de lista con valores denegados.

  8. Indica que la política de la organización en este recurso es booleana restricción que no se aplica.

¿Qué sigue?