Gli asset sono risorse Google Cloud di un'organizzazione, delle istanze Compute Engine o dei bucket Cloud Storage.
Questa guida mostra come utilizzare le librerie client di Security Command Center per accedere record deprecati che Security Command Center conserva per gli asset in un progetto o un'organizzazione.
Security Command Center conserva i record solo per un sottoinsieme degli asset in Cloud Asset Inventory. Per un elenco più completo degli asset nel tuo ambiente, usa Cloud Asset Inventory per elencare gli asset.
Per ulteriori informazioni, consulta le seguenti risorse:
- Servizio di elenco degli asset di Cloud Asset Inventory
- Tipi di asset supportati in Security Command Center
Livelli di concessione per i ruoli IAM
I ruoli IAM per Security Command Center possono essere concessi a livello di organizzazione, a livello di cartella o di progetto. La tua possibilità di visualizzare, modificare, creare o aggiornare risultati, asset e le origini di sicurezza dipendono dal livello a cui ti viene concesso l'accesso. Per scoprire di più su Per i ruoli di Security Command Center, vedi Controllo dell'accesso.
Prima di iniziare
Prima di configurare un'origine, devi completare quanto segue:
Dimensioni pagina
Tutte le API degli elenchi di Security Command Center sono impaginate. Ogni risposta restituisce una pagina di risultati e un token per restituire la pagina successiva. Le dimensioni della pagina sono configurabili. Il valore predefinito pageSize è 10, può essere impostato su un minimo di 1 e un massimo di 1000.
Tipi di risorse
L'attributo resourceType
in Security Command Center utilizza una denominazione diversa
rispetto a Cloud Asset Inventory. Per
per un elenco dei formati dei tipi di risorsa. Consulta Tipi di asset supportati in
Security Command Center.
Elenco di tutti gli asset
I seguenti esempi mostrano come elencare tutti gli asset:
gcloud
Per elencare tutti gli asset in un progetto, una cartella o un'organizzazione, esegui questo comando :
gcloud scc assets list PARENT_ID
Sostituisci PARENT_ID
con uno dei seguenti valori:
- Un ID organizzazione nel seguente formato:
ORGANIZATION_ID
(solo l'ID numerico) - Un ID cartella nel seguente formato:
folders/FOLDER_ID
- Un ID progetto nel seguente formato:
projects/PROJECT_ID
Per altri esempi, esegui:
gcloud scc assets list --help
Per esempi nella documentazione, consulta gcloud scc assets list.
Python
Java
Vai
Node.js
L'output per ogni asset è un oggetto JSON simile al seguente:
asset:
createTime: '2020-10-05T17:55:14.823Z'
iamPolicy:
policyBlob: '{"bindings":[{"role":"roles/owner","members":["serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com","user:USER_EMAIL@gmail.com"]}]}'
name: organizations/ORGANIZATION_ID/assets/ASSET_ID
resourceProperties:
createTime: '2020-10-05T17:36:17.915Z'
lifecycleState: ACTIVE
name: PROJECT_ID
parent: '{"id":"ORGANIZATION_ID","type":"organization"}'
projectId: PROJECT_ID
projectNumber: 'PROJECT_NUMBER'
securityCenterProperties:
resourceDisplayName: PROJECT_ID
resourceName: //cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER
resourceOwners:
- serviceAccount:SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com
- user:USER_EMAIL@gmail.com
resourceParent: //cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID
resourceParentDisplayName: ORGANIZATION_NAME
resourceProject: //cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER
resourceProjectDisplayName: PROJECT_ID
resourceType: google.cloud.resourcemanager.Project
securityMarks:
name: organizations/ORGANIZATION_ID/assets/ASSET_ID/securityMarks
updateTime: '2020-10-05T17:55:14.823Z'
Filtra asset
Un progetto, una cartella o un'organizzazione potrebbero avere molti asset. Il precedente esempio non utilizza nessuna dei filtri, in modo che vengano restituiti tutti gli asset. Security Command Center consente di utilizzare gli asset per ottenere informazioni su risorse specifiche. I filtri sono come "dove" nelle istruzioni SQL tranne che, invece che alle colonne, si applicano restituiti dall'API.
L'output di esempio nell'esempio precedente mostra alcuni campi e sottocampi, e le relative proprietà, che possono essere utilizzate nei filtri degli asset. Security Command Center supporta come potenziali tipi di proprietà di array JSON e oggetti. Puoi applicare un filtro in base a:
- Elementi array
- Oggetti JSON completi con corrispondenza di stringa parziale all'interno dell'oggetto
- Campi secondari oggetto JSON
I campi secondari devono essere numeri, stringhe o booleani e le espressioni di filtro devono utilizzare i seguenti operatori di confronto:
- Stringhe:
- Uguaglianza totale
=
- Corrispondenza parziale delle stringhe
:
- Uguaglianza totale
- Numeri:
- Disequazioni:
<
,>
,<=
e>=
- Uguaglianza
=
- Disequazioni:
- Booleani:
- Uguaglianza
=
- Uguaglianza
I seguenti esempi filtrano le risorse:
gcloud
Utilizza il seguente comando per filtrare gli asset:
gcloud scc assets list PARENT_ID --filter="FILTER"
Sostituisci quanto segue:
FILTER
con il filtro che devi utilizzare. Ad esempio: il seguente filtro restituisce solo le risorse di progetto:--filter="security_center_properties.resource_type=\"google.cloud.resourcemanager.Project\""
PARENT_ID
con uno dei seguenti valori:- Un ID organizzazione nel seguente formato:
ORGANIZATION_ID
(solo l'ID numerico) - Un ID cartella nel seguente formato:
folders/FOLDER_ID
- Un ID progetto nel seguente formato:
projects/PROJECT_ID
- Un ID organizzazione nel seguente formato:
Per altri esempi, esegui:
gcloud scc assets list --help
Per esempi nella documentazione, consulta gcloud scc assets list.
Python
Java
Vai
Node.js
Elenca in un momento specifico
Gli esempi precedenti mostrano come elencare un insieme corrente di asset. Security Command Center ti consente anche di visualizzare un'istantanea storica degli asset. I seguenti esempi restituiscono lo stato di tutti gli asset in un momento specifico. Security Command Center supporta un tempo di millisecondi risoluzioni.
gcloud
Utilizza il seguente comando per elencare gli asset a partire da un momento specifico:
gcloud scc assets list PARENT_ID --read-time="READ_TIME"
Sostituisci quanto segue:
READ_TIME
e l'ora in cui elencare gli asset. Utilizza il formato seguente:YYYY-MM-DDThh:mm:ss.ffffffZ
. Ad esempio:--read-time="2022-12-21T07:00:06.861Z"
PARENT_ID
con uno dei seguenti valori:- Un ID organizzazione nel seguente formato:
ORGANIZATION_ID
(solo l'ID numerico) - Un ID progetto nel seguente formato:
projects/PROJECT_ID
- Un ID cartella nel seguente formato:
folders/FOLDER_ID
- Un ID organizzazione nel seguente formato:
Per altri esempi, esegui:
gcloud scc assets list --help
Per esempi nella documentazione, consulta gcloud scc assets list.
Python
Java
Vai
Node.js
Elenco asset con modifiche di stato
Security Command Center ti consente di confrontare un asset in due momenti per identificarlo
se è stato aggiunto, rimosso o presente durante il periodo di tempo specificato. La
i seguenti esempi confrontano i progetti esistenti all'indirizzo READ_TIME
con quelli
nel momento specificato da COMPARE_DURATION
. COMPARE_DURATION
è fornito in
secondi.
Quando COMPARE_DURATION
è impostato, l'attributo stateChange
nell'asset dell'elenco
i risultati vengono aggiornati con uno dei seguenti valori:
ADDED
: l'asset non era presente all'inizio dicompareDuration
, ma presente alle orereadTime
.REMOVED
: l'asset era presente all'inizio dicompareDuration
, ma non presente alle orereadTime
.ACTIVE
: l'asset era presente sia all'inizio che alla fine dell'intervallo periodo definito dacompareDuration
ereadTime
.
gcloud
Usa il seguente comando per confrontare lo stato degli asset in due punti del volta:
gcloud scc assets list PARENT_ID \ --filter="FILTER" \ --read-time=READ_TIME \ --compare-duration=COMPARE_DURATION
Sostituisci quanto segue:
COMPARE_DURATION
con un numero di secondi che definisce un momento precedente all'orario specificato nella Flag--read-time
. Ad esempio:--compare-duration=84600s
FILTER
con il filtro che devi utilizzare. Ad esempio: il seguente filtro restituisce solo le risorse di progetto:--filter="security_center_properties.resource_type=\"google.cloud.resourcemanager.Project\""
PARENT_ID
con uno dei seguenti valori:- Un ID organizzazione nel seguente formato:
ORGANIZATION_ID
(solo l'ID numerico) - Un ID progetto nel seguente formato:
projects/PROJECT_ID
- Un ID cartella nel seguente formato:
folders/FOLDER_ID
- Un ID organizzazione nel seguente formato:
READ_TIME
e l'ora in cui elencare gli asset. Utilizza le funzionalità di nel seguente formato:YYYY-MM-DDThh:mm:ss.ffffffZ
. Ad esempio: Per altri esempi, esegui:--read-time="2022-12-21T07:00:06.861Z"
gcloud scc assets list --help
Per esempi nella documentazione, consulta gcloud scc assets list.
Python
Java
Vai
Node.js
Esempi di filtro
Di seguito sono riportati altri filtri utili per gli asset. Puoi utilizzare AND
e OR
in
filtri per combinare i parametri ed espandere o perfezionare i risultati.
Trovare un asset del progetto con un proprietario specifico
"security_center_properties.resource_type = \"google.cloud.resourcemanager.Project\" AND security_center_properties.resource_owners : \"$USER\""
$USER
è generalmente nel formato user:someone@domain.com
. Il confronto
for user
utilizza l'operatore di sottostringa :
e non è necessaria una corrispondenza esatta.
Regole firewall con porte HTTP aperte
"security_center_properties.resource_type = \"google.compute.Firewall\" AND resource_properties.name =\"default-allow-http\""
Risorse che appartengono a progetti specifici
"security_center_properties.resource_parent = \"$PROJECT_1_NAME\" OR security_center_properties.resource_parent = \"$PROJECT_2_NAME\""
$PROJECT_1_NAME
e $PROJECT_2_NAME
sono identificatori di risorsa sotto forma di
//cloudresourcemanager.googleapis.com/projects/$PROJECT_ID
, dove
$PROJECT_ID
è il numero del progetto. Un esempio completo può essere
Mi piace: //cloudresourcemanager.googleapis.com/projects/100090906
Trova immagini Compute Engine i cui nomi contengono una stringa specifica
Questo filtro restituisce immagini Compute Engine che contengono la sottostringa "Debia":
"security_center_properties.resource_type = \"google.compute.Image\" AND resource_properties.name : \"Debia\""
Risorse le cui proprietà contengono coppie chiave-valore
Questo filtro restituisce i bucket Cloud Storage in cui bucketPolicyOnly
è
disattivata. Il valore di resourceProperties.iamConfiguration
è codificato come
stringa. Il carattere \
viene usato come escape per i caratteri speciali nelle stringhe,
incluso l'operatore :
tra il nome e il valore della chiave.
"resourceProperties.iamConfiguration:"\"bucketPolicyOnly\"\:{\"enabled\"\:false""
Trovare gli asset del progetto creati in corrispondenza di un momento specifico o prima di tale data
Questi filtri di esempio corrispondono alle risorse create il 18 luglio 2019 o in data precedente
20:26:21 GMT. Con il filtro create_time
, puoi esprimere il tempo utilizzando il
i seguenti formati e tipi:
Tempo Unix (in millisecondi) come valore letterale intero
"create_time <= 1563481581000"
RFC 3339 come valore letterale stringa
"create_time <= \"2019-07-18T20:26:21+00:00\""
Esclusione di asset dai risultati
Per escludere una risorsa dai risultati, utilizza la negazione inserendo un carattere -
all'interno
davanti a un parametro. L'operazione è simile all'utilizzo dell'operatore NOT in una
l'istruzione SQL.
Questo filtro restituisce tutte le risorse di progetto tranne Debia
:
"security_center_properties.resource_type = \"google.cloud.resourcemanager.Project\" AND -resource_properties.projectId = \"Debia\""
Passaggi successivi
Scopri di più su di accedere a Security Command Center utilizzando una libreria client.