En esta página, se explica cómo ver, comprender y aplicar las recomendaciones de políticas de la organización. Las recomendaciones de políticas de la organización te ayudan a establecer las políticas de la organización adecuadas sin interrumpir los sistemas.
Antes de comenzar
Enable the Organization Policy and Recommender APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.Configura la autenticación.
Select the tab for how you plan to use the samples on this page:
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a gcloud CLI.
Instala Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI ejecutando el siguiente comando:
gcloud init
Si usas un proveedor de identidad externo (IdP), primero debes acceder a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Google Cloud .
Comprende las recomendaciones de políticas de la organización.
Roles de IAM obligatorios
En esta sección, se describen los roles y los permisos de IAM que necesitas para trabajar con las recomendaciones de políticas de la organización.
Para obtener los permisos que necesitas para administrar las recomendaciones de políticas de la organización, pídele a tu administrador que te otorgue los siguientes roles de IAM en el recurso para el que deseas administrar las recomendaciones (proyecto, carpeta u organización):
-
Para ver las recomendaciones de políticas de la organización:
Visualizador del recomendador de políticas de la organización (
roles/recommender.orgPolicyViewer
) -
Para aplicar y descartar recomendaciones de políticas de la organización:
Administrador del recomendador de políticas de la organización (
roles/recommender.orgPolicyAdmin
) -
Para administrar las políticas de la organización:
Administrador de políticas de la organización (
roles/orgpolicy.policyAdmin
)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para administrar las recomendaciones 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 administrar las recomendaciones de políticas de la organización:
-
Para ver las recomendaciones de políticas de la organización, haz lo siguiente:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
-
Para aplicar y descartar recomendaciones de políticas de la organización, haz lo siguiente:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
recommender.orgPolicyRecommendations.update
-
-
Para administrar las políticas de la organización, haz lo siguiente:
-
orgpolicy.policy.get
-
orgpolicy.policy.set
-
orgpolicy.constraints.list
-
orgpolicy.policies.create
-
orgpolicy.policies.delete
-
orgpolicy.policies.list
-
orgpolicy.policies.update
-
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Limitaciones
La vista previa del Recomendador de políticas de la organización tiene las siguientes limitaciones:
Las estadísticas solo están disponibles para los proyectos, las carpetas y las organizaciones que tienen recomendaciones.
Las recomendaciones solo se realizan para las restricciones que no están configuradas en un recurso determinado o en cualquiera de sus recursos secundarios.
Restricciones admitidas
Las recomendaciones solo están disponibles para las siguientes restricciones de políticas de la organización:
Creación de claves de cuentas de servicio (
iam.managed.disableServiceAccountKeyCreation
)Subida de claves de cuentas de servicio (
iam.managed.disableServiceAccountKeyUpload
)Reglas de reenvío de protocolos (
compute.managed.restrictProtocolForwardingCreationForTypes
)
Revisa y aplica recomendaciones
Puedes revisar y aplicar recomendaciones de políticas de la organización con Google Cloud CLI y la API del recomendador.
gcloud
Revisa las recomendaciones:
Para enumerar tus recomendaciones, ejecuta el comando
gcloud recommender recommendations list
:gcloud recommender recommendations list \ --location=global \ --recommender=google.orgpolicy.policy.Recommender \ --RESOURCE_TYPE=RESOURCE_ID \ --filter="recommenderSubtype:RECOMMENDER_SUBTYPE" \ --format=FORMAT
Reemplaza los siguientes valores:
RESOURCE_TYPE
: el tipo de recurso para el que deseas enumerar las recomendaciones. Usa el valorproject
,folder
oorganization
.RESOURCE_ID
: Es el ID del Google Cloud proyecto, la carpeta o la organización para el que deseas enumerar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.RECOMMENDER_SUBTYPE
: Opcional Es el ID del subtipo para el que deseas ver recomendaciones. Los subtipos válidos incluyen los siguientes:ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION
proporciona recomendaciones para la restriccióniam.managed.disableServiceAccountKeyCreation
.ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_UPLOAD
proporciona recomendaciones para la restriccióniam.managed.disableServiceAccountKeyUpload
FORMAT
: El formato de la respuesta. Usa el valorjson
oyaml
.
La respuesta es similar al ejemplo a continuación. En este ejemplo, se analizan dos recursos en busca de claves de cuentas de servicio externas y no se detectan incumplimientos. Como resultado, la recomendación sugiere establecer el parámetro
iam.managed.disableServiceAccountKeyCreation
para evitar incumplimientos futuros.[ { "associatedInsights": [ { "insight": "projects/123456789012/locations/global/insightTypes/google.orgpolicy.policy.Insight/insights/fb927dc1-9695-4436-0000-f0f285007c0f" } ], "content": { "operationGroups": [ { "operations": [ { "action": "add", "path": "/", "resource": "//orgpolicy.googleapis.com/projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation", "resourceType": "orgpolicy.googleapis.com/Policy", "value": { "etag": "", "name": "projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation", "spec": { "etag": "", "inheritFromParent": false, "reset": false, "rules": [ { "enforce": true } ] } } } ] } ], "overview": { "constraint": { "id": "constraints/iam.managed.disableServiceAccountKeyCreation", "name": "Disable service account key creation" }, "enforcedResources": [ { "numOfResources": "2", "resourceType": "iam.googleapis.com/ServiceAccountKey" }, { "numOfResources": "1", "resourceType": "cloudresourcemanager.googleapis.com/Project" } ] } }, "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "ACTIVE", "stateMetadata": { "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] } ]
Para obtener más información sobre los componentes de una recomendación, consulta Cómo comprender las recomendaciones.
Para aplicar una recomendación, sigue estos pasos:
Usa el comando
gcloud recommender recommendations mark-claimed
para cambiar el estado de la recomendación aCLAIMED
, lo que evita que la recomendación cambie mientras la aplicas:gcloud recommender recommendations mark-claimed \ RECOMMENDATION_ID \ --location=global \ --recommender=google.orgpolicy.policy.Recommender \ --RESOURCE_TYPE=RESOURCE_ID \ --format=FORMAT \ --etag=ETAG \ --state-metadata=STATE_METADATA
Reemplaza los siguientes valores:
-
RECOMMENDATION_ID
: El identificador único de la recomendación. Este valor aparece al final del camponame
en la recomendación. En el ejemplo anterior, el identificador esfb927dc1-9695-4436-0000-f0f285007c0f
. -
RESOURCE_TYPE
: el tipo de recurso para el que deseas administrar las recomendaciones. Usa el valorproject
,folder
oorganization
. -
RESOURCE_ID
: Es el ID del proyecto, la carpeta o la organización de Google Cloudpara el que deseas enumerar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
. -
FORMAT
: El formato de la respuesta. Usa el valorjson
oyaml
. -
ETAG
: Es un identificador para una versión de la recomendación, como"7caf4103d7669e12"
. Ten en cuenta que este valor puede incluir comillas. -
STATE_METADATA
: Opcional Pares clave-valor separados por comas que contienen la selección de metadatos sobre la recomendación. Por ejemplo:--state-metadata=reviewedBy=alice,priority=high
Los metadatos reemplazan el campostateInfo.stateMetadata
en la recomendación.
Si el comando se ejecuta de forma correcta, la respuesta muestra la recomendación en un estado
CLAIMED
, como se muestra en el siguiente ejemplo. Para mayor claridad, en el ejemplo, se omiten la mayoría de los campos:{ "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "CLAIMED", "stateMetadata": {\ "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] }
-
Actualiza y aplica la política de la organización para el proyecto, la carpeta o la organización especificados por
RESOURCE_TYPE
yRESOURCE_ID
de modo que refleje la recomendación.Actualiza el estado de la recomendación a
SUCCEEDED
si pudiste aplicar la recomendación, oFAILED
si no pudiste aplicarla:gcloud recommender recommendations COMMAND \ RECOMMENDATION_ID \ --location=global \ --recommender=google.iam.policy.Recommender \ --RESOURCE_TYPE=RESOURCE_ID \ --format=FORMAT \ --etag=ETAG \ --state-metadata=STATE_METADATA
Reemplaza los siguientes valores:
-
COMMAND
: Usamark-succeeded
si aplicaste la recomendación correctamente omark-failed
si no pudiste aplicarla. -
RECOMMENDATION_ID
: El identificador único de la recomendación. Este valor aparece al final del camponame
en la recomendación. En el ejemplo anterior, el identificador esfb927dc1-9695-4436-0000-f0f285007c0f
. -
RESOURCE_TYPE
: el tipo de recurso para el que deseas administrar las recomendaciones. Usa el valorproject
,folder
oorganization
. -
RESOURCE_ID
: Es el ID del proyecto, la carpeta o la organización de Google Cloudpara el que deseas enumerar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
. -
FORMAT
: El formato de la respuesta. Usa el valorjson
oyaml
. -
ETAG
: Es un identificador para una versión de la recomendación, como"7caf4103d7669e12"
. Ten en cuenta que este valor puede incluir comillas. -
STATE_METADATA
: Opcional Pares clave-valor separados por comas que contienen la selección de metadatos sobre la recomendación. Por ejemplo:--state-metadata=reviewedBy=alice,priority=high
Los metadatos reemplazan el campostateInfo.stateMetadata
en la recomendación.
Por ejemplo, si marcaste la recomendación como correcta, la respuesta muestra la recomendación en un estado
SUCCEEDED
. Para mayor claridad, en este ejemplo, se omiten la mayoría de los campos:{ "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "SUCCEEDED", "stateMetadata": { "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] }
Para revertir los cambios en la política de la organización, establece la política de la organización en su configuración original, que se proporciona en el campo
configuredPolicy
de la estadística asociada.-
REST
Revisa las recomendaciones:
Para enumerar todas las recomendaciones disponibles para tu proyecto, carpeta u organización, usa el método
recommendations.list
de la API de Recommender.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
RESOURCE_TYPE
: Es el tipo de recurso para el que deseas administrar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: Es el ID delGoogle Cloud proyecto, la carpeta o la organización para el que deseas administrar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.-
PAGE_SIZE
: Opcional La cantidad máxima de resultados que se mostrarán con esta solicitud. Si no se especifica, el servidor determinará la cantidad de resultados que se mostrarán. Si la cantidad de recomendaciones es mayor que el tamaño de la página, la respuesta contiene un token de paginación que puedes usar para recuperar la siguiente página de resultados. -
PAGE_TOKEN
: Opcional Es el token de paginación que se mostró en una respuesta anterior de este método. Si se especifica, la lista de recomendaciones comenzará donde finalizó la solicitud anterior. -
FILTER
: Opcional Una expresión de filtro para restringir las recomendaciones que se muestran. Puedes filtrar recomendaciones según el campostateInfo.state
. Por ejemplo,stateInfo.state:"DISMISSED"
ostateInfo.state:"FAILED"
. PROJECT_ID
: El ID de tu proyecto de Google Cloud . Los IDs de proyecto son cadenas alfanuméricas, comomy-project
.
Método HTTP y URL:
GET https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=FILTER
Para enviar tu solicitud, expande una de estas opciones:
La respuesta es similar al ejemplo a continuación. En este ejemplo, se analizan dos recursos en busca de claves de cuentas de servicio externas y no se detectan incumplimientos. Como resultado, la recomendación sugiere establecer el parámetro
iam.managed.disableServiceAccountKeyCreation
para evitar incumplimientos en el futuro.[ { "associatedInsights": [ { "insight": "projects/123456789012/locations/global/insightTypes/google.orgpolicy.policy.Insight/insights/66d543f3-845d-49d6-a26b-80d84804d8a8" } ], "content": { "operationGroups": [ { "operations": [ { "action": "add", "path": "/", "resource": "//orgpolicy.googleapis.com/projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation", "resourceType": "orgpolicy.googleapis.com/Policy", "value": { "etag": "", "name": "projects/123456789012/policies/iam.managed.disableServiceAccountKeyCreation", "spec": { "etag": "", "inheritFromParent": false, "reset": false, "rules": [ { "enforce": true } ] } } } ] } ], "overview": { "constraint": { "id": "constraints/iam.managed.disableServiceAccountKeyCreation", "name": "Disable service account key creation" }, "enforcedResources": [ { "numOfResources": "2", "resourceType": "iam.googleapis.com/ServiceAccountKey" }, { "numOfResources": "1", "resourceType": "cloudresourcemanager.googleapis.com/Project" } ] } }, "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "ACTIVE", "stateMetadata": { "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] } ]
Para obtener más información sobre los componentes de una recomendación, consulta Cómo comprender las recomendaciones.
Para aplicar una recomendación, sigue estos pasos:
Marca la recomendación como
CLAIMED
:Para marcar una recomendación como
CLAIMED
, lo que evita que la recomendación cambie mientras la aplicas, usa el métodorecommendations.markClaimed
de la API de Recommender.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
RESOURCE_TYPE
: Es el tipo de recurso para el que deseas administrar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: Es el ID delGoogle Cloud proyecto, la carpeta o la organización para el que deseas administrar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.RECOMMENDATION_ID
: El identificador único de la recomendación. Este valor aparece al final del camponame
en la recomendación. Por ejemplo, si el camponame
esprojects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f
, el ID de recomendación esfb927dc1-9695-4436-0000-f0f285007c0f
.ETAG
: El valor del campoetag
en la recomendación, como"dd0686e7136a4cbb"
. Usa barras inversas para escapar las comillas, por ejemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: Opcional. Un objeto que contiene pares clave-valor con tu elección de metadatos sobre la recomendación. Por ejemplo,{"reviewedBy": "alice", "priority": "high"}
. Los metadatos reemplazan el campostateInfo.stateMetadata
en la recomendación.PROJECT_ID
: El ID de tu proyecto de Google Cloud . Los IDs de proyecto son cadenas alfanuméricas, comomy-project
.
Método HTTP y URL:
POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markClaimed
Cuerpo JSON de la solicitud:
{ "etag": "ETAG", "stateMetadata": { "STATE_METADATA" } }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta muestra la recomendación en un estado
CLAIMED
, como se muestra en el siguiente ejemplo. Para mayor claridad, en este ejemplo, se omiten la mayoría de los campos:{ "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "CLAIMED", "stateMetadata": { "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] }
Actualiza la política de la organización para el proyecto, la carpeta o la organización especificados por
RESOURCE_TYPE
yRESOURCE_ID
de modo que refleje la recomendación.Actualiza el estado de la recomendación a
SUCCEEDED
si aplicaste la recomendación correctamente o aFAILED
si no pudiste aplicarla:SUCCEEDED
Para marcar una recomendación como
SUCCEEDED
, lo que indica que pudiste aplicarla, usa el métodorecommendations.markSucceeded
de la API de Recommender.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
RESOURCE_TYPE
: Es el tipo de recurso para el que deseas administrar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: Es el ID delGoogle Cloud proyecto, la carpeta o la organización para el que deseas administrar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.RECOMMENDATION_ID
: El identificador único de la recomendación. Este valor aparece al final del camponame
en la recomendación. Por ejemplo, si el camponame
esprojects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f
, el ID de recomendación esfb927dc1-9695-4436-0000-f0f285007c0f
.ETAG
: El valor del campoetag
en la recomendación, como"dd0686e7136a4cbb"
. Usa barras inversas para escapar las comillas, por ejemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: Opcional. Un objeto que contiene pares clave-valor con tu elección de metadatos sobre la recomendación. Por ejemplo,{"reviewedBy": "alice", "priority": "high"}
. Los metadatos reemplazan el campostateInfo.stateMetadata
en la recomendación.PROJECT_ID
: El ID de tu proyecto de Google Cloud . Los IDs de proyecto son cadenas alfanuméricas, comomy-project
.
Método HTTP y URL:
POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markSucceeded
Cuerpo JSON de la solicitud:
{ "etag": "ETAG", "stateMetadata": { "STATE_METADATA" } }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta muestra la recomendación en un estado
SUCCEEDED
, como se muestra en el siguiente ejemplo. Para mayor claridad, en este ejemplo, se omiten la mayoría de los campos:{ "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "SUCCEEDED", "stateMetadata": { "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] }
FAILED
Para marcar una recomendación como
FAILED
, lo que indica que no pudiste aplicarla, usa el métodorecommendations.markFailed
de la API de Recommender.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
RESOURCE_TYPE
: Es el tipo de recurso para el que deseas administrar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: Es el ID delGoogle Cloud proyecto, la carpeta o la organización para el que deseas administrar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.RECOMMENDATION_ID
: El identificador único de la recomendación. Este valor aparece al final del camponame
en la recomendación. Por ejemplo, si el camponame
esprojects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f
, el ID de recomendación esfb927dc1-9695-4436-0000-f0f285007c0f
.ETAG
: El valor del campoetag
en la recomendación, como"dd0686e7136a4cbb"
. Usa barras inversas para escapar las comillas, por ejemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: Opcional. Un objeto que contiene pares clave-valor con tu elección de metadatos sobre la recomendación. Por ejemplo,{"reviewedBy": "alice", "priority": "high"}
. Los metadatos reemplazan el campostateInfo.stateMetadata
en la recomendación.PROJECT_ID
: El ID de tu proyecto de Google Cloud . Los IDs de proyecto son cadenas alfanuméricas, comomy-project
.
Método HTTP y URL:
POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markFailed
Cuerpo JSON de la solicitud:
{ "etag": "ETAG", "stateMetadata": { "STATE_METADATA" } }
Para enviar tu solicitud, expande una de estas opciones:
La respuesta muestra la recomendación en un estado
FAILED
, como se muestra en el siguiente ejemplo. Para mayor claridad, en este ejemplo, se omiten la mayoría de los campos:{ "description": "After analyzing 3 resources and finding 0 violations, Organization Policy Recommender recommends that you disable the creation of service account external keys on your project by enforcing constraints/iam.managed.disableServiceAccountKeyCreation.", "etag": "\"826e992a0f9793ff\"", "lastRefreshTime": "2024-12-07T08:00:00Z", "name": "projects/123456789012/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f", "primaryImpact": { "category": "SECURITY" }, "priority": "P1", "recommenderSubtype": "ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION", "stateInfo": { "state": "FAILED", "stateMetadata": { "reviewedBy": "alice", "priority": "high" } }, "targetResources": [ "//cloudresourcemanager.googleapis.com/projects/123456789012" ] }
Información sobre las recomendaciones
Cada recomendación incluye información para ayudarte a comprender por qué se hizo la recomendación y sugerencias para cambiar la configuración de tu política de la organización. Entre sus atributos principales, se incluyen los siguientes:
description
: Es un resumen de la recomendación legible para las personas.recommenderSubtype
: Es el identificador de un subtipo de recomendaciones. Cada restricción tiene unrecommenderSubtype
único.content
: Contiene los cambios recomendados para tu política de la organización.overview
: Es la información condensada de la descripción general de la recomendación.constraint
: Proporciona información sobre la restricción.enforced_resources
: Proporciona información sobre los recursos que se ven afectados por esta política de la organización si aplicas la recomendación.operationGroups
: Es un conjunto de una o más operaciones en la política de la organización cuando aplicas una recomendación.
associatedInsights
: Es el nombre del recurso de las estadísticas que llevaron a esta recomendación.
Para obtener más información sobre los atributos de una recomendación, consulta la referencia de recomendaciones.
Las estadísticas y las recomendaciones se generan para los recursos que no tienen establecida una de las políticas de la organización admitidas o ninguno de sus recursos secundarios. Para ver la configuración de la política de la organización en la que se basa esta recomendación, consulta las estadísticas de políticas de la organización asociadas con la recomendación. Estas estadísticas se enumeran en el campo
associatedInsights
. Para ver una estadística de política de la organización asociada con la recomendación, haz lo siguiente:Identifica qué estadísticas del campo
associatedInsights
son estadísticas de políticas de la organización. Las estadísticas de políticas de la organización tienen el tipo de estadísticagoogle.orgpolicy.policy.Insight
. Este tipo aparece después deinsightTypes
en el campoinsight
.Copia el ID de la estadística de la política de la organización. El ID es todo lo que se encuentra después de
insights/
en el campoinsight
. Por ejemplo, si el campo de la estadística diceprojects/123456789012/locations/us/insightTypes/google.orgpolicy.policy.Insight/insights/fb927dc1-9695-4436-0000-f0f285007c0f
, el ID de la estadística esfb927dc1-9695-4436-0000-f0f285007c0f
.Sigue las instrucciones para obtener una estadística de política de la organización con el ID de estadística que copiaste.
Exportar recomendaciones a BigQuery
Para ver instantáneas diarias de todas las recomendaciones para tu organización, incluidas las recomendaciones de políticas de la organización, puedes exportar tus recomendaciones a BigQuery.
Para exportar tus recomendaciones a BigQuery, debes configurar una transferencia de datos con el Servicio de transferencia de datos de BigQuery. Para obtener información sobre cómo configurar una transferencia de datos, consulta Exporta recomendaciones a BigQuery.
¿Qué sigue?
- Obtén más información sobre el recomendador.
- Obtén información para usar las estadísticas de políticas de la organización.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-22 (UTC)