Cette page explique comment utiliser la fonctionnalité de notification de l'API Security Command Center. Consultez les exemples suivants:
- Créer un objet
NotificationConfig
- Obtenir un objet
NotificationConfig
- Mettre à jour un objet
NotificationConfig
- Supprimer un objet
NotificationConfig
- Répertorier
NotificationConfig
- Recevoir des notifications Pub/Sub
Les clients Security Command Center Premium peuvent également configurer des exportations continues pour Pub/Sub dans le tableau de bord Security Command Center.
Avant de commencer
Pour utiliser les exemples de cette page, vous devez suivre le guide Configurer les notifications de résultats.
Pour exécuter les exemples suivants, vous avez besoin d'un rôle de gestion de l'authentification et des accès (IAM) avec les autorisations appropriées :
- Créer
NotificationConfig
: éditeur de configurations de notification du centre de sécurité (roles/securitycenter.notificationConfigEditor
) - Obtenir et répertorier
NotificationConfig
: lecteur de configurations de notifications du centre de sécurité (roles/securitycenter.notificationConfigViewer
) ou éditeur des configurations de notifications du centre de sécurité (roles/securitycenter.notificationConfigEditor
) - Mettre à jour et supprimer
NotificationConfig
: éditeur de configurations de notifications du centre de sécurité (roles/securitycenter.notificationConfigEditor
)
Pour attribuer des rôles appropriés à un compte principal qui accède à un notificationConfig
, vous devez disposer de l'un des rôles IAM suivants:
- Administrateur de l'organisation (
roles/resourcemanager.organizationAdmin
) - Administrateur IAM de dossier (
roles/resourcemanager.folderIamAdmin
) - Administrateur de projet IAM (
roles/resourcemanager.projectIamAdmin
)
Les rôles IAM pour Security Command Center peuvent être attribués au niveau de l'organisation, d'un dossier ou d'un projet. Votre capacité à afficher, modifier, créer ou mettre à jour des résultats, des éléments et des sources de sécurité dépend du niveau d'accès qui vous est accordé. Pour en savoir plus sur les rôles Security Command Center, consultez la page Contrôle des accès.
Résidence des données et notifications
Si la résidence des données est activée pour Security Command Center, les configurations qui définissent les exportations continues vers les ressources Pub/Sub (notificationConfig
) sont soumises au contrôle de la résidence des données et sont stockées dans votre emplacement Security Command Center.
Pour exporter des résultats depuis un emplacement Security Command Center vers Pub/Sub, vous devez configurer l'exportation continue dans le même emplacement que Security Command Center.
Étant donné que les filtres utilisés dans les exportations continues peuvent contenir des données soumises à des contrôles de résidence, veillez à spécifier l'emplacement approprié avant de les créer. Security Command Center ne limite pas l'emplacement dans lequel vous créez des exportations.
Les exportations continues ne sont stockées que à l'emplacement de création. Elles ne peuvent pas être affichées ni modifiées ailleurs.
Une fois que vous avez créé une exportation continue, vous ne pouvez plus modifier son emplacement. Pour modifier l'emplacement, vous devez supprimer l'exportation continue et la recréer dans le nouvel emplacement.
Pour récupérer une exportation continue à l'aide d'appels d'API, vous devez spécifier l'emplacement dans le nom complet de la ressource notificationConfig
. Exemple :
GET https://securitycenter.googleapis.com/v2/{name=organizations/123/locations/eu/notificationConfigs/my-pubsub-export-01}
De même, pour récupérer une exportation continue à l'aide de la gcloud CLI, vous devez spécifier l'emplacement dans le nom complet de la ressource de la configuration ou à l'aide de l'option --locations
. Exemple :
gcloud scc notifications describe myContinuousExport organizations/123 \ --location=locations/us
Créer un objet NotificationConfig
Pour créer un objet NotificationConfig
, vous devez avoir :
- Un sujet Pub/Sub existant auquel vous souhaitez envoyer des notifications
- Rôles IAM requis pour le compte principal qui crée le
notificationConfig
.
Pour en savoir plus, consultez l'étape Configurer un sujet Pub/Sub dans le guide Configurer les notifications de résultats.
Avant de créer une NotificationConfig
, notez que chaque organisation peut avoir un nombre limité de fichiers NotificationConfig
. Pour en savoir plus, consultez la page Quotas et limites.
L'objet NotificationConfig
inclut un champ filter
qui limite les notifications aux événements utiles. Ce champ accepte tous les filtres disponibles dans la méthode findings.list
de l'API Security Command Center.
Lorsque vous créez un NotificationConfig
, vous spécifiez un parent pour l'NotificationConfig
à partir de la hiérarchie des ressources Google Cloud (une organisation, un dossier ou un projet). Si vous devez récupérer, mettre à jour ou supprimer le NotificationConfig
ultérieurement, vous devez inclure l'ID numérique de l'organisation, du dossier ou du projet parent lorsque vous le référencez.
Pour créer la NotificationConfig
à l'aide du langage ou de la plate-forme de votre choix:
gcloud
gcloud scc notifications create NOTIFICATION_NAME \ --PARENT=PARENT_ID \ --location=LOCATION --description="NOTIFICATION_DESCRIPTION" \ --pubsub-topic=PUBSUB_TOPIC \ --filter="FILTER"
Remplacez les éléments suivants :
NOTIFICATION_NAME
: nom de la notification. Doit comporter entre 1 et 128 caractères et ne contenir que des caractères alphanumériques, des traits de soulignement ou des traits d'union.PARENT
: champ d'application de la hiérarchie des ressources auquel la notification s'applique (organization
,folder
ouproject
).PARENT_ID
: ID de l'organisation, du dossier ou du projet parent, spécifié au formatorganizations/123
,folders/456
ouprojects/789
.LOCATION
: si la résidence des données est activée, spécifiez l'emplacement Security Command Center dans lequel créer la notification. La ressourcenotificationConfig
obtenue n'est stockée que dans cet emplacement. Seuls les résultats émis à cet emplacement sont envoyés à Pub/Sub.Si la résidence des données n'est pas activée, spécifier l'option
--location
crée la notification à l'aide de la version 2 de l'API Security Command Center. La seule valeur valide pour cette option estglobal
.NOTIFICATION_DESCRIPTION
: description de la notification comportant 1 024 caractères au maximum.PUBSUB_TOPIC
: sujet Pub/Sub qui recevra les notifications. Son format estprojects/PROJECT_ID/topics/TOPIC
.FILTER
: l'expression que vous définissez pour sélectionner les résultats à envoyer à Pub/Sub. Exemple :state="ACTIVE"
.
Python
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Java
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Go
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Node.js
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
PHP
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Ruby
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
C#
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Les notifications sont maintenant publiées sur le thème Pub/Sub que vous avez spécifié.
Pour publier des notifications, un compte de service de la forme service-org-ORGANIZATION_ID@gcp-sa-scc-notification.iam.gserviceaccount.com
est créé pour vous.
Ce compte de service est créé lorsque vous créez votre premier NotificationConfig
. Il se voit automatiquement attribuer le rôle securitycenter.notificationServiceAgent
sur la stratégie IAM pour PUBSUB_TOPIC lors de la création de la configuration de notification.
Ce rôle de compte de service est requis pour que les notifications fonctionnent.
Obtenir un objet NotificationConfig
Pour obtenir un objet NotificationConfig
, vous devez disposer d'un rôle IAM qui inclut l'autorisation securitycenter.notification.get
.
gcloud
gcloud scc notifications describe PARENT_TYPE/PARENT_ID/locations/LOCATION/notificationConfigs/NOTIFICATION_NAME
Remplacez les éléments suivants :
PARENT_TYPE
parorganizations
,folders
ouprojects
, selon le niveau de la hiérarchie des ressources spécifié dans la configuration de la notification ;PARENT_ID
par l'ID numérique de la ressource parente.LOCATION
: obligatoire si la résidence des données est activée ou si les ressourcesnotificationConfig
ont été créées à l'aide de l'API v2.Si la résidence des données est activée, spécifiez l'emplacement Security Command Center dans lequel les notifications sont stockées.
Si la résidence des données n'est pas activée, n'incluez
/locations/LOCATION
que si la ressourcenotificationConfig
a été créée à l'aide de l'API Security Command Center v2. Dans ce cas, le seul emplacement valide estglobal
.NOTIFICATION_NAME
: nom de la notification.
Python
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Java
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Go
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Node.js
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
PHP
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Ruby
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
C#
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Mettre à jour un objet
Pour mettre à jour un objet NotificationConfig
, vous devez disposer d'un rôle IAM qui inclut l'autorisation securitycenter.notification.update
.
Lorsque vous effectuez une mise à jour à l'aide d'un masque de champ, seuls les champs que vous spécifiez sont mis à jour. Si vous n'utilisez pas de masque de champ, tous les champs modifiables de l'objet NotificationConfig
sont remplacés par les nouvelles valeurs. Vous pouvez mettre à jour le sujet et la description Pub/Sub à l'aide d'un masque de champ.
Pour suivre cet exemple, vous devez être abonné au nouveau sujet et votre compte de service de notifications doit disposer de l'autorisation pubsub.topics.setIamPolicy
sur le sujet.
Après avoir accordé les autorisations nécessaires, mettez à jour la description NotificationConfig
, le sujet Pub/Sub et le filtre dans le langage de votre choix:
gcloud
gcloud scc notifications update PARENT_TYPE/PARENT_ID/locations/LOCATION/notificationConfigs/NOTIFICATION_NAME
--description="NOTIFICATION_DESCRIPTION" \
--pubsub-topic=PUBSUB_TOPIC \
--filter="FILTER"
Remplacez les éléments suivants :
PARENT_TYPE
parorganizations
,folders
ouprojects
, selon le niveau de la hiérarchie des ressources spécifié dans la configuration de la notification ;PARENT_ID
par l'ID numérique de la ressource parente.LOCATION
: obligatoire si la résidence des données est activée ou si lenotificationConfig
a été créé à l'aide de l'API v2.Si la résidence des données est activée, spécifiez l'emplacement Security Command Center dans lequel la notification est stockée.
Si la résidence des données n'est pas activée, incluez
/locations/LOCATION
dans le nom complet ou ne spécifiez l'option--location
que si la ressourcenotificationConfig
a été créée à l'aide de l'API Security Command Center v2. Dans ce cas, le seul emplacement valide estglobal
.NOTIFICATION_NAME
: nom de la notification.NOTIFICATION_DESCRIPTION
: description de la notification comportant 1 024 caractères au maximum.PUBSUB_TOPIC
: sujet Pub/Sub qui recevra les notifications. Son format estprojects/PROJECT_ID/topics/TOPIC
.FILTER
: l'expression que vous définissez pour sélectionner les résultats à envoyer à Pub/Sub. Exemple :state="ACTIVE"
.
Python
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Java
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Go
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Node.js
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
PHP
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Ruby
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
C#
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Supprimer un objet NotificationConfig
Pour supprimer un objet NotificationConfig
, vous devez disposer d'un rôle IAM qui inclut l'autorisation securitycenter.notification.delete
.
Lorsque vous supprimez un objet NotificationConfig
, le rôle securitycenter.notificationServiceAgent
reste dans le sujet Pub/Sub. Si vous n'utilisez pas le thème Pub/Sub dans un autre objet NotificationConfig
, supprimez le rôle du thème. Pour plus d'informations, consultez la section Contrôle des accès.
Supprimez un objet NotificationConfig
en utilisant la langue de votre choix :
gcloud
gcloud scc notifications delete PARENT_TYPE/PARENT_ID/locations/LOCATION/notificationConfigs/NOTIFICATION_NAME
Remplacez les éléments suivants :
PARENT_TYPE
parorganizations
,folders
ouprojects
, selon le niveau de la hiérarchie des ressources spécifié dans la configuration de la notification ;PARENT_ID
par l'ID numérique de la ressource parente.LOCATION
: obligatoire si la résidence des données est activée ou si lenotificationConfig
a été créé à l'aide de l'API v2.Si la résidence des données est activée, spécifiez l'emplacement Security Command Center dans lequel la notification est stockée.
Si la résidence des données n'est pas activée, incluez
/locations/LOCATION
dans le nom complet ou ne spécifiez l'option--location
que sinotificationConfig
a été créé à l'aide de l'API Security Command Center v2, auquel cas, le seul emplacement valide estglobal
.NOTIFICATION_NAME
: nom de la notification.
Python
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Java
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Go
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Node.js
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
PHP
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Ruby
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
C#
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Répertorier les objets NotificationConfig
Pour répertorier des objets NotificationConfigs
, vous devez disposer d'un rôle IAM incluant l'autorisation securitycenter.notification.list
.
Toutes les listes de l'API Security Command Center sont paginées. Chaque réponse renvoie une page de résultats et un jeton pour renvoyer la page suivante. La valeur pageSize
par défaut est 10. Vous pouvez configurer la taille des pages sur un minimum de 1, et un maximum de 1 000.
Répertoriez les objets NotificationConfigs
dans la langue de votre choix :
gcloud
gcloud scc notifications list PARENT_TYPE/PARENT_ID/locations/LOCATION
Remplacez les éléments suivants :
PARENT_TYPE
parorganizations
,folders
ouprojects
, selon le champ d'application auquel vous devez répertorier les notifications.PARENT_ID
par l'ID numérique de la ressource parente.LOCATION
: obligatoire si la résidence des données est activée ou si les ressourcesnotificationConfig
ont été créées à l'aide de l'API v2.Si la résidence des données est activée, spécifiez l'emplacement Security Command Center dans lequel les notifications sont stockées.
Si la résidence des données n'est pas activée, inclure
/locations/LOCATION
dans le nom ou l'option--location
dans la commande ne répertorie que les ressourcesnotificationConfig
créées à l'aide de l'API Security Command Center v2 et le seul emplacement valide estglobal
.
Python
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Java
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Go
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Node.js
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
PHP
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Ruby
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
C#
L'exemple suivant utilise l'API v1. Pour modifier l'exemple pour la v2, remplacez v1
par v2
et ajoutez /locations/LOCATION
au nom de la ressource.
Pour la plupart des ressources, ajoutez /locations/LOCATION
au nom de la ressource après /PARENT/PARENT_ID
, où PARENT
est organizations
, folders
ou projects
.
Pour les résultats, ajoutez /locations/LOCATION
au nom de la ressource après /sources/SOURCE_ID
, où SOURCE_ID
est l'ID du service Security Command Center qui a émis le résultat.
Recevoir des notifications Pub/Sub
Cette section fournit un exemple de message de notification et des exemples qui montrent comment convertir un message Pub/Sub en un message NotificationMessage
contenant un résultat.
Les notifications sont publiées dans Pub/Sub au format JSON
.
Voici un exemple de message de notification :
{
"notificationConfigName": "organizations/ORGANIZATION_ID/notificationConfigs/CONFIG_ID",
"finding": {
"name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID",
"parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID",
"state": "ACTIVE",
"category": "TEST-CATEGORY",
"securityMarks": {
"name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID/securityMarks"
},
"eventTime": "2019-07-26T07:32:37Z",
"createTime": "2019-07-29T18:45:27.243Z"
}
}
Convertissez un message Pub/Sub en un message NotificationMessage
dans la langue de votre choix :
gcloud
gcloud CLI ne permet pas de convertir un message Pub/Sub en un message NotificationMessage
. Vous pouvez utiliser gcloud CLI pour obtenir un NotificationMessage
et imprimer le JSON
directement dans votre terminal :
# The subscription used to receive published messages from a topic
PUBSUB_SUBSCRIPTION="projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID"
gcloud pubsub subscriptions pull $PUBSUB_SUBSCRIPTION
Remplacez les éléments suivants :
- PROJECT_ID par votre ID de projet
- SUBSCRIPTION_ID par votre ID d'abonnement
Python
Java
Go
Node.js
PHP
Étapes suivantes
- Découvrez le filtrage des notifications.