Activer la sécurité d'instance
Activez la sécurité d'instance dans Cloud Guard.
Pour activer la sécurité d'instance dans votre location, procédez comme suit :
- Appliquez l'une des recettes de détecteur Instance Security gérées par Oracle à une cible Cloud Guard. Cela active la sécurité des instances dans Cloud Guard pour votre location. Reportez-vous à Recettes de détecteur de sécurité d'instance.
Vous pouvez créer une cible ou utiliser une cible existante. Reportez-vous à A propos des cibles OCI.
- Ajoutez les stratégies de sécurité d'instance à votre location.
Application d'une recette de sécurité d'instance à une nouvelle cible Cloud Guard
- La dernière étape de l'activation de la sécurité d'instance consiste à ajouter les instructions de stratégie dans la console.
Si vous n'activez pas les journaux bruts de sécurité d'instance ici, vous pouvez les activer à partir de la console du service Logging. Reportez-vous à Activation des journaux à partir du service Logging.
Application d'une recette de sécurité d'instance à une cible Cloud Guard
La dernière étape de l'activation de la sécurité d'instance consiste à ajouter les instructions de stratégie dans la console.
Si vous n'activez pas les journaux bruts de sécurité d'instance ici, vous pouvez les activer à partir de la console du service Logging. Reportez-vous à Activation des journaux à partir du service Logging.
Instructions de stratégie pour la sécurité d'instance
Vous devez ajouter ces stratégies dans la console dans le cadre de l'activation de la sécurité d'instance.
Les stratégies permettent à l'agent de sécurité d'instance d'accéder aux ressources requises dans la location. Sans ces stratégies, vous n'obtiendrez aucun résultat.
Pour plus d'informations sur la saisie des instructions de stratégie dans la console, reportez-vous à Création d'une stratégie.
Instructions de stratégie utilisateur
Ces stratégies fournissent des droits d'accès utilisateur permettant d'utiliser la sécurité d'instance pour les requêtes à la demande et les requêtes programmées. Ajoutez-les à vos stratégies utilisateur, en remplaçant group
par le nom d'un groupe d'utilisateurs approprié.
Allow group <group> to { INSTANCE_READ } in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_READ} in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_CREATE} in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_INSPECT } in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_DELETE } in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_READ} in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_CREATE} in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_INSPECT } in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_DELETE } in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_INSPECT} in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_READ } in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_CREATE } in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_DELETE } in compartment <compartment>
Instructions de stratégie de journalisation de service
Ces stratégies permettent aux utilisateurs d'accéder aux journaux. Ajoutez-les à vos stratégies utilisateur, en remplaçant group
par le nom d'un groupe d'utilisateurs approprié.
Allow group <group> to { CG_SERVICE_LOGGING_READ } in compartment <compartment>
Allow group <group> to { CG_SERVICE_LOGGING_CREATE } in compartment <compartment>
Allow group <group> to { CG_SERVICE_LOGGING_UPDATE } in compartment <compartment>
Allow group <group> to { CG_SERVICE_LOGGING_DELETE } in compartment <compartment>
Instructions de stratégie de location
Ces stratégies permettent à la sécurité d'instance d'accéder aux ressources requises dans la location.
Allow any-user to { WLP_BOM_READ } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Allow any-user to { WLP_CONFIG_READ } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Allow any-user to { WLP_ADHOC_QUERY_READ } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Allow any-user to { WLP_ADHOC_RESULTS_CREATE } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Endorse any-user to { WLP_LOG_CREATE } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Endorse any-user to { WLP_METRICS_CREATE } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Endorse any-user to { WLP_ADHOC_QUERY_READ } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Endorse any-user to { WLP_ADHOC_RESULTS_CREATE } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Utiliser des groupes dynamiques pour contrôler l'accès aux requêtes à la demande et aux requêtes planifiées
Vous devez créer des groupes dynamiques pour utiliser des requêtes à la demande (ad hoc) et planifiées. Le type de ressource est :
- Pour les requêtes à la demande,
cloudguardadhocquery
. - Pour les requêtes programmées,
cloudguarddatasource
.
- Chaque requête est automatiquement liée à un groupe dynamique en fonction du type de ressource et des balises facultatives.
- L'accès est déterminé par le groupe dynamique auquel appartient la requête.
- Si aucune stratégie n'existe pour une requête, une exception non autorisée est générée lors de son exécution.
Cet exemple montre comment créer un groupe dynamique pour chaque type de requête. Pour plus d'informations, reportez-vous à Gestion des groupes dynamiques.
- Créez les groupes dynamiques :
Groupe dynamique Instruction de groupe dynamique adhoc_query_dg
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-compartment-id'}
scheduled_query_dg
all { resource.type = 'cloudguarddatasource', resource.compartment.id = 'my-compartment-id' }
Si vous utilisez l'agent on-premise, vous pouvez utiliser les mêmes groupes dynamiques ou créer des groupes dynamiques distincts en fonction du compartiment configuré pour vos instances on-premise.
Groupe dynamique Instruction de groupe dynamique on_prem_adhoc_query_dg
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-on-prem-compartment-id'}
on_prem_scheduled_query_dg
all { resource.type = 'cloudguarddatasource', resource.compartment.id = 'my-on-prem-compartment-id' }
- Ensuite, écrivez des stratégies afin d'accorder à l'instance en lecture l'accès aux groupes dynamiques nouvellement créés pour votre compartiment ou location (compartiment racine).
allow dynamic-group adhoc_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguardadhocquery' } allow dynamic-group scheduled_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguarddatasource' }
Si vous utilisez l'agent on-premise, vous devez écrire deux stratégies supplémentaires.
allow dynamic-group on_prem_adhoc_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguardadhocquery' } allow dynamic-group on_prem_scheduled_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguarddatasource' }
Pour plus d'informations sur la création de stratégies pour les locations ou les compartiments, reportez-vous à Fonctionnement des stratégies.
- Vous pouvez désormais créer des requêtes :
Utilisation de balises pour isoler les autorisations de requête
Vous pouvez utiliser des balises pour isoler et catégoriser les requêtes programmées en cours d'exécution. Pour plus d'informations sur l'utilisation des balises, reportez-vous à Balisage.
Pour utiliser des balises, vous devez créer les requêtes à la demande ou programmées à l'aide de l'interface de ligne de commande ou de l'API.
- Créez les groupes dynamiques avec des balises :
Groupe dynamique Instruction du groupe dynamique adhoc_query_dg
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-compartment-id', tag.namespace.tag-key.value = 'tag-value' }
scheduled_query_dg
all { resource.type = 'cloudguarddatasource', resource.compartment.id = 'my-compartment-id', tag.namespace.tag-key.value = 'tag-value' }
Par exemple, supposons que vous disposez d'un espace de noms de balise appelé "Departments" et d'une balise dans cet espace de noms appelée "department_type" avec une liste de valeurs de ["hr", "finance", "marketing", "it"]. L'instruction de groupe dynamique pour une requête personnalisée serait
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-compartment-id', tag.department_type.tag-key.value = 'finance' }
- Stratégies d'écriture permettant d'accorder à l'instance en lecture l'accès aux groupes dynamiques nouvellement créés.
allow dynamic-group adhoc_query_dg to read instances in compartment my-compartment where all { request.principal.type = 'cloudguardadhocquery' } allow dynamic-group scheduled_query_dg to read instances in compartment my-compartment where all { request.principal.type = 'cloudguarddatasource' }
- Vous pouvez désormais créer des requêtes à l'aide de l'interface de ligne de commande ou de l'API avec les balises que vous avez définies :