Ce guide vous explique comment créer et mettre à jour des résultats à l'aide de l'API Security Command Center.
Avant de commencer
Avant de créer et de mettre à jour des résultats, vous devez effectuer les opérations suivantes :
Pour suivre ce guide, vous devez disposer du rôle de gestion de l'authentification et des accès (IAM).Éditeur de données du centre de sécurité (securitycenter.findingsEditor
) au niveau de l'organisation. Pour en savoir plus sur les rôles Security Command Center, consultez la page Contrôle des accès.
Si vous souhaitez créer des résultats avec des marques de sécurité, vous devez également disposer d'un rôle IAM qui inclut des autorisations pour le type de marque que vous souhaitez utiliser :
- Rédacteur de marques de sécurité des éléments (
securitycenter.assetSecurityMarksWriter
) - Rédacteur de marques de sécurité des résultats (
securitycenter.findingSecurityMarksWriter
)
Pour en savoir plus sur les marques, consultez la page Utiliser les marques de sécurité Security Command Center.
Créer un résultat
Créez une recherche active pour une source.
gcloud
# ORGANIZATION=12344321 # SOURCE=43211234 # FINDING_ID=testfindingid # EVENT_TIME follows the format YYYY-MM-DDThh:mm:ss.ffffffZ EVENT_TIME=2019-02-28T07:00:06.861Z STATE=ACTIVE CATEGORY=MEDIUM_RISK_ONE RESOURCE_NAME=//cloudresourcemanager.googleapis.com/projects/PROJECT_ID gcloud scc findings create $FINDING_ID \ --source $SOURCE \ --organization $ORGANIZATION \ --state $STATE \ --category $CATEGORY \ --event-time $EVENT_TIME --resource-name $RESOURCE_NAME
Pour plus d'exemples, exécutez la commande suivante :
gcloud scc findings create --help
Python
Java
Go
Node.js
Pour en savoir plus sur la durée de stockage des données de résultats dans Security Command Center, consultez la page Conservation des résultats.
Créer un résultat avec des propriétés sources
Security Command Center permet aux sources d'ajouter du contexte aux résultats par le biais de métadonnées clé-valeur appelées "Propriétés sources". Les propriétés sources peuvent être initialisées au moment de la création. L'exemple ci-dessous montre comment créer un résultat avec des propriétés sources.
Créez un résultat avec des propriétés sources. La longueur des noms de clé dans la carte source_properties
doit comporter entre 1 et 255 caractères. Elle doit commencer par une lettre et ne contenir que des caractères alphanumériques ou des traits de soulignement.
Security Command Center n'accepte que les valeurs booléennes, de nombre et de chaîne.
gcloud
# ORGANIZATION=12344321 # SOURCE=43211234 # FINDING_ID=testfindingid # EVENT_TIME follows the format YYYY-MM-DDThh:mm:ss.ffffffZ EVENT_TIME=2019-02-28T07:00:06.861Z STATE=ACTIVE CATEGORY=MEDIUM_RISK_ONE SOURCE_PROPERTY_KEY=gcloud_client_test SOURCE_PROPERTY_VALUE=value RESOURCE_NAME=//cloudresourcemanager.googleapis.com/projects/PROJECT_ID gcloud scc findings create $FINDING_ID \ --source $SOURCE \ --organization $ORGANIZATION \ --state $STATE \ --category $CATEGORY \ --event-time $EVENT_TIME \ --source-properties $SOURCE_PROPERTY_KEY=$SOURCE_PROPERTY_VALUE --resource-name $RESOURCE_NAME
- Vous pouvez ajouter d'autres propriétés sources à l'aide d'une liste de paires clé-valeur séparées par une virgule.
Pour plus d'exemples, exécutez la commande suivante :
gcloud scc findings create --help
Python
Java
Go
Node.js
Mettre à jour les propriétés sources d'un résultat
Cet exemple montre comment mettre à jour des propriétés sources individuelles, ainsi que l'heure de l'événement. Il utilise des masques de champ pour ne mettre à jour que certains champs. Si aucun masque de champ n'est utilisé, les nouvelles valeurs remplacent tous les champs modifiables dans le résultat.
Comme pour la création d'un résultat, les noms de clés dans la carte source_properties
doivent contenir entre 1 et 255 caractères et doivent commencer par une lettre et ne contenir que des caractères alphanumériques ou des traits de soulignement. Security Command Center n'accepte que les valeurs booléennes, de nombre et de chaîne.
gcloud
# ORGANIZATION=12344321 # SOURCE=43211234 # FINDING_ID=testfindingid # EVENT_TIME follows the format YYYY-MM-DDThh:mm:ss.ffffffZ EVENT_TIME=2019-02-28T08:00:06.861Z SOURCE_PROPERTY_KEY=gcloud_client_test SOURCE_PROPERTY_VALUE=VALUE UPDATE_MASK=source_properties,event_time gcloud scc findings update $FINDING_ID \ --source $SOURCE \ --organization $ORGANIZATION \ --event-time $EVENT_TIME \ --source-properties $SOURCE_PROPERTY_KEY=$SOURCE_PROPERTY_VALUE \ --update-mask=$UPDATE_MASK
- Utilisez --update-mask '' (empty) pour remplacer tous les champs modifiables.
- Vous pouvez ajouter d'autres propriétés sources à l'aide d'une liste de paires clé-valeur séparées par une virgule.
Pour plus d'exemples, exécutez la commande suivante :
gcloud scc findings update --help
Python
Java
Go
Node.js
Mettre à jour l'état d'un résultat
Security Command Center fournit également une API permettant de ne mettre à jour que l'état d'un résultat. Cette API fournit une solution de mise à jour d'un résultat uniquement. Il s'agit d'une API simple qui permet aux entités principales de ne modifier que l'état d'un résultat et aucun autre de ses aspects. L'exemple ci-dessous montre comment définir l'état d'un résultat sur "inactif".
gcloud
# ORGANIZATION=12344321 # SOURCE=43211234 # FINDING_ID=testfindingid # EVENT_TIME follows the format YYYY-MM-DDThh:mm:ss.ffffffZ EVENT_TIME=2019-02-28T09:00:06.861Z STATE=INACTIVE gcloud scc findings update $FINDING_ID \ --source $SOURCE \ --organization $ORGANIZATION \ --state $STATE \ --event-time $EVENT_TIME
Pour plus d'exemples, exécutez la commande suivante :
gcloud scc findings update --help
Python
Java
Go
Node.js
Vérifier les autorisations de résultats
La création et la mise à jour des résultats nécessitent l'une des autorisations IAM suivantes :
- Création et mise à jour des résultats :
securitycenter.findings.update
. - Mise à jour des résultats uniquement :
securitycenter.findings.setState
.
Si vous ne pouvez pas créer de résultats pour une source, utilisez le code suivant pour vérifier que votre compte dispose des autorisations requises répertoriées dans la section Avant de commencer. Si vous ne disposez pas des autorisations nécessaires, consultez la page Créer et gérer des sources de sécurité pour configurer les stratégies IAM appropriées.
Python
Java
Go
Node.js
Étape suivante
En savoir plus sur Accéder à Security Command Center à l'aide de bibliothèques clientes