Exemple de politiques
Les exemples suivants fournissent des exemples de politiques du centre de gestion du système d'exploitation utilisées pour restreindre l'accès à un type d'utilisateur spécifique.
- Utilisateur administrateur avec les autorisations de location
- Utilisateur administrateur restreint à un compartiment
- Opérateur limité à un compartiment
Pour ces exemples, la location présente la structure de compartiment suivante :
- Compartiment root (location)
- Compartiment dev
- test compartiment enfant de dev
- Compartiment prod
- Compartiment dev
Utilisateur administrateur avec les autorisations de location
Pour cet exemple :
- Le groupe dynamique est osmh-instances. Les énoncés de règle incluent à la fois des instances OCI et des agents de gestion (pour les instances sur place ou de nuage tiers) 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 du centre de gestion du système d'exploitation dans la location.
- L'environnement contient à la fois des instances OCI et sur place ou de nuage tiers.
- Règles de groupe dynamique
-
Le groupe dynamique nécessite 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 un seul énoncé de règle à l'aide de ANY et incluez chaque compartiment dans l'énoncé.
- Les quatre lignes suivantes indiquent au groupe d'inclure les agents de gestion dans le compartiment spécifié. En incluant la ressource d'agent de gestion, l'énoncé inclura l'instance sur place ou de nuage tiers correspondante.
- énoncés de politique
-
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 le centre de gestion du système d'exploitation.
OSMH_MANAGED_INSTANCE_ACCESS
fournit l'accès au centre de gestion du système d'exploitation. - La deuxième ligne permet au groupe d'utilisateurs de gérer toutes les ressources du centre de gestion du système d'exploitation dans 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 le centre de gestion du système d'exploitation.
Utilisateur administrateur restreint à un compartiment
Pour cet exemple :
- Le groupe dynamique est osmh-instances. Les énoncés de règle incluent les 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 du centre de gestion du système d'exploitation dans le compartiment dev et le compartiment enfant test. L'utilisateur peut lire les profils et les sources de logiciels dans la location, ce qui est nécessaire pour accéder aux sources de logiciels de fournisseur et aux profils fournis par le service.
- L'environnement ne contient que des instances OCI.
- Règles de groupe dynamique
-
Le groupe dynamique nécessite 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 enfant dev et test à l'aide d'énoncés de règle distincts pour chacun.
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
. - Sinon, au lieu de deux énoncés de règles, vous pouvez utiliser un seul énoncé ANY :
ANY {instance.compartment.id='<dev_compartment_ocid>',instance.compartment.id='<test_compartment_ocid>'}
- La première ligne inclut toutes les instances du compartiment
- énoncés de politique
-
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 le centre de gestion du système d'exploitation.
- La deuxième ligne permet au groupe d'utilisateurs de gérer toutes les ressources du centre de gestion du système d'exploitation dans le compartiment dev. Les politiques utilisent l'héritage des compartiments, de sorte que l'utilisateur pourra également gérer les ressources dans tous les compartiments enfants 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 de logiciels dans le compartiment racine. Cela est nécessaire pour répliquer les sources de logiciels des fournisseurs 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 les agents MACS (Management Agent Cloud Service).
Opérateur limité à un compartiment
Pour cet exemple :
- Le groupe dynamique est osmh-instances. L'énoncé 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 du centre de gestion du système d'exploitation dans le compartiment prod.
- L'environnement ne contient que des instances sur place ou de nuage tiers.
- Règles de groupe dynamique
-
Le groupe dynamique nécessite une règle pour chaque compartiment qui contiendra des instances gérées. Cet exemple présente 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 les ressources de l'agent de gestion dans le compartiment
prod
. L'inclusion de l'agent permettra au centre de gestion du système d'exploitation de gérer l'instance sur place ou de nuage tiers correspondante.
- La règle indique au groupe dynamique d'inclure les ressources de l'agent de gestion dans le compartiment
- énoncés de politique
-
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 le centre de gestion du système d'exploitation.
- La deuxième ligne permet au groupe d'utilisateurs de voir toutes les ressources du centre de gestion du système d'exploitation dans le compartiment prod.
- Les politiques pour le service MACS (Management Agent Cloud Service) ne sont pas nécessaires pour voir les instances sur place ou de nuage tiers dans le centre de gestion du système d'exploitation. Par conséquent, le groupe d'utilisateurs opérateurs n'a pas besoin d'accéder à MACS comme illustré dans les exemples précédents.