Google Cloud Motore per suggerimenti
Questo documento fornisce indicazioni per aiutarti a configurare e integrare Google Cloud Recommender con Google Security Operations.
Prerequisiti
Assicurati di completare tutti i passaggi preliminari prima di configurare l'integrazione.
Crea e configura il ruolo IAM
Nella console Google Cloud , vai alla pagina Ruoli IAM.
Fai clic su Crea ruolo per creare un ruolo personalizzato con le autorizzazioni richieste per l'integrazione.
Per un nuovo ruolo personalizzato, fornisci Titolo, Descrizione e un ID univoco.
Imposta Fase di lancio del ruolo su Disponibilità generale.
Aggiungi le seguenti autorizzazioni al ruolo creato:
iam.roles.create
iam.roles.delete
iam.roles.get
iam.roles.list
iam.roles.undelete
iam.roles.update
iam.serviceAccounts.create
iam.serviceAccounts.delete
iam.serviceAccounts.disable
iam.serviceAccounts.enable
iam.serviceAccounts.get
iam.serviceAccounts.getIamPolicy
iam.serviceAccounts.list
iam.serviceAccounts.setIamPolicy
iam.serviceAccounts.undelete
iam.serviceAccounts.update
recommender.iamPolicyInsights.get
recommender.iamPolicyInsights.list
recommender.iamPolicyLateralMovementInsights.get
recommender.iamPolicyLateralMovementInsights.list
recommender.iamPolicyRecommendations.get
recommender.iamPolicyRecommendations.list
recommender.iamPolicyRecommendations.update
recommender.iamServiceAccountInsights.get
recommender.iamServiceAccountInsights.list
recommender.locations.get
recommender.locations.list
resourcemanager.folders.get
resourcemanager.folders.getIamPolicy
resourcemanager.folders.setIamPolicy
resourcemanager.organizations.get
resourcemanager.organizations.getIamPolicy
resourcemanager.organizations.setIamPolicy
resourcemanager.projects.get
resourcemanager.projects.getIamPolicy
resourcemanager.projects.list
resourcemanager.projects.setIamPolicy
securitycenter.assets.list
securitycenter.findings.group
securitycenter.findings.list
securitycenter.findings.listFindingPropertyNames
securitycenter.findings.setMute
securitycenter.findings.setState
securitycenter.sources.get
securitycenter.sources.list
securitycenter.userinterfacemetadata.get
Fai clic su Crea.
Crea un account di servizio
Per creare un account di servizio, segui la procedura per creare un service account.
Dopo aver creato un account di servizio, scaricalo come file JSON. Devi fornire i contenuti di un file JSON scaricato durante la configurazione dei parametri di integrazione.
Integra Google Cloud Recommender con Google SecOps
Per istruzioni dettagliate su come configurare un'integrazione in Google SecOps SOAR, vedi Configurare le integrazioni.
Input di integrazione
Per configurare l'integrazione, utilizza i seguenti parametri:
Parametri | |
---|---|
API Root |
Obbligatorio
La radice dell'API del servizio Google Cloud Recommender. Il valore predefinito è |
Organization ID |
Optional
L'ID organizzazione da utilizzare con l'integrazione di Google Cloud Recommender. |
User's Service Account |
Obbligatorio
Il contenuto dell'account di servizio Google Cloud Recommender. Assicurati di fornire l'intero contenuto del file JSON dell'account di servizio che hai scaricato durante la creazione di un account di servizio. |
Verify SSL |
Optional
Se selezionato, il parametro verifica se il certificato SSL per la connessione al server Google Cloud Recommender è valido. Questa casella è selezionata per impostazione predefinita. |
Azioni
Applica i suggerimenti IAM
Applica i suggerimenti IAM in base all'input fornito.
Questa azione funziona solo con i google.iam.policy.Recommender
consigli.
Entità
L'azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
Parametri | |
---|---|
IAM Recommendations JSON |
Obbligatorio
Il risultato JSON del suggerimento. Il risultato JSON può essere fornito come segnaposto dalle azioni Elenca consigli o Ottieni consiglio. |
Output dell'azione
Tipo di output dell'azione | |
---|---|
Allegato della bacheca casi | N/D |
Link alla bacheca richieste | N/D |
Tabella della bacheca casi | N/D |
Tabella di arricchimento | N/D |
Approfondimento sull'entità | N/D |
Insight | N/D |
Risultato JSON | Disponibile |
Widget predefinito | N/D |
Risultato dello script | Disponibile |
Risultato dello script
Nome del risultato dello script | Valore |
---|---|
is_success | Vero/Falso |
Risultato JSON
{ "applied_recommendations": [ { "name": "projects/PROJECT_ID/locations/global/recommenders/google.iam.policy.Recommender/recommendations/217d3019-bae5-4a52-9968-787fdd546a53", "description": "Replace the current role with a smaller role to cover the permissions needed.", "lastRefreshTime": "2023-07-28T07:00:00Z", "primaryImpact": { "category": "SECURITY", "securityProjection": { "details": { "revokedIamPermissionsCount": 610 } } }, "content": { "operationGroups": [ { "operations": [ { "action": "add", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/-", "value": "USER_ID@example.com", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/role": "roles/compute.instanceAdmin" } }, { "action": "remove", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/*", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/members/*": "USER_ID@example.com", "/iamPolicy/bindings/*/role": "roles/compute.admin" } } ] } ], "overview": { "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "member": "user:USER_ID@example.com", "removedRole": "roles/compute.admin", "addedRoles": [ "roles/compute.instanceAdmin" ], "minimumObservationPeriodInDays": "0" } }, "stateInfo": { "state": "SUCCEEDED", "stateMetadata": { "applied_by": "bulk_apply_by_automated_script-2023-08-11" } }, "etag": "\"892d57ee41baa03e\"", "recommenderSubtype": "REPLACE_ROLE", "associatedInsights": [ { "insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID" } ], "priority": "P4" }, { "name": "projects/PROJECT_ID/locations/global/recommenders/google.iam.policy.Recommender/recommendations/RECOMMENDATION_ID", "description": "Replace the current role with a smaller role to cover the permissions needed.", "lastRefreshTime": "2023-07-28T07:00:00Z", "primaryImpact": { "category": "SECURITY", "securityProjection": { "details": { "revokedIamPermissionsCount": 19 } } }, "content": { "operationGroups": [ { "operations": [ { "action": "add", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/-", "value": "user:USER_ID@example.com", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/role": "roles/storage.objectAdmin" } }, { "action": "remove", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/*", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/members/*": "user:USER_ID@example.com", "/iamPolicy/bindings/*/role": "roles/storage.admin" } } ] } ], "overview": { "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "member": "user:USER_ID@example.com", "removedRole": "roles/storage.admin", "addedRoles": [ "roles/storage.objectAdmin" ], "minimumObservationPeriodInDays": "0" } }, "stateInfo": { "state": "SUCCEEDED", "stateMetadata": { "applied_by": "bulk_apply_by_automated_script-2023-08-11" } }, "etag": "\"af7635ffeb512998\"", "recommenderSubtype": "REPLACE_ROLE", "associatedInsights": [ { "insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID" } ], "priority": "P4" } ], "failed_recommendations": [] }
Bacheca casi
L'azione fornisce i seguenti messaggi di output:
Messaggio di output | Descrizione del messaggio |
---|---|
Successfully applied provided IAM recommendations. |
L'azione è andata a buon fine. |
Successfully applied provided IAM recommendation, but some of the
recommendations were not applied. |
L'azione è andata a buon fine. |
No provided IAM recommendations were applied. |
Suggerimento non riuscito. |
Error executing action ACTION_NAME. |
L'azione ha restituito un errore. |
Ricevere un consiglio
Ricevi un suggerimento specifico dal servizio motore per suggerimenti Google Cloud .
Entità
L'azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
Parametri | |
---|---|
Recommendation name |
Obbligatorio
Specifica il nome del suggerimento da restituire. L'azione accetta più valori come stringa separata da virgole. Esempio di input previsto: projects/projectname/locations/global/recommenders/google.iam.policy.Recommender/recommendations/0f262740-bf4a-4c3d-9573-0da3345cf3f7 |
Output dell'azione
Tipo di output dell'azione | |
---|---|
Allegato della bacheca casi | N/D |
Link alla bacheca richieste | N/D |
Tabella della bacheca casi | N/D |
Tabella di arricchimento | N/D |
Approfondimento sull'entità | N/D |
Insight | N/D |
Risultato JSON | Disponibile |
Widget predefinito | N/D |
Risultato dello script | Disponibile |
Risultato dello script
Nome del risultato dello script | Valore |
---|---|
is_success | Vero/Falso |
Risultato JSON
[ { "name": "name", "description": "This role has not been used during the observation window.", "lastRefreshTime": "2023-07-28T07:00:00Z", "primaryImpact": { "category": "SECURITY", "securityProjection": { "details": { "revokedIamPermissionsCount": 68 } } }, "content": { "operationGroups": [ { "operations": [ { "action": "remove", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/*", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/members/*": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com", "/iamPolicy/bindings/*/role": "roles/monitoring.admin" } } ] } ], "overview": { "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "member": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com", "removedRole": "roles/monitoring.admin", "minimumObservationPeriodInDays": "0" } }, "stateInfo": { "state": "ACTIVE" }, "etag": "", "recommenderSubtype": "REMOVE_ROLE", "associatedInsights": [ { "insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/" } ], "priority": "P4" } ]
Bacheca casi
L'azione fornisce i seguenti messaggi di output:
Messaggio di output | Descrizione del messaggio |
---|---|
Successfully found recommendation in the Google Cloud Recommender
service. |
L'azione è andata a buon fine. |
No recommendations were found in the Google Cloud Recommender
service.
|
I dati non sono disponibili. |
Error executing action ACTION_NAME . |
L'azione ha restituito un errore. |
Elenco di consigli
Elenca i suggerimenti disponibili nel servizio Google Cloud Recommender.
Entità
L'azione non viene eseguita sulle entità.
Input azione
Per configurare l'azione, utilizza i seguenti parametri:
Parametri | |
---|---|
Recommendation Filter |
Optional
Specifica il filtro per recuperare i suggerimenti. Il parametro deve essere una stringa in uno dei seguenti formati:
Se non viene fornito alcun valore, l'azione recupera l'ID progetto dal account di servizio configurato. |
Recommendation Location |
Obbligatorio
Specifica la posizione Google Cloud da cui recuperare i consigli. Il valore predefinito è |
Recommendation State |
Optional
Specifica lo stato del suggerimento da restituire. Il valore predefinito è I valori possibili sono:
|
Recommendation Priority |
Optional
Specifica la priorità di un suggerimento da restituire. È possibile specificare più valori come stringa separata da virgole. |
Recommender Subtype |
Optional
Specifica il sottotipo di sistema di raccomandazione restituito. Il valore predefinito è I valori possibili sono:
|
Max Records To Return |
Optional
Specifica il numero di record da restituire. Se non viene fornito alcun valore, l'azione restituisce 50 record per impostazione predefinita. |
Output dell'azione
Tipo di output dell'azione | |
---|---|
Allegato della bacheca casi | N/D |
Link alla bacheca richieste | N/D |
Tabella della bacheca casi | Disponibile |
Tabella di arricchimento | N/D |
Approfondimento sull'entità | N/D |
Insight | N/D |
Risultato JSON | Disponibile |
Widget predefinito | N/D |
Risultato dello script | Disponibile |
Risultato dello script
Nome del risultato dello script | Valore |
---|---|
is_success | Vero/Falso |
Risultato JSON
[ { "name": "name", "description": "This role has not been used during the observation window.", "lastRefreshTime": "2023-07-27T07:00:00Z", "primaryImpact": { "category": "SECURITY", "securityProjection": { "details": { "revokedIamPermissionsCount": 68 } } }, "content": { "operationGroups": [ { "operations": [ { "action": "remove", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects", "path": "/iamPolicy/bindings/*/members/*", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/members/*": "serviceAccount:SERVICE_ACCOUNT_ID", "/iamPolicy/bindings/*/role": "roles/monitoring.admin" } } ] } ], "overview": { "resource": "//cloudresourcemanager.googleapis.com/", "member": "serviceAccount:SERVICE_ACCOUNT_ID", "removedRole": "roles/monitoring.admin", "minimumObservationPeriodInDays": "0" } }, "stateInfo": { "state": "ACTIVE" }, "etag": "", "recommenderSubtype": "REMOVE_ROLE", "associatedInsights": [ { "insight": "projects/i/locations/global/insightTypes/" } ], "priority": "P4" }, { "name": "name", "description": "This role has not been used during the observation window.", "lastRefreshTime": "2023-07-27T07:00:00Z", "primaryImpact": { "category": "SECURITY", "securityProjection": { "details": { "revokedIamPermissionsCount": 5 } } }, "content": { "operationGroups": [ { "operations": [ { "action": "remove", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/*", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/members/*": "user:USER_ID@example.com", "/iamPolicy/bindings/*/role": "roles/chroniclesm.admin" } } ] } ], "overview": { "resource": "//cloudresourcemanager.googleapis.com/projects", "member": "user:USER_ID@example.com", "removedRole": "roles/chroniclesm.admin", "minimumObservationPeriodInDays": "0" } }, "stateInfo": { "state": "ACTIVE" }, "etag": "", "recommenderSubtype": "REMOVE_ROLE", "associatedInsights": [ { "insight": "projects" } ], "priority": "P4" } ]
Bacheca casi
L'azione fornisce i seguenti messaggi di output:
Messaggio di output | Descrizione del messaggio |
---|---|
Successfully found recommendations for the provided criteria in
the Google Cloud Recommender service. |
L'azione è andata a buon fine. |
No recommendations were found for the provided criteria in the
Google Cloud Recommender service. |
Nessun dato disponibile. |
Error executing action ACTION_NAME. |
L'azione ha restituito un errore. |
L'azione fornisce la seguente tabella della bacheca richieste:
Consigli disponibili | |
---|---|
Colonne |
|
Dindin
Testa la connettività al servizio Google Cloud Recommender con i parametri forniti nella pagina di configurazione dell'integrazione nella scheda Google SecOps Marketplace.
Entità
L'azione non viene eseguita sulle entità.
Input azione
N/D
Output dell'azione
Tipo di output dell'azione | |
---|---|
Allegato della bacheca casi | N/D |
Link alla bacheca richieste | N/D |
Tabella della bacheca casi | N/D |
Tabella di arricchimento | N/D |
Approfondimento sull'entità | N/D |
Insight | N/D |
Risultato JSON | N/D |
Widget predefinito | N/D |
Risultato dello script | Disponibile |
Risultato dello script
Nome del risultato dello script | Valore |
---|---|
is_success | Vero/Falso |
Bacheca casi
L'azione fornisce i seguenti messaggi di output:
Messaggio di output | Descrizione del messaggio |
---|---|
Successfully connected to the Google Cloud Recommender service
with the provided connection parameters! |
L'azione è andata a buon fine. |
Failed to connect to the Google Cloud Recommender service!
|
L'azione ha restituito un errore. |
Suggerimento per l'aggiornamento
Aggiorna il suggerimento nel Google Cloud servizio Recommender.
Entità
L'azione non viene eseguita sulle entità.
Input azione
Utilizza i seguenti parametri per configurare l'azione:
Parametri | |
---|---|
Recommendation name |
Obbligatorio
Specifica il nome del suggerimento da aggiornare. L'azione accetta più valori come stringa separata da virgole. Esempio di input previsto:
|
Recommendation State |
Optional
Specifica lo stato in cui deve passare il suggerimento. Il valore predefinito è I valori possibili sono:
|
Recommendation Result |
Optional
Specifica il risultato a cui deve passare il suggerimento. Il valore predefinito è I valori possibili sono:
|
Output dell'azione
Tipo di output dell'azione | |
---|---|
Allegato della bacheca casi | N/D |
Link alla bacheca richieste | N/D |
Tabella della bacheca casi | N/D |
Tabella di arricchimento | N/D |
Approfondimento sull'entità | N/D |
Insight | N/D |
Risultato JSON | Disponibile |
Widget predefinito | N/D |
Risultato dello script | Disponibile |
Risultato dello script
Nome del risultato dello script | Valore |
---|---|
is_success | Vero/Falso |
Risultato JSON
[ { "name": "name", "description": "This role has not been used during the observation window.", "lastRefreshTime": "2023-07-28T07:00:00Z", "primaryImpact": { "category": "SECURITY", "securityProjection": { "details": { "revokedIamPermissionsCount": 68 } } }, "content": { "operationGroups": [ { "operations": [ { "action": "remove", "resourceType": "cloudresourcemanager.googleapis.com/Project", "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "path": "/iamPolicy/bindings/*/members/*", "pathFilters": { "/iamPolicy/bindings/*/condition/expression": "", "/iamPolicy/bindings/*/members/*": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com", "/iamPolicy/bindings/*/role": "roles/monitoring.admin" } } ] } ], "overview": { "resource": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "member": "serviceAccount:SERVICE_ACCOUNT_ID.iam.gserviceaccount.com", "removedRole": "roles/monitoring.admin", "minimumObservationPeriodInDays": "0" } }, "stateInfo": { "state": "ACTIVE" }, "etag": "", "recommenderSubtype": "REMOVE_ROLE", "associatedInsights": [ { "insight": "projects/PROJECT_ID/locations/global/insightTypes/google.iam.policy.Insight/insights/" } ], "priority": "P4" } ]
Bacheca casi
L'azione fornisce i seguenti messaggi di output:
Messaggio di output | Descrizione del messaggio |
---|---|
Successfully updated recommendation in the Google Cloud
Recommender service. |
L'azione è andata a buon fine. |
No recommendations were found in the Google Cloud Recommender
service.
|
I dati non sono disponibili. |
Error executing action ACTION_NAME . |
L'azione ha restituito un errore. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.