Oracle Cloud Migrations Service-Policys

Für die Verwendung des Migrationsservice sind Oracle Cloud Migrations-Service-Policys erforderlich.

Eine Policy-Syntax lautet wie folgt:

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

Vollständige Informationen finden Sie unter Policy-Syntax. Weitere Informationen zum Erstellen von Policys finden Sie unter Funktionsweise von Policys, Policy-Referenz und Policy-Details für Object Storage.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

Policy Builder

Oracle Cloud Migrations unterstützt Policy Builder. Mit dem Policy Builder in der Cloud-Konsole können Sie schnell allgemeine Policys erstellen, ohne die Policy-Anweisungen manuell eingeben zu müssen. Informationen zum Erstellen von Policys mit Policy Builder finden Sie unter Policy-Anweisungen mit Policy Builder erstellen.

Wählen Sie im Policy Builder die Policy-Anwendungsfälle für Oracle Cloud Migrations aus. Die folgenden vordefinierten Policy-Vorlagen sind zum Erstellen der Service-Policys verfügbar:

Migrations-Policys

Dynamische Gruppen und IAM-Policys für den Migrationsservice.

  • Erstellen Sie dynamische Gruppen für den Migrationsservice. Sie können die dynamische Gruppe beispielsweise als MigrationDynamicGroup benennen und compartmentOCID durch die OCID Ihres Migrations-Compartments ersetzen:
    ALL {resource.type = 'ocmmigration', resource.compartment.id = '<migration_compartment_ocid>'}

    Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

  • Erstellen Sie alle der folgenden IAM-Policys, damit der Migrationsservice Ihre OCI-Ressourcen in spezifischen Compartments oder in Ihrem Mandanten lesen oder verwalten kann:
    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'

Discovery Policys

Dynamische Gruppe und IAM-Policy für den Discovery-Service.

Dynamische Gruppen erstellen

Erstellen Sie eine dynamische Gruppe für den Discovery-Service. Sie können der dynamischen Gruppe beispielsweise den Namen DiscoveryDynamicGroup geben.

ALL { resource.type = 'ocbassetsource' }

IAM-Policys erstellen

Erstellen Sie die folgende IAM-Policy, um dem Discovery-Service die erforderlichen Berechtigungen zum Ausführen von Migrationen zu erteilen.

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

Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

Remote-Agent-Policys

Erstellen Sie die folgenden dynamischen Gruppen und IAM-Policys für den Remote-Agent.

  • Erstellen Sie dynamische Gruppen für den Remote-Agent. Sie können der dynamischen Gruppe beispielsweise den Namen RemoteAgentDynamicGroup geben:
    ALL {resource.type = 'ocbagent'}

    Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

  • Erstellen Sie alle der folgenden IAM-Policys, damit der Remote-Agent Ihre OCI-Ressourcen in spezifischen Compartments oder in Ihrem Mandanten verwenden, lesen oder verwalten kann:
    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>
Hinweis

Die ocb_service_tenancy_ocid_for_realm für die Realm OC1 hat den folgenden Wert:ocid1.tenancy.oc1..aaaaaaaahr2xcduf4knzkzhkzt442t66bpqt3aazss6cy2ll6x4xj3ci7tiq.

Wenn sich Ihr Mandant in einer anderen Realm als OC1 befindet, wenden Sie sich an Oracle Support, um die richtige Servicemandanten-OCID zu erhalten.

Discovery-Plug-in-Policys

Dynamische Gruppen und IAM-Policys für das Discovery-Plug-in.

  • Erstellen Sie dynamische Gruppen für das Discovery-Plug-in. Sie können der dynamischen Gruppe beispielsweise den Namen DiscoveryPluginDynamicGroup geben:
    ALL {resource.type = 'ocbagent'}

    Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

  • Erstellen Sie alle der folgenden IAM-Policys, damit das Discovery-Plug-in Ressourcen in spezifischen Compartments oder in Ihrem Mandanten verwenden, lesen oder verwalten kann:
    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'

Replikations-Plug-in-Policys

Dynamische Gruppen und IAM-Policys für das Replikations-Plug-in.

  • Erstellen Sie dynamische Gruppen für das Replikations-Plug-in. Sie können der dynamischen Gruppe beispielsweise den Namen ReplicationPluginDynamicGroup geben:
    ALL {resource.type = 'ocbagent'}

    Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

  • Erstellen Sie die folgenden IAM-Policys in spezifischen Compartments oder in Ihrem Mandanten, damit das Replikations-Plug-in Snapshots in OCI Object Storage posten und die Replikations-APIs des Migrationsservice aufrufen kann:
    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>

Richtlinien für Hydrierungsmittel

Dynamische Gruppen und IAM-Policys für den Hydrierungs-Agent.

  • Erstellen Sie dynamische Gruppen für den Hydrierungs-Agent. Sie können die dynamische Gruppe beispielsweise als HydrationAgentDynamicGroup benennen und compartmentOCID durch die OCID Ihres Migrations-Compartments ersetzen:
    ALL {instance.compartment.id = '<migration_compartment_ocid>'}

    Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

  • Erstellen Sie die folgenden IAM-Policys in spezifischen Compartments oder in Ihrem Mandanten, um dem Hydration Agent Berechtigungen zum Abrufen von Snapshots aus OCI Object Storage und zum Aufrufen der Hydrierungs-APIs des Migrationsservice zu erteilen:
    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>
Hinweis

Die ocm_service_tenancy_ocid_for_realm für die Realm OC1 hat den folgenden Wert: ocid1.tenancy.oc1..aaaaaaaartv6j5muce2s4djz7rvfn2vwceq3cnue33d72isntnlfmi7huv7q.

Wenn sich Ihr Mandant in einer anderen Realm als OC1 befindet, wenden Sie sich an Oracle Support, um die richtige Servicemandanten-OCID zu erhalten.