Nesta página, explicamos como visualizar, entender e aplicar recomendações de política da organização. As recomendações de políticas da organização ajudam você a definir as políticas corretas sem interromper os sistemas.
Antes de começar
Enable the Organization Policy and Recommender APIs.
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 nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Entenda as recomendações da política da organização.
Papéis do IAM obrigatórios
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 as recomendações de políticas 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 conferir 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 as recomendações de políticas da organização:
-
recommender.orgPolicyRecommendations.get
-
recommender.orgPolicyRecommendations.list
-
-
Para aplicar e dispensar as recomendações de política 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 visualização do recomendador 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.
Restrições compatíveis
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 as recomendações de políticas 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 projeto, da pasta ou da organização do Google Cloud para a qual 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 receber 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. Como resultado, 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 aparece 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 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"
. Observe que esse valor pode incluir aspas. -
STATE_METADATA
: opcional. Pares de chave-valor separados por vírgula que contêm 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 aparece 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 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"
. Observe que esse valor pode incluir aspas. -
STATE_METADATA
: opcional. Pares de chave-valor separados por vírgula que contêm 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 alterações na política da organização, defina a política da organização como a 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 projeto, da pasta ou da organização do Google Cloud 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. Como resultado, 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 projeto, da pasta ou da organização do Google Cloud 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 especificada por
RESOURCE_TYPE
eRESOURCE_ID
para que ela reflita a recomendação.Atualize o estado da recomendação para
SUCCEEDED
se você tiver conseguido aplicá-la ouFAILED
se não foi possível: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 projeto, da pasta ou da organização do Google Cloud 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 projeto, da pasta ou da organização do Google Cloud 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" ] }
Noções básicas sobre 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 sua organização.overview
: as informações gerais resumidas sobre a recomendação.constraint
: fornece informações sobre a restrição.enforced_resources
: fornece informações sobre os recursos que essa política da organização afeta se você aplicar a recomendação.operationGroups
: um conjunto de uma ou mais operações na política da organização quando você aplica uma recomendação.
associatedInsights
: o nome do recurso dos insights que levaram a essa 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 com suporte definidas ou qualquer um dos recursos filhos. Para conferir a configuração da política da organização na qual essa recomendação se baseia, consulte os insights da política da organização associados à recomendação. Esses insights são listados no campo
associatedInsights
. Para conferir 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 recomendações de políticas da organização, exporte suas recomendações para o BigQuery.
Para exportar suas recomendações para o BigQuery, você precisa configurar 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íticas 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-01-29 UTC.