En esta página se explica cómo ver, entender y aplicar las recomendaciones de políticas de la organización. Las recomendaciones de políticas de organización te ayudan a definir las políticas de organización adecuadas sin interrumpir los sistemas.
Antes de empezar
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 REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .
Consulta las recomendaciones de políticas de organización.
Roles de gestión de identidades y accesos necesarios
En esta sección se describen los roles y permisos de gestión de identidades y accesos que necesitas para trabajar con las recomendaciones de políticas de la organización.
Para obtener los permisos que necesitas para gestionar las recomendaciones de políticas de organización, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el recurso para el que quieras gestionar las recomendaciones (proyecto, carpeta u organización):
-
Para ver las recomendaciones de políticas de organización, sigue estos pasos:
Lector del recomendador de políticas de organización (
roles/recommender.orgPolicyViewer
) -
Para aplicar y rechazar recomendaciones de políticas de organización, sigue estos pasos:
Administrador del recomendador de políticas de organización (
roles/recommender.orgPolicyAdmin
) -
Para gestionar las políticas de organización, sigue estos pasos:
Administrador de políticas de organización (
roles/orgpolicy.policyAdmin
)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para gestionar las recomendaciones de políticas de la organización. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para gestionar las recomendaciones de políticas de la organización, se necesitan los siguientes permisos:
-
Para ver las recomendaciones de políticas de la organización, siga estos pasos:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
-
Para aplicar y rechazar recomendaciones de políticas de la organización, sigue estos pasos:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
recommender.orgPolicyRecommendations.update
-
-
Para gestionar las políticas de la organización, sigue estos pasos:
-
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 u otros roles predefinidos.
Limitaciones
La vista previa de Recommender de políticas de 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 hacen para las restricciones que no estén configuradas en un recurso determinado o en ninguno de sus recursos secundarios.
Restricciones admitidas
Las recomendaciones solo están disponibles para las siguientes restricciones de políticas de organización:
Creación de claves de cuenta de servicio (
iam.managed.disableServiceAccountKeyCreation
)Subida de claves de cuentas de servicio (
iam.managed.disableServiceAccountKeyUpload
)Reglas de reenvío de protocolos (
compute.managed.restrictProtocolForwardingCreationForTypes
)
Revisar y aplicar recomendaciones
Puedes revisar y aplicar recomendaciones de políticas de organización con la CLI de Google Cloud y la API Recommender.
gcloud
Revisa tus recomendaciones:
Para ver una lista de 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
Sustituye los siguientes valores:
RESOURCE_TYPE
: el tipo de recurso del que quieres obtener recomendaciones. Usa el valorproject
,folder
oorganization
.RESOURCE_ID
: el ID del Google Cloud proyecto, la carpeta o la organización de los que quieres obtener una lista de recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.RECOMMENDER_SUBTYPE
: opcional. ID del subtipo del que quieres ver recomendaciones. Entre los subtipos válidos se incluyen los siguientes:ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION
ofrece 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 siguiente ejemplo. En este ejemplo, se analizan dos recursos en busca de claves de cuentas de servicio externas y no se detecta ninguna infracción. Por lo tanto, te recomendamos que definas el valor de
iam.managed.disableServiceAccountKeyCreation
para evitar futuras infracciones.[ { "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 el artículo Información sobre 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 impide 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
Sustituye los siguientes valores:
-
RECOMMENDATION_ID
: identificador único de la recomendación. Este valor aparece al final del camponame
de la recomendación. En el ejemplo anterior, el identificador esfb927dc1-9695-4436-0000-f0f285007c0f
. -
RESOURCE_TYPE
: el tipo de recurso para el que quieres gestionar las recomendaciones. Usa el valorproject
,folder
oorganization
. -
RESOURCE_ID
: ID del proyecto, la carpeta o la organización de Google Cloud para los que quieres obtener recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
. -
FORMAT
: el formato de la respuesta. Usa el valorjson
oyaml
. -
ETAG
: identificador de 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 los metadatos que elijas sobre la recomendación. Por ejemplo,--state-metadata=reviewedBy=alice,priority=high
. Los metadatos sustituyen al campostateInfo.stateMetadata
de la recomendación.
Si el comando se ejecuta correctamente, la respuesta muestra la recomendación en 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 organización del proyecto, la carpeta o la organización especificados por
RESOURCE_TYPE
yRESOURCE_ID
para que refleje la recomendación.Actualiza el estado de la recomendación a
SUCCEEDED
si has podido aplicarla o aFAILED
si no has podido hacerlo: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
Sustituye los siguientes valores:
-
COMMAND
: usamark-succeeded
si has aplicado la recomendación correctamente omark-failed
si no has podido aplicarla. -
RECOMMENDATION_ID
: identificador único de la recomendación. Este valor aparece al final del camponame
de la recomendación. En el ejemplo anterior, el identificador esfb927dc1-9695-4436-0000-f0f285007c0f
. -
RESOURCE_TYPE
: el tipo de recurso para el que quieres gestionar las recomendaciones. Usa el valorproject
,folder
oorganization
. -
RESOURCE_ID
: ID del proyecto, la carpeta o la organización de Google Cloud para los que quieres obtener recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
. -
FORMAT
: el formato de la respuesta. Usa el valorjson
oyaml
. -
ETAG
: identificador de 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 los metadatos que elijas sobre la recomendación. Por ejemplo,--state-metadata=reviewedBy=alice,priority=high
. Los metadatos sustituyen al campostateInfo.stateMetadata
de la recomendación.
Por ejemplo, si has marcado la recomendación como aplicada correctamente, la respuesta mostrará la recomendación en el 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 tus recomendaciones:
Para mostrar todas las recomendaciones disponibles de tu proyecto, carpeta u organización, usa el método
recommendations.list
de la API Recommender.Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
RESOURCE_TYPE
: el tipo de recurso para el que quieres gestionar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: el ID delGoogle Cloud proyecto, la carpeta o la organización para los que quieres gestionar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.-
PAGE_SIZE
: opcional. Número máximo de resultados que se devolverán en esta solicitud. Si no se especifica, el servidor determinará el número de resultados que se devolverán. Si el número de recomendaciones es superior al tamaño de la página, la respuesta contiene un token de paginación que puedes usar para obtener la siguiente página de resultados. -
PAGE_TOKEN
: opcional. El token de paginación devuelto en una respuesta anterior de este método. Si se especifica, la lista de recomendaciones empezará donde terminó la solicitud anterior. -
FILTER
: opcional. Una expresión de filtro para restringir las recomendaciones devueltas. Puede filtrar las recomendaciones en función del campostateInfo.state
. Por ejemplo,stateInfo.state:"DISMISSED"
ostateInfo.state:"FAILED"
. PROJECT_ID
: tu ID de proyecto. 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, despliega una de estas opciones:
La respuesta es similar al siguiente ejemplo. En este ejemplo, se analizan dos recursos en busca de claves de cuentas de servicio externas y no se detecta ninguna infracción. Por lo tanto, te recomendamos que definas el valor de
iam.managed.disableServiceAccountKeyCreation
para evitar futuras infracciones.[ { "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 el artículo Información sobre 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 impide que cambie mientras la aplicas, usa el métodorecommendations.markClaimed
de la API Recommender.Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
RESOURCE_TYPE
: el tipo de recurso para el que quieres gestionar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: el ID delGoogle Cloud proyecto, la carpeta o la organización para los que quieres gestionar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.RECOMMENDATION_ID
: identificador único de la recomendación. Este valor aparece al final del camponame
de 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
: valor del campoetag
de la recomendación, como"dd0686e7136a4cbb"
. Usa barras invertidas para escapar las comillas. Por ejemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: opcional. Objeto que contiene pares clave-valor con los metadatos que elijas sobre la recomendación. Por ejemplo,{"reviewedBy": "alice", "priority": "high"}
. Los metadatos sustituyen al campostateInfo.stateMetadata
de la recomendación.PROJECT_ID
: tu ID de proyecto. 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, despliega una de estas opciones:
La respuesta muestra la recomendación en 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 organización del proyecto, la carpeta o la organización especificados por
RESOURCE_TYPE
yRESOURCE_ID
para que refleje la recomendación.Actualiza el estado de la recomendación a
SUCCEEDED
si la has aplicado correctamente o aFAILED
si no has podido aplicarla:SUCCEEDED
Para marcar una recomendación como
SUCCEEDED
, lo que indica que has podido aplicarla, usa el métodorecommendations.markSucceeded
SUCCEEDED
de la API Recommender.Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
RESOURCE_TYPE
: el tipo de recurso para el que quieres gestionar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: el ID delGoogle Cloud proyecto, la carpeta o la organización para los que quieres gestionar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.RECOMMENDATION_ID
: identificador único de la recomendación. Este valor aparece al final del camponame
de 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
: valor del campoetag
de la recomendación, como"dd0686e7136a4cbb"
. Usa barras invertidas para escapar las comillas. Por ejemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: opcional. Objeto que contiene pares clave-valor con los metadatos que elijas sobre la recomendación. Por ejemplo,{"reviewedBy": "alice", "priority": "high"}
. Los metadatos sustituyen al campostateInfo.stateMetadata
de la recomendación.PROJECT_ID
: tu ID de proyecto. 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, despliega una de estas opciones:
La respuesta muestra la recomendación en 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 has podido aplicarla, usa el métodorecommendations.markFailed
de la API Recommender.Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
RESOURCE_TYPE
: el tipo de recurso para el que quieres gestionar las recomendaciones. Usa el valorprojects
,folders
oorganizations
.RESOURCE_ID
: el ID delGoogle Cloud proyecto, la carpeta o la organización para los que quieres gestionar las recomendaciones. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.RECOMMENDATION_ID
: identificador único de la recomendación. Este valor aparece al final del camponame
de 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
: valor del campoetag
de la recomendación, como"dd0686e7136a4cbb"
. Usa barras invertidas para escapar las comillas. Por ejemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: opcional. Objeto que contiene pares clave-valor con los metadatos que elijas sobre la recomendación. Por ejemplo,{"reviewedBy": "alice", "priority": "high"}
. Los metadatos sustituyen al campostateInfo.stateMetadata
de la recomendación.PROJECT_ID
: tu ID de proyecto. 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, despliega una de estas opciones:
La respuesta muestra la recomendación en 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 que te ayuda a entender por qué se ha hecho y sugerencias para cambiar la configuración de la política de tu organización. Entre sus atributos principales se incluyen los siguientes:
description
: resumen de la recomendación legible por humanos.recommenderSubtype
: identificador de un subtipo de recomendaciones. Cada restricción tiene unrecommenderSubtype
único.content
: contiene los cambios recomendados en la política de tu organización.overview
: información general resumida sobre la recomendación.constraint
: proporciona información sobre la restricción.enforced_resources
: proporciona información sobre los recursos a los que afecta esta política de la organización si aplicas la recomendación.operationGroups
: un conjunto de una o varias operaciones en la política de la organización cuando aplicas una recomendación.
associatedInsights
: el nombre del recurso de las estadísticas que han llevado 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 una de las políticas de organización admitidas definida o para ninguno de sus recursos secundarios. Para ver la configuración de la política de organización en la que se basa esta recomendación, consulta las estadísticas de la política de organización asociadas a la recomendación. Estas estadísticas se indican en el campo
associatedInsights
. Para ver una estadística de la política de la organización asociada a 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 las 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 hay después de
insights/
en el campoinsight
. Por ejemplo, si el campo de la estadística esprojects/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 la política de la organización con el ID que has copiado.
Exportar recomendaciones a BigQuery
Para ver las estadísticas diarias de todas las recomendaciones de tu organización, incluidas las recomendaciones de políticas de la organización, puedes exportarlas a BigQuery.
Para exportar sus recomendaciones a BigQuery, debe configurar una transferencia de datos mediante BigQuery Data Transfer Service. Para saber cómo configurar una transferencia de datos, consulta el artículo Exportar recomendaciones a BigQuery.
Siguientes pasos
- Consulta más información sobre Recommender.
- Consulta cómo usar las estadísticas de las políticas de la organización.
A menos que se indique lo contrario, el contenido de esta página está sujeto a la licencia Reconocimiento 4.0 de Creative Commons y las muestras de código están sujetas a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio web de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-22 (UTC).