Referenz zu Rollen und Berechtigungen

Dieses Dokument enthält eine Referenz für die verschiedenen Rollen und Berechtigungen, die für Migrate to Virtual Machines erforderlich sind. In Google Cloud sind Rollen und Berechtigungen in der Regel mit Dienstkonten oder Nutzerkonten verknüpft.

In den folgenden Abschnitten werden diese Rollen und Berechtigungen beschrieben. Sie sind nach den Hauptkomponenten von Migrate to Virtual Machines sortiert:

Darüber hinaus enthält Cloud Identity and Access Management (IAM) zwei vordefinierte Rollen, mit denen Sie den Zugriff für Nutzer in Ihrer Organisation steuern können.

Rolle Titel Beschreibung
roles/vmmigration.admin VM-Migrationsadministrator Nutzer können neue Quellen für Migrate to Virtual Machines erstellen und alle anderen Migrationsvorgänge ausführen.
roles/vmmigration.viewer VM-Migrationsbetrachter Nutzer können Informationen zu Migrate to Virtual Machines in der Google Cloud Console abrufen. Für Nutzer gedacht, die Migrationen überwachen, aber nicht ausführen.

Wenn Sie z. B. einem Nutzer in Ihrer Organisation die Möglichkeit geben möchten, Informationen zu einer Migration aufzurufen, er diese aber nicht ausführen soll, weisen Sie ihm die Rolle roles/vmmigration.viewer zu.

Google Cloud Console-Nutzerkonten

Das Zielprojekt von Migrate to Virtual Machines definiert das Zielprojekt für eine Compute Engine-Instanz, auf der die migrierte VM ausgeführt wird. Das Hostprojekt von Migrate to Virtual Machines kann als Zielprojekt verwendet werden. Wenn Sie VMs für zusätzliche Projekte migrieren möchten, müssen Sie diese als Zielprojekte zu Migrate to Virtual Machines hinzufügen.

Damit ein Nutzer ein Zielprojekt hinzufügen und die Details der Compute Engine-Instanz im Zielprojekt konfigurieren kann, benötigt dieser Nutzer die erforderlichen Rollen und Berechtigungen der Identitäts- und Zugriffsverwaltung (IAM).

Da Sie diese Aktionen in der Google Cloud Console ausführen, benötigen Sie für die Anmeldung in der Google Cloud Console das Nutzerkonto, für das diese Berechtigungen erforderlich sind:

  • Zum Hinzufügen eines Zielprojekts zu Migrate to Virtual Machines benötigt das Nutzerkonto, mit dem Sie sich in der Google Cloud Console anmelden, die Berechtigungen, die im Abschnitt Berechtigungen zum Hinzufügen eines Zielprojekts beschrieben sind.

  • Zum Konfigurieren der Zieldetails der Compute Engine-Instanz, die im Zielprojekt ausgeführt wird, benötigt das Nutzerkonto, mit dem Sie sich in der Google Cloud Console anmelden, Zugriffsberechtigungen auf Daten im Zielprojekt, z. B. Netzwerke, Instanztypen und mehr. Siehe Berechtigungen zum Konfigurieren einer Zielinstanz.

Je nachdem, wie Sie IAM für Ihre Umgebung konfigurieren, können Sie einen einzelnen Nutzer für beide Aktionen oder zwei separate Nutzer konfigurieren.

Berechtigungen zum Hinzufügen eines Zielprojekts

Um ein Zielprojekt hinzuzufügen, benötigt das Nutzerkonto, mit dem Sie sich in der Google Cloud Console anmelden, Folgendes:

  • Die Rolle vmmigration.admin im Hostprojekt
  • Die Rolle resourcemanager.projectIamAdmin im Zielprojekt

Eine Anleitung zum Festlegen dieser Berechtigungen finden Sie unter Berechtigungen für das Standarddienstkonto des Hostprojekts konfigurieren.

Berechtigungen zum Konfigurieren von Zieldetails für eine Compute Engine-Instanz

Zum Konfigurieren der Zieldetails der Compute Engine-Instanz im Zielprojekt benötigt das Nutzerkonto, mit dem Sie sich in der Google Cloud Console anmelden, Folgendes:

  • Die Rolle roles/compute.viewer im Zielprojekt

Eine Anleitung zum Festlegen dieser Berechtigungen finden Sie unter Berechtigungen für das Standarddienstkonto des Hostprojekts konfigurieren.

Standarddienstkonto von Migrate to Virtual Machines

Migrate to Virtual Machines erstellt ein Standarddienstkonto im Hostprojekt, wenn Sie die Migrate to Virtual Machines API aktivieren, und weist ihr die Rolle vmmigration.serviceAgent zu. Migrate to Virtual Machines verwendet dieses Dienstkonto, um die Compute Engine-Instanz im Zielprojekt als Teil des Testklons und der Umstellung zu erstellen.

Je nach Umgebung müssen Sie möglicherweise die Berechtigungen für das Standarddienstkonto bearbeiten.

Berechtigungen bei Verwendung einer freigegebenen VPC im Zielprojekt

Um eine Compute Engine-Instanz in einem Zielprojekt bereitzustellen, das auf eine freigegebene VPC zugreift, müssen Sie die Rolle compute.networkUser dem Standarddienstkonto von Migrate to Virtual Machines hinzufügen, damit es auf Subnetzwerke im freigegebenen VPC-Hostprojekt zugreifen kann.

Anleitung zum Festlegen dieser Berechtigungen finden Sie unter Berechtigungen für eine freigegebene VPC konfigurieren.

Zielprojektdienstkonto

Wenn Sie die migrierte VM in einer Compute Engine-Zielinstanz bereitstellen, wird der Instanz standardmäßig kein Dienstkonto zugewiesen.

Wenn die Compute Engine-Instanz Zugriff auf Google Cloud-Dienste und APIs benötigt, erstellen Sie ein Dienstkonto im Zielprojekt mit den erforderlichen Berechtigungen für den Zugriff auf diese Dienste und APIs. Hängen Sie dann das Dienstkonto als Teil der Konfiguration der Zieldetails an die Compute Engine-Instanz an.

Zum Anhängen des Zieldienstkontos an die Compute Engine-Instanz benötigt das Migrate to Virtual Machines-Standarddienstkonto jedoch die erforderlichen Berechtigungen, wie unter Berechtigungen für das Zielprojektdienstkonto konfigurieren beschrieben.

Berechtigungen zum Konfigurieren von AWS als Quelle

In diesem Abschnitt werden die Felder der JSON-Vorlage für Berechtigungen beschrieben. Weitere Informationen zum Implementieren von Migrationsberechtigungen finden Sie im Abschnitt AWS-IAM-Richtlinie erstellen.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeVolumes",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeSnapshots",
                "ec2:CreateTags",
                "ec2:CreateSnapshots",
                "ec2:StopInstances"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ebs:ListSnapshotBlocks",
                "ebs:ListChangedBlocks",
                "ebs:GetSnapshotBlock",
                "ec2:DeleteSnapshot",
                "ec2:DeleteTags"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/m2vm-resource": "snapshot"
                }
            }
        }
    ]
}

Um das Inventar der zu migrierenden Kandidateninstanzen anzuzeigen, erteilen Sie Migrate to Virtual Machines die Berechtigungen für ec2:DescribeInstances, ec2:DescribeVolumes und ec2:DescribeInstanceTypes.

Für Migrate to Virtual Machines sind die folgenden Berechtigungen erforderlich, um EC2-Volumes von AWS zu Google Cloud zu migrieren:

  1. Um einen Snapshot der Volumes zu erstellen, erteilen Sie Berechtigungen für ec2:DescribeSnapshots, ec2:CreateSnapshots und ec2:CreateTags.
  2. Zum Kopieren der Daten in Google Cloud gewähren Sie Berechtigungen für ebs:ListSnapshotBlocks, ebs:ListChangedBlocks und ebs:GetSnapshotBlock.
  3. Zum Löschen alter Snapshots erteilen Sie Berechtigungen für ec2:DeleteSnapshot und ec2:DeleteTags.

Gewähren Sie zur Migrate to Virtual Machines für Umstellungen ec2:StopInstances-Berechtigungen.

Berechtigungen zum Konfigurieren von Azure als Quelle

In diesem Abschnitt werden die Felder der JSON-Vorlage für Berechtigungen beschrieben. Weitere Informationen zum Implementieren von Migrationsberechtigungen finden Sie im Abschnitt Benutzerdefinierte Rolle erstellen.

Die folgenden Berechtigungen sind erforderlich, um eine mit der Quelle verbundene Ressourcengruppe zu erstellen, ihre Existenz zu prüfen, die darin enthaltenen Ressourcen aufzulisten und sie zu löschen, wenn die Quelle gelöscht wird:

"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/delete"

Die folgende Berechtigung ist erforderlich, um die Inventarliste und die Details der zu migrierenden VMs abzurufen:

"Microsoft.Compute/virtualMachines/read"

Die folgende Berechtigung ist erforderlich, um die Zuweisung einer VM bei der Umstellung auf eine Google Cloud-VM aufzuheben:

"Microsoft.Compute/virtualMachines/deallocate/action"

Die folgenden Berechtigungen sind erforderlich, um Snapshots/Wiederherstellungspunkte der zu migrierenden VM zu erstellen, aufzulisten und zu löschen:

"Microsoft.Compute/restorePointCollections/read",
"Microsoft.Compute/restorePointCollections/write",
"Microsoft.Compute/restorePointCollections/delete",
"Microsoft.Compute/restorePointCollections/restorePoints/read",
"Microsoft.Compute/restorePointCollections/restorePoints/write",
"Microsoft.Compute/restorePointCollections/restorePoints/delete",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/snapshots/read"

Die folgenden Berechtigungen sind zum Lesen von Snapshot-/Wiederherstellungspunktdaten erforderlich:

"Microsoft.Compute/restorePointCollections/restorePoints/diskRestorePoints/read",
"Microsoft.Compute/restorePointCollections/restorePoints/diskRestorePoints/beginGetAccess/action",
"Microsoft.Compute/restorePointCollections/restorePoints/diskRestorePoints/endGetAccess/action",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/endGetAccess/action"