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-agents 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

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 distant

Créez les groupes dynamiques et les politiques IAM suivants pour l'agent distant.

  • Créez des groupes dynamiques pour l'agent distant. Par exemple, vous pouvez donner le nom RemoteAgentDynamicGroup au groupe dynamique :
    ALL {resource.type = 'ocbagent'}

    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 à l'agent distant d'utiliser, de lire ou de gérer vos ressources OCI dans des compartiments spécifiques ou dans votre location :
    Define tenancy OCB-SERVICE as <ocb_service_tenancy_ocid_for_realm>
    Endorse dynamic-group RemoteAgentDynamicGroup to { OBJECT_CREATE } in tenancy OCB-SERVICE
    Allow dynamic-group RemoteAgentDynamicGroup to manage buckets in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to manage object-family in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to {OCM_REPLICATION_TASK_READ, OCM_REPLICATION_TASK_UPDATE} in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to use ocb-asset-source-connectors in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to use ocb-connectors in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to manage ocb-inventory in tenancy
    Allow dynamic-group RemoteAgentDynamicGroup to manage ocb-inventory-asset in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to read secret-family in compartment <migrationsecret_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to use metrics in compartment <migration_compartment_name> where target.metrics.namespace='ocb_asset'
    Allow dynamic-group RemoteAgentDynamicGroup to { OCM_CONNECTOR_INSPECT, OCM_ASSET_SOURCE_READ, OCM_ASSET_SOURCE_CONNECTION_PUSH } in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to { OCB_AGENT_INSPECT, OCB_AGENT_SYNC, OCB_AGENT_READ, OCB_AGENT_DEPENDENCY_INSPECT, OCB_AGENT_DEPENDENCY_READ, OCB_AGENT_KEY_UPDATE, OCB_AGENT_TASK_READ, OCB_AGENT_ASSET_SOURCES_INSPECT, OCB_AGENT_TASK_UPDATE, OCB_AGENT_UPDATE_COMMAND_CREATE } in compartment <migration_compartment_name>
    Allow dynamic-group RemoteAgentDynamicGroup to { OCB_ASSET_SOURCE_INSPECT, OCB_ASSET_SOURCE_READ, OCB_ASSET_SOURCE_ASSET_HANDLES_PUSH, OCB_ASSET_SOURCE_CONNECTION_PUSH } in compartment <migration_compartment_name>
Note

La valeur de ocb_service_tenancy_ocid_for_realm pour le domaine OC1 est la suivante :ocid1.tenancy.oc1..aaaaaaaahr2xcduf4knzkzhkzt442t66bpqt3aazss6cy2ll6x4xj3ci7tiq.

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é.

Politiques du plugiciel de détection

Groupes dynamiques et politiques IAM pour le plugiciel de détection.

  • Créez des groupes dynamiques pour le plugiciel de détection. Par exemple, vous pouvez donner le nom DiscoveryPluginDynamicGroup au groupe dynamique :
    ALL {resource.type = 'ocbagent'}

    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 plugiciel de détection d'utiliser, de lire ou de gérer des ressources dans des compartiments spécifiques ou dans votre location :
    Allow dynamic-group DiscoveryPluginDynamicGroup to use ocb-connectors in compartment <migration_compartment_name>
    Allow dynamic-group DiscoveryPluginDynamicGroup to use ocb-asset-source-connectors in compartment <migration_compartment_name>
    Allow dynamic-group DiscoveryPluginDynamicGroup to read ocb-inventory in tenancy
    Allow dynamic-group DiscoveryPluginDynamicGroup to manage ocb-inventory-asset in compartment <migration_compartment_name>
    Allow dynamic-group DiscoveryPluginDynamicGroup to read secret-family in compartment <migrationsecret_compartment_name>
    Allow dynamic-group DiscoveryPluginDynamicGroup to use metrics in compartment <migration_compartment_name> where target.metrics.namespace='ocb_asset'

Politiques du plugiciel de réplication

Groupes dynamiques et politiques IAM pour le plugiciel de réplication.

  • Créez des groupes dynamiques pour le plugiciel de réplication. Par exemple, vous pouvez donner le nom ReplicationPluginDynamicGroup au groupe dynamique :
    ALL {resource.type = 'ocbagent'}

    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 que le plugiciel de réplication publie des instantanés dans le service de stockage d'objets pour OCI et appelle les API de réplication du service de migration :
    Allow dynamic-group ReplicationPluginDynamicGroup to { OCM_REPLICATION_TASK_INSPECT, OCM_REPLICATION_TASK_READ, OCM_REPLICATION_TASK_UPDATE, OCM_CONNECTOR_INSPECT, OCM_ASSET_SOURCE_READ, OCM_ASSET_SOURCE_CONNECTION_PUSH } in compartment <migration_compartment_name>
    Allow dynamic-group ReplicationPluginDynamicGroup to { BUCKET_INSPECT, BUCKET_READ, OBJECTSTORAGE_NAMESPACE_READ, OBJECT_CREATE, OBJECT_DELETE, OBJECT_INSPECT, OBJECT_OVERWRITE, OBJECT_READ } in compartment <migration_compartment_name> where all {target.bucket.name='<REPLICATION_SNAPSHOTS_BUCKET>'}
    Allow dynamic-group ReplicationPluginDynamicGroup to read secret-family in compartment <migrationsecret_compartment_name>
    Allow dynamic-group ReplicationPluginDynamicGroup to use metrics in compartment <migration_compartment_name> where target.metrics.namespace='ocb_asset'
    Allow dynamic-group ReplicationPluginDynamicGroup to {OCB_AGENT_INSPECT, OCB_AGENT_SYNC, OCB_AGENT_READ, OCB_AGENT_DEPENDENCY_INSPECT, OCB_AGENT_DEPENDENCY_READ, OCB_AGENT_KEY_UPDATE, OCB_AGENT_TASK_READ, OCB_AGENT_ASSET_SOURCES_INSPECT, OCB_AGENT_TASK_UPDATE} in tenancy
    Allow dynamic-group ReplicationPluginDynamicGroup to use ocb-connectors in compartment <migration_compartment_name>
    Allow dynamic-group ReplicationPluginDynamicGroup to use ocb-asset-source-connectors in compartment <migration_compartment_name>
    Allow dynamic-group ReplicationPluginDynamicGroup to read ocb-inventory in tenancy
    Allow dynamic-group ReplicationPluginDynamicGroup to read ocb-inventory-asset in compartment <migration_compartment_name>

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 read objects in compartment <migration_compartment_name>
Note

ocm_service_tenancy_ocid_for_realm pour le domaine OC1 a la valeur suivante : ocid1.tenancy.oc1..aaaaaaaartv6j5muce2s4djz7rvfn2vwceq3cnue33d72isntnlfmi7huv7q.

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é.