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.

Pour ces exemples, la location a la structure de compartiment suivante :

  • Compartiment root (location)
    • Compartiment dev
      • Compartiment enfant test de dev
    • Compartiment prod

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.

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>'}
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.
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.