Nesta página, explicamos como visualizar, entender e aplicar recomendações de políticas da organização. As recomendações de política da organização ajudam você a definir as políticas da organização certas sem interromper os sistemas.
Antes de começar
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.Configure a autenticação.
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 as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud init
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Entenda as recomendações de políticas da organização.
Papéis necessários do IAM
Esta seção descreve os papéis e as permissões do IAM necessários para trabalhar com recomendações de políticas da organização.
Para receber as permissões necessárias para gerenciar recomendações de política da organização, peça ao administrador para conceder a você os seguintes papéis do IAM no recurso para o qual você quer gerenciar as recomendações (projeto, pasta ou organização):
-
Para conferir as recomendações de políticas da organização:
Leitor do recomendador de políticas da organização (
roles/recommender.orgPolicyViewer
) -
Para aplicar e dispensar recomendações de políticas da organização:
Administrador do recomendador de políticas da organização (
roles/recommender.orgPolicyAdmin
) -
Para gerenciar políticas da organização:
Administrador de políticas da organização (
roles/orgpolicy.policyAdmin
)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esses papéis predefinidos contêm as permissões necessárias para gerenciar recomendações de políticas da organização. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para gerenciar as recomendações de políticas da organização:
-
Para conferir recomendações de políticas da organização:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
-
Para aplicar e dispensar recomendações de políticas da organização:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
recommender.orgPolicyRecommendations.update
-
-
Para gerenciar as políticas da organização:
-
orgpolicy.policy.get
-
orgpolicy.policy.set
-
orgpolicy.constraints.list
-
orgpolicy.policies.create
-
orgpolicy.policies.delete
-
orgpolicy.policies.list
-
orgpolicy.policies.update
-
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Limitações
A prévia do Recommender de políticas da organização tem as seguintes limitações:
Os insights estão disponíveis apenas para projetos, pastas e organizações que têm recomendações.
As recomendações são feitas apenas para restrições que não estão configuradas em um determinado recurso ou em qualquer um dos recursos filhos dele.
Restrições aceitas
As recomendações estão disponíveis apenas para as seguintes restrições de política da organização:
Criação de chaves de conta de serviço (
iam.managed.disableServiceAccountKeyCreation
)Upload da chave da conta de serviço (
iam.managed.disableServiceAccountKeyUpload
)Regras de encaminhamento de protocolo (
compute.managed.restrictProtocolForwardingCreationForTypes
)
Analisar e aplicar recomendações
É possível analisar e aplicar recomendações de política da organização com a Google Cloud CLI e a API Recommender.
gcloud
Revisar suas recomendações:
Para listar as recomendações, execute o 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
Substitua os seguintes valores:
RESOURCE_TYPE
: o tipo de recurso para que você quer listar recomendações. Use o valorproject
,folder
ouorganization
.RESOURCE_ID
: o ID do Google Cloud projeto, pasta ou organização para que você quer listar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.RECOMMENDER_SUBTYPE
: opcional. O ID do subtipo para o qual você quer ver recomendações. Os subtipos válidos incluem:ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_CREATION
fornece recomendações para a restriçãoiam.managed.disableServiceAccountKeyCreation
.ADD_POLICY_DISABLE_SERVICE_ACCOUNT_KEY_UPLOAD
fornece recomendações para a restriçãoiam.managed.disableServiceAccountKeyUpload
.
FORMAT
: o formato da resposta. Use o valorjson
ouyaml
.
A resposta é semelhante ao exemplo a seguir. Neste exemplo, dois recursos são analisados para chaves de conta de serviço externa, e nenhuma violação é detectada. Por isso, a recomendação sugere definir o
iam.managed.disableServiceAccountKeyCreation
para evitar violações futuras.[ { "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 saber mais sobre os componentes de uma recomendação, consulte Noções básicas sobre recomendações.
Para aplicar uma recomendação:
Use o comando
gcloud recommender recommendations mark-claimed
para mudar o estado da recomendação paraCLAIMED
, o que impede que a recomendação seja alterada enquanto você a aplica: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
Substitua os seguintes valores:
-
RECOMMENDATION_ID
: o identificador exclusivo da recomendação. Esse valor é exibido no final do camponame
na recomendação. No exemplo anterior, o identificador éfb927dc1-9695-4436-0000-f0f285007c0f
. -
RESOURCE_TYPE
: o tipo de recurso para que você quer gerenciar recomendações. Use o valorproject
,folder
ouorganization
. -
RESOURCE_ID
: o ID do projeto, da pasta ou da organização do Google Cloud para que você quer listar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
FORMAT
: o formato da resposta. Use o valorjson
ouyaml
. -
ETAG
: um identificador de uma versão da recomendação, como"7caf4103d7669e12"
. Esse valor pode incluir aspas. -
STATE_METADATA
: opcional. Pares de chave-valor separados por vírgula que contenham a opção de metadados sobre a recomendação. Por exemplo,--state-metadata=reviewedBy=alice,priority=high
. Os metadados substituem o campostateInfo.stateMetadata
na recomendação.
Se o comando for bem-sucedido, a resposta mostrará a recomendação em um estado
CLAIMED
, conforme mostrado no exemplo a seguir. Para esclarecer, o exemplo omite a maioria dos 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" ] }
-
Atualize e aplique a política da organização para o projeto, a pasta ou a organização especificada por
RESOURCE_TYPE
eRESOURCE_ID
para que ela reflita a recomendação.Atualize o estado da recomendação para
SUCCEEDED
se você puder aplicar a recomendação, ouFAILED
se não for possível aplicá-la: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
Substitua os seguintes valores:
-
COMMAND
: usemark-succeeded
se você aplicou a recomendação com sucesso oumark-failed
se não foi possível aplicar a recomendação. -
RECOMMENDATION_ID
: o identificador exclusivo da recomendação. Esse valor é exibido no final do camponame
na recomendação. No exemplo anterior, o identificador éfb927dc1-9695-4436-0000-f0f285007c0f
. -
RESOURCE_TYPE
: o tipo de recurso para que você quer gerenciar recomendações. Use o valorproject
,folder
ouorganization
. -
RESOURCE_ID
: o ID do projeto, da pasta ou da organização do Google Cloud para que você quer listar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
. -
FORMAT
: o formato da resposta. Use o valorjson
ouyaml
. -
ETAG
: um identificador de uma versão da recomendação, como"7caf4103d7669e12"
. Esse valor pode incluir aspas. -
STATE_METADATA
: opcional. Pares de chave-valor separados por vírgula que contenham a opção de metadados sobre a recomendação. Por exemplo,--state-metadata=reviewedBy=alice,priority=high
. Os metadados substituem o campostateInfo.stateMetadata
na recomendação.
Por exemplo, se você tiver marcado a recomendação como bem-sucedida, a resposta mostrará a recomendação em um estado
SUCCEEDED
. Para esclarecer, este exemplo omite a maioria dos 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 reverter as mudanças na política da organização, defina a política da organização na configuração original, que é fornecida no campo
configuredPolicy
do insight associado.-
REST
Revisar suas recomendações:
Para listar todas as recomendações disponíveis para seu projeto, pasta ou organização, use o método
recommendations.list
da API Recommender.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
RESOURCE_TYPE
: o tipo de recurso para que você quer gerenciar recomendações. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do Google Cloud projeto, da pasta ou da organização para que você quer gerenciar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.-
PAGE_SIZE
: opcional. O número máximo de resultados a serem retornados a partir dessa solicitação. Se não especificado, o servidor determinará o número de resultados a serem retornados. Se o número de recomendações for maior que o tamanho da página, a resposta conterá um token de paginação que é possível usar para recuperar a próxima página de resultados. -
PAGE_TOKEN
: opcional. O token de paginação retornado em uma resposta anterior desse método. Se especificada, a lista de recomendações começará onde a solicitação anterior foi finalizada. -
FILTER
: opcional. Uma expressão de filtro para restringir as recomendações retornadas. É possível filtrar as recomendações com base no campostateInfo.state
. Por exemplo,stateInfo.state:"DISMISSED"
oustateInfo.state:"FAILED"
. PROJECT_ID
: o ID do projeto do Google Cloud . Os IDs do projeto são strings alfanuméricas, comomy-project
.
Método HTTP e 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 a solicitação, expanda uma destas opções:
A resposta é semelhante ao exemplo a seguir. Neste exemplo, dois recursos são analisados para chaves de conta de serviço externa, e nenhuma violação é detectada. Por isso, a recomendação sugere definir o
iam.managed.disableServiceAccountKeyCreation
para evitar violações futuras.[ { "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 saber mais sobre os componentes de uma recomendação, consulte Noções básicas sobre recomendações.
Para aplicar uma recomendação:
Marque a recomendação como
CLAIMED
:Para marcar uma recomendação como
CLAIMED
, o que impede que ela seja alterada enquanto você a aplica, use o métodorecommendations.markClaimed
da API Recommender.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
RESOURCE_TYPE
: o tipo de recurso para que você quer gerenciar recomendações. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do Google Cloud projeto, da pasta ou da organização para que você quer gerenciar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.RECOMMENDATION_ID
: o identificador exclusivo da recomendação. Esse valor é exibido no final do camponame
na recomendação. Por exemplo, se o camponame
forprojects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f
, o ID de recomendação seráfb927dc1-9695-4436-0000-f0f285007c0f
.ETAG
: o valor do campoetag
na recomendação, como"dd0686e7136a4cbb"
. Use barras invertidas para escapar das aspas, por exemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: opcional. Um objeto que contém pares de chave-valor com a opção de metadados sobre a recomendação. Por exemplo,{"reviewedBy": "alice", "priority": "high"}
. Os metadados substituem o campostateInfo.stateMetadata
na recomendação.PROJECT_ID
: o ID do projeto do Google Cloud . Os IDs do projeto são strings alfanuméricas, comomy-project
.
Método HTTP e URL:
POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markClaimed
Corpo JSON da solicitação:
{ "etag": "ETAG", "stateMetadata": { "STATE_METADATA" } }
Para enviar a solicitação, expanda uma destas opções:
A resposta mostra a recomendação em um estado
CLAIMED
, conforme mostrado no exemplo a seguir. Para esclarecer, este exemplo omite a maioria dos 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" ] }
Atualize a política da organização para o projeto, a pasta ou a organização especificados por
RESOURCE_TYPE
eRESOURCE_ID
para que ela reflita a recomendação.Atualize o estado da recomendação para
SUCCEEDED
se você tiver aplicado a recomendação, ouFAILED
se não tiver conseguido:SUCCEEDED
Para marcar uma recomendação como
SUCCEEDED
, indicando que você conseguiu aplicá-la, use o métodorecommendations.markSucceeded
da API Recommender.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
RESOURCE_TYPE
: o tipo de recurso para que você quer gerenciar recomendações. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do Google Cloud projeto, da pasta ou da organização para que você quer gerenciar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.RECOMMENDATION_ID
: o identificador exclusivo da recomendação. Esse valor é exibido no final do camponame
na recomendação. Por exemplo, se o camponame
forprojects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f
, o ID de recomendação seráfb927dc1-9695-4436-0000-f0f285007c0f
.ETAG
: o valor do campoetag
na recomendação, como"dd0686e7136a4cbb"
. Use barras invertidas para escapar das aspas, por exemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: opcional. Um objeto que contém pares de chave-valor com a opção de metadados sobre a recomendação. Por exemplo,{"reviewedBy": "alice", "priority": "high"}
. Os metadados substituem o campostateInfo.stateMetadata
na recomendação.PROJECT_ID
: o ID do projeto do Google Cloud . Os IDs do projeto são strings alfanuméricas, comomy-project
.
Método HTTP e URL:
POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markSucceeded
Corpo JSON da solicitação:
{ "etag": "ETAG", "stateMetadata": { "STATE_METADATA" } }
Para enviar a solicitação, expanda uma destas opções:
A resposta mostra a recomendação em um estado
SUCCEEDED
, conforme mostrado no exemplo a seguir. Para esclarecer, este exemplo omite a maioria dos 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 uma recomendação como
FAILED
, indicando que não foi possível aplicá-la, use o métodorecommendations.markFailed
da API Recommender.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
RESOURCE_TYPE
: o tipo de recurso para que você quer gerenciar recomendações. Use o valorprojects
,folders
ouorganizations
.RESOURCE_ID
: o ID do Google Cloud projeto, da pasta ou da organização para que você quer gerenciar recomendações. Os IDs do projeto são strings alfanuméricas, comomy-project
. Os IDs de pastas e organizações são numéricos, como123456789012
.RECOMMENDATION_ID
: o identificador exclusivo da recomendação. Esse valor é exibido no final do camponame
na recomendação. Por exemplo, se o camponame
forprojects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f
, o ID de recomendação seráfb927dc1-9695-4436-0000-f0f285007c0f
.ETAG
: o valor do campoetag
na recomendação, como"dd0686e7136a4cbb"
. Use barras invertidas para escapar das aspas, por exemplo,"\"df7308cca9719dcc\""
.STATE_METADATA
: opcional. Um objeto que contém pares de chave-valor com a opção de metadados sobre a recomendação. Por exemplo,{"reviewedBy": "alice", "priority": "high"}
. Os metadados substituem o campostateInfo.stateMetadata
na recomendação.PROJECT_ID
: o ID do projeto do Google Cloud . Os IDs do projeto são strings alfanuméricas, comomy-project
.
Método HTTP e URL:
POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/recommenders/google.orgpolicy.policy.Recommender/recommendations/RECOMMENDATION_ID:markFailed
Corpo JSON da solicitação:
{ "etag": "ETAG", "stateMetadata": { "STATE_METADATA" } }
Para enviar a solicitação, expanda uma destas opções:
A resposta mostra a recomendação em um estado
FAILED
, conforme mostrado no exemplo a seguir. Para esclarecer, este exemplo omite a maioria dos 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" ] }
Como entender as recomendações
Cada recomendação inclui informações para ajudar você a entender por que ela foi feita e sugestões de mudanças na configuração da política da organização. Os principais atributos incluem:
description
: um resumo legível da recomendação.recommenderSubtype
: o identificador de um subtipo de recomendações. Cada restrição tem umrecommenderSubtype
exclusivo.content
: contém as mudanças recomendadas na política da organização.overview
: as informações resumidas sobre a recomendação.constraint
: fornece informações sobre a restrição.enforced_resources
: fornece informações sobre os recursos afetados por essa política da organização se você aplicar a recomendação.operationGroups
: um conjunto de uma ou mais operações na política da organização ao aplicar uma recomendação.
associatedInsights
: o nome do recurso dos insights que levaram a esta recomendação.
Para mais informações sobre os atributos de uma recomendação, consulte a referência de recomendação.
Os insights e as recomendações são gerados para recursos que não têm uma das políticas da organização compatíveis definidas neles ou em qualquer um dos recursos filhos. Para conferir a configuração da política da organização em que essa recomendação se baseia, consulte os insights da política da organização associados a ela. Esses insights são listados no campo
associatedInsights
. Para visualizar um insight de política da organização associado à recomendação, faça o seguinte:Identifique quais insights no campo
associatedInsights
são insights de política da organização. Os insights de política da organização têm o tipo de insightgoogle.orgpolicy.policy.Insight
. Esse tipo aparece depois deinsightTypes
no campoinsight
.Copie o ID do insight de política da organização. O ID é tudo depois de
insights/
no campoinsight
. Por exemplo, se o campo de insight forprojects/123456789012/locations/us/insightTypes/google.orgpolicy.policy.Insight/insights/fb927dc1-9695-4436-0000-f0f285007c0f
, o ID do insight seráfb927dc1-9695-4436-0000-f0f285007c0f
.Siga as instruções para receber um insight de política da organização usando o ID do insight que você copiou.
Exportar recomendações para o BigQuery.
Para conferir snapshots diários de todas as recomendações da sua organização, incluindo as de política da organização, exporte as recomendações para o BigQuery.
Para exportar suas recomendações para o BigQuery, configure uma transferência de dados usando o serviço de transferência de dados do BigQuery. Para saber como configurar uma transferência de dados, consulte Exportar recomendações para o BigQuery.
A seguir
- Saiba mais sobre o Recomendador.
- Saiba como usar os insights de política da organização.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-22 UTC.