Politiques du service Oracle Cloud Migrations

Des politiques du service Oracle Cloud Migrations sont requises pour utiliser le service de migration.

Voici la syntaxe d'une politique :

allow <subject> to <verb> <resource-type> in <location> where <conditions>

Pour plus de détails, voir Syntaxe de politique. Pour plus d'informations sur la création de politiques, voir Fonctionnement des politiques, Informations de référence sur les politiques et Détails des politiques pour le stockage d'objets.

Voir les instructions pour créer des politiques à l'aide de la console.

Générateur de politiques

Oracle Cloud Migrations prend en charge le générateur de politiques. Le générateur de politiques de la console en nuage vous aide à créer rapidement des politiques communes sans avoir à entrer manuellement les énoncés de politique. Pour créer des politiques à l'aide du générateur de politiques, voir Création d'énoncés de politique avec le générateur de politiques.

Dans le générateur de politiques, sélectionnez les cas d'utilisation de politique pour Oracle Cloud Migrations. Les modèles de stratégie prédéfinis suivants sont disponibles pour la création des stratégies de service :

Politiques de migration

Groupes dynamiques et politiques IAM pour le service de migration.

  • Créez des groupes dynamiques pour le service de migration. Vous pouvez nommer le groupe dynamique MigrationDynamicGroup, par exemple, et remplacer compartmentOCID par l'OCID du compartiment de migration :
    ALL {resource.type = 'ocmmigration', resource.compartment.id = '<migration_compartment_ocid>'}

    Pour plus d'informations sur les groupes dynamiques, y compris les autorisations nécessaires pour les créer, voir Gestion des groupes dynamiques et Écriture des politiques pour les groupes dynamiques.

  • Créez toutes les politiques IAM suivantes pour permettre au service de migration de lire ou de gérer vos ressources OCI dans des compartiments spécifiques ou dans votre location :
    Allow dynamic-group MigrationDynamicGroup to manage instance-family in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to manage compute-image-capability-schema in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to manage virtual-network-family in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to manage volume-family in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to manage object-family in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to read ocb-inventory in tenancy
    Allow dynamic-group MigrationDynamicGroup to read ocb-inventory-asset in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to {OCB_CONNECTOR_READ, OCB_CONNECTOR_DATA_READ, OCB_ASSET_SOURCE_READ, OCB_ASSET_SOURCE_CONNECTOR_DATA_UPDATE } in compartment <migration_compartment_name>
    Allow dynamic-group MigrationDynamicGroup to {INSTANCE_IMAGE_INSPECT, INSTANCE_IMAGE_READ} in tenancy
    Allow dynamic-group MigrationDynamicGroup to {INSTANCE_INSPECT} in tenancy where any {request.operation='ListShapes'}
    Allow dynamic-group MigrationDynamicGroup to {DEDICATED_VM_HOST_READ} in tenancy where any {request.operation='GetDedicatedVmHost'}
    Allow dynamic-group MigrationDynamicGroup to {CAPACITY_RESERVATION_READ} in tenancy where any {request.operation='GetComputeCapacityReservation'}
    Allow dynamic-group MigrationDynamicGroup to {ORGANIZATIONS_SUBSCRIPTION_INSPECT} in tenancy where any {request.operation='ListSubscriptions'}
    Allow dynamic-group MigrationDynamicGroup to read rate-cards in tenancy
    Allow dynamic-group MigrationDynamicGroup to read metrics in tenancy where target.metrics.namespace='ocb_asset'
    Allow dynamic-group MigrationDynamicGroup to read tag-namespaces in tenancy
    Allow dynamic-group MigrationDynamicGroup to use tag-namespaces in tenancy where target.tag-namespace.name='CloudMigrations'

Politiques de détection

Groupe dynamique et politique IAM pour le service de détection.

Création d'un groupe dynamique

Créez un groupe dynamique pour le service d'exploration. Par exemple, vous pouvez donner le nom DiscoveryDynamicGroup au groupe dynamique.

ALL { resource.type = 'ocbassetsource' }

Création d'une politique IAM

Créez la politique IAM suivante pour accorder au service de détection les autorisations requises pour effectuer des migrations.

Allow dynamic-group DiscoveryDynamicGroup to inspect compartments in compartment <migration_compartment_name>
Allow dynamic-group DiscoveryDynamicGroup to read ocb-environments in compartment <migration_compartment_name>
Allow dynamic-group DiscoveryDynamicGroup to read ocb-inventory in tenancy
Allow dynamic-group DiscoveryDynamicGroup to manage ocb-inventory-asset in compartment <migration_compartment_name>
Allow dynamic-group DiscoveryDynamicGroup to {TENANCY_INSPECT} in tenancy
Allow dynamic-group DiscoveryDynamicGroup to read secret-family in compartment <migrationsecret_compartment_name>
Allow dynamic-group DiscoveryDynamicGroup to use metrics in compartment <migration_compartment_name> where target.metrics.namespace='ocb_asset'

Pour plus d'informations sur les groupes dynamiques, y compris les autorisations nécessaires pour les créer, voir Gestion des groupes dynamiques et Écriture des politiques pour les groupes dynamiques.

Politiques de l'agent d'hydratation

Groupes dynamiques et politiques IAM pour l'agent d'hydratation.

  • Créez des groupes dynamiques pour l'agent d'hydratation. Vous pouvez nommer le groupe dynamique HydrationAgentDynamicGroup, par exemple, et remplacer compartmentOCID par l'OCID du compartiment de migration :
    ALL {instance.compartment.id = '<migration_compartment_ocid>'}
  • Pour plus d'informations sur les groupes dynamiques, y compris les autorisations nécessaires pour les créer, voir Gestion des groupes dynamiques et Écriture des politiques pour les groupes dynamiques.

  • Créez les politiques IAM suivantes dans des compartiments spécifiques ou dans votre location pour fournir à l'agent d'hydratation les autorisations nécessaires pour extraire des instantanés du service de stockage d'objets OCI et appeler les API d'hydratation du service de migration :
    Define tenancy OCM-SERVICE AS <ocm_service_tenancy_ocid_for_realm>     
    Endorse dynamic-group HydrationAgentDynamicGroup to { OBJECT_CREATE } in tenancy OCM-SERVICE where all { target.bucket.name = 'tenancy_ocid' }
    Allow dynamic-group HydrationAgentDynamicGroup to {OCM_HYDRATION_AGENT_TASK_INSPECT, OCM_HYDRATION_AGENT_TASK_UPDATE, OCM_HYDRATION_AGENT_REPORT_STATUS} in compartment <migration_compartment_name>
    Allow dynamic-group HydrationAgentDynamicGroup to manage objects in compartment <migration_compartment_name>
    Allow dynamic-group HydrationAgentDynamicGroup to read secret-family in compartment <migrationsecret_compartment_name>
Note

La valeur de ocm_service_tenancy_for_realm pour le domaine OC1 est mentionnée ci-dessous. Si votre location se trouve dans un domaine autre que OC1, communiquez avec Oracle Support pour obtenir l'OCID de la location de service approprié. ocid1.tenancy.oc1..aaaaaaaartv6j5muce2s4djz7rvfn2vwceq3cnue33d72isntnlfmi7huv7q