Exemples de stratégies
Les exemples suivants fournissent des exemples de stratégies OS Management Hub utilisées pour restreindre l'accès à un type d'utilisateur spécifique.
- Utilisateur administrateur avec droits d'accès de location
- Utilisateur administrateur restreint à un compartiment
- Opérateur restreint à un compartiment
Pour ces exemples, la location a la structure de compartiment suivante :
- Compartiment root (location)
- Compartiment dev
- Compartiment enfant test de dev
- Compartiment prod
- Compartiment dev
Utilisateur administrateur avec droits d'accès de location
Pour cet exemple :
- Le groupe dynamique est osmh-instances. Les instructions de règle incluent les instances OCI et les agents de gestion (pour les instances sur site ou cloud tierces) dans le compartiment racine (location), le compartiment dev, le compartiment enfant test et le compartiment prod.
- L'utilisateur appartient au groupe d'utilisateurs osmh-admins, qui est autorisé à gérer toutes les ressources OS Management Hub de la location.
- L'environnement contient à la fois des instances OCI et sur site ou cloud tiers.
- Règles de groupe dynamique
-
Le groupe dynamique requiert une règle pour chaque compartiment (et compartiment enfant) qui contiendra des instances gérées. Cet exemple présente les règles pour le compartiment racine (location), le compartiment dev, le compartiment enfant test et le compartiment prod.
ANY {instance.compartment.id='<tenancy_ocid>',instance.compartment.id='<dev_compartment_ocid>',instance.compartment.id='<test_child compartment_ocid>',instance.compartment.id='<prod_compartment_ocid>'} ALL {resource.type='managementagent', resource.compartment.id='<tenancy_ocid>'} ALL {resource.type='managementagent', resource.compartment.id='<dev_compartment_ocid>'} ALL {resource.type='managementagent', resource.compartment.id='<test_child compartment_ocid>'} ALL {resource.type='managementagent', resource.compartment.id='<prod_compartment_ocid>'}
- La première ligne indique au groupe d'inclure des instances OCI dans le compartiment racine, le compartiment dev, le compartiment enfant test et le compartiment prod. Pour ce faire, utilisez une seule instruction de règle en utilisant ANY et en incluant chaque compartiment dans l'instruction.
- Les quatre lignes suivantes indiquent au groupe d'inclure les agents de gestion dans le compartiment indiqué. En incluant la ressource d'agent de gestion, l'instruction inclut l'instance sur site ou cloud tiers correspondante.
- Instructions de stratégie
-
allow dynamic-group osmh-instances to {OSMH_MANAGED_INSTANCE_ACCESS} in tenancy where request.principal.id = target.managed-instance.id allow group osmh-admins to manage osmh-family in tenancy allow group osmh-admins to manage management-agents in tenancy allow group osmh-admins to manage management-agent-install-keys in tenancy
- La première ligne permet à l'agent sur les instances gérées d'interagir avec OS Management Hub.
OSMH_MANAGED_INSTANCE_ACCESS
permet d'accéder à OS Management Hub. - La deuxième ligne permet au groupe d'utilisateurs de gérer toutes les ressources OS Management Hub de la location.
- La troisième ligne permet au groupe d'utilisateurs de créer, de mettre à jour et de supprimer des agents de gestion dans la location.
- La quatrième ligne permet au groupe d'utilisateurs de créer, de mettre à jour et de supprimer des clés d'installation dans la location.
- La première ligne permet à l'agent sur les instances gérées d'interagir avec OS Management Hub.
Utilisateur administrateur restreint à un compartiment
Pour cet exemple :
- Le groupe dynamique est osmh-instances. Les instructions de règle incluent des instances OCI dans le compartiment dev et le compartiment enfant test.
- L'utilisateur appartient au groupe d'utilisateurs osmh-admins-dev qui peut gérer toutes les ressources OS Management Hub dans le compartiment dev et le compartiment enfant test. L'utilisateur peut lire dans la location les profils et les sources logicielles nécessaires pour accéder aux sources logicielles du fournisseur et aux profils fournis par le service.
- L'environnement contient uniquement des instances OCI.
- Règles de groupe dynamique
-
Le groupe dynamique requiert une règle pour chaque compartiment (et compartiment enfant) qui contiendra des instances gérées. Cet exemple présente des règles pour les compartiments enfant dev et test à l'aide d'instructions de règle distinctes pour chacun d'eux.
ALL {instance.compartment.id='<dev_compartment_ocid>'} ALL {instance.compartment.id='<test_compartment_ocid>'}
- La première ligne inclut toutes les instances du compartiment
dev
. - La deuxième ligne inclut toutes les instances du compartiment enfant
test
. - Au lieu de deux instructions de règle, vous pouvez également utiliser une seule instruction ANY :
ANY {instance.compartment.id='<dev_compartment_ocid>',instance.compartment.id='<test_compartment_ocid>'}
- La première ligne inclut toutes les instances du compartiment
- Instructions de stratégie
-
allow dynamic-group osmh-instances to {OSMH_MANAGED_INSTANCE_ACCESS} in compartment dev where request.principal.id = target.managed-instance.id allow group osmh-admins-dev to manage osmh-family in compartment dev allow group osmh-admins-dev to read osmh-profiles in tenancy where target.profile.compartment.id = '<tenancy_ocid>' allow group osmh-admins-dev to read osmh-software-sources in tenancy where target.softwareSource.compartment.id = '<tenancy_ocid>' allow group osmh-admins-dev to manage management-agents in compartment dev allow group osmh-admins-dev to manage management-agent-install-keys in compartment dev
- La première ligne permet à l'agent de service sur les instances gérées d'interagir avec OS Management Hub.
- La deuxième ligne permet au groupe d'utilisateurs de gérer toutes les ressources OS Management Hub dans le compartiment dev. Les stratégies utilisent l'héritage de compartiment. L'utilisateur pourra donc également gérer les ressources dans tous les compartiments enfant de dev (dans cet exemple, test).
- Les troisième et quatrième lignes permettent au groupe d'utilisateurs de lire les profils et les sources logicielles dans le compartiment racine. Cette opération est nécessaire pour répliquer les sources logicielles du fournisseur et utiliser les profils fournis par le service.
- Les cinquième et sixième lignes permettent à l'utilisateur de gérer les clés et agents Management Agent Cloud Service (MACS).
Opérateur restreint à un compartiment
Pour cet exemple :
- Le groupe dynamique est osmh-instances. L'instruction de règle inclut les ressources d'agent de gestion dans le compartiment prod.
- L'utilisateur appartient au groupe d'utilisateurs osmh-operators, qui peut lire toutes les ressources OS Management Hub dans le compartiment prod.
- L'environnement contient uniquement des instances sur site ou cloud tiers.
- Règles de groupe dynamique
-
Le groupe dynamique requiert une règle pour chaque compartiment qui contiendra des instances gérées. Cet exemple montre une règle pour le compartiment prod.
ALL {resource.type='managementagent', resource.compartment.id='<prod_compartment_ocid>'}
- La règle indique au groupe dynamique d'inclure des ressources d'agent de gestion dans le compartiment
prod
. L'inclusion de l'agent permettra à OS Management Hub de gérer l'instance sur site ou cloud tiers correspondante.
- La règle indique au groupe dynamique d'inclure des ressources d'agent de gestion dans le compartiment
- Instructions de stratégie
-
allow dynamic-group osmh-instances to {OSMH_MANAGED_INSTANCE_ACCESS} in compartment prod where request.principal.id = target.managed-instance.id allow group osmh-operators to read osmh-family in compartment prod
- La première ligne permet à l'agent sur les instances gérées d'interagir avec OS Management Hub.
- La deuxième ligne permet au groupe d'utilisateurs de visualiser toutes les ressources OS Management Hub dans le compartiment prod.
- Les stratégies pour Management Agent Cloud Service (MACS) ne sont pas nécessaires pour afficher les instances sur site ou cloud tiers dans OS Management Hub. Par conséquent, le groupe d'utilisateurs de l'opérateur n'a pas besoin d'accéder à MACS comme indiqué dans les exemples précédents.