Freigeben über


Benutzerdefinierte Rollen für Migrationen von SQL Server zu Azure SQL-Datenbank in Azure Data Studio

In diesem Artikel wird erläutert, wie Sie eine benutzerdefinierte Rolle in Azure für SQL Server-Datenbankmigrationen einrichten. Die benutzerdefinierte Rolle verfügt nur über die erforderlichen Berechtigungen zum Erstellen und Ausführen einer Instanz des Azure Database Migration Service mit Azure SQL-Datenbank als Ziel.

Verwenden Sie den Abschnitt AssignableScopes der JSON-Zeichenfolge der Rollendefinition, um festzulegen, wo die Berechtigungen in der Benutzeroberfläche Rollenzuweisung hinzufügen im Azure-Portal angezeigt werden. Um zu vermeiden, dass die Benutzeroberfläche mit zusätzlichen Rollen überladen wird, sollten Sie die Rolle auf der Ebene der Ressourcengruppe oder sogar auf der Ebene der Ressource definieren. Die Ressource, für die die benutzerdefinierte Rolle gilt, führt nicht die tatsächliche Rollenzuweisung aus.

{
    "properties": {
        "roleName": "DmsCustomRoleDemoForSqlDB",
        "description": "",
        "assignableScopes": [
            "/subscriptions/<SQLDatabaseSubscription>/resourceGroups/<SQLDatabaseResourceGroup>",
            "/subscriptions/<DatabaseMigrationServiceSubscription>/resourceGroups/<DatabaseMigrationServiceResourceGroup>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Sql/servers/read",
                    "Microsoft.Sql/servers/write",
                    "Microsoft.Sql/servers/databases/read",
                    "Microsoft.Sql/servers/databases/write",
                    "Microsoft.Sql/servers/databases/delete",
                    "Microsoft.DataMigration/locations/operationResults/read",
                    "Microsoft.DataMigration/locations/operationStatuses/read",
                    "Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read",
                    "Microsoft.DataMigration/databaseMigrations/write",
                    "Microsoft.DataMigration/databaseMigrations/read",
                    "Microsoft.DataMigration/databaseMigrations/delete",
                    "Microsoft.DataMigration/databaseMigrations/cancel/action",
                    "Microsoft.DataMigration/sqlMigrationServices/write",
                    "Microsoft.DataMigration/sqlMigrationServices/delete",
                    "Microsoft.DataMigration/sqlMigrationServices/read",
                    "Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action",
                    "Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action",
                    "Microsoft.DataMigration/sqlMigrationServices/deleteNode/action",
                    "Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action",
                    "Microsoft.DataMigration/sqlMigrationServices/listMigrations/read",
                    "Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

Sie können entweder das Azure-Portal, Azure PowerShell, Azure CLI oder die Azure REST-API verwenden, um die Rollen zu erstellen.

Weitere Informationen finden Sie unter Erstellen oder Aktualisieren benutzerdefinierter Rollen über das Azure-Portal und Benutzerdefinierte Azure-Rollen.

Erforderliche Berechtigungen für die Migration zu Azure SQL-Datenbank

Berechtigungsaktion Beschreibung
Microsoft.Sql/servers/read Zurückgeben der Liste der SQL-Datenbankressourcen oder Abrufen der Eigenschaften für die angegebene SQL-Datenbank.
Microsoft.Sql/servers/write Erstellen einer SQL-Datenbank mit den angegebenen Parametern oder Aktualisieren der Eigenschaften oder Tags für die angegebene SQL-Datenbank.
Microsoft.Sql/servers/databases/read Abrufen einer vorhandenen SQL-Datenbank.
Microsoft.Sql/servers/databases/write Erstellen einer neuen Datenbank oder Aktualisieren einer vorhandenen Datenbank.
Microsoft.Sql/servers/databases/delete Löschen einer vorhandenen SQL-Datenbank.
Microsoft.DataMigration/locations/operationResults/read Abrufen der Ergebnisse eines zeitintensiven Vorgangs in Zusammenhang mit einer Antwort „202: Akzeptiert“.
Microsoft.DataMigration/locations/operationStatuses/read Ruft den Status eines Vorgangs mit langer Ausführungsdauer in Zusammenhang mit einer Antwort „202: Akzeptiert“ ab.
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read Abrufen von Dienstvorgangsergebnissen.
Microsoft.DataMigration/databaseMigrations/write Erstellen oder Aktualisieren einer Datenbankmigrationsressource.
Microsoft.DataMigration/databaseMigrations/read Abrufen einer Datenbankmigrationsressource.
Microsoft.DataMigration/databaseMigrations/delete Löschen einer Datenbankmigrationsressource.
Microsoft.DataMigration/databaseMigrations/cancel/action Beendet die laufende Migration für die Datenbank.
Microsoft.DataMigration/sqlMigrationServices/write Erstellen eines neuen Diensts oder Ändern der Eigenschaften eines vorhandenen Diensts.
Microsoft.DataMigration/sqlMigrationServices/delete Löschen eines vorhandenen Diensts.
Microsoft.DataMigration/sqlMigrationServices/read Abrufen der Details des Migrationsdiensts.
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action Abrufen der Liste der Authentifizierungsschlüssel.
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action Erneute Generierung von Authentifizierungsschlüsseln.
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action Aufheben der Registrierung des Integration Runtime-Knotens.
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action Auflisten der Überwachungsdaten für alle Migrationen.
Microsoft.DataMigration/sqlMigrationServices/listMigrations/read Listet die Migrationen für den Benutzer auf.
Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read Abrufen der Überwachungsdaten.

Sie können ein Beispielskript abrufen, um eine Anmeldung mit den erforderlichen Berechtigungen für VMware, Hyper-V oder physische Server mittels Windows-Authentifizierung- oder SQL Server-Authentifizierung zu erstellen.

Rollenzuweisung

So weisen Sie einem Benutzer oder einer App-ID eine Rolle zu

  1. Navigieren Sie im Azure-Portal zu der Ressource.

  2. Wählen Sie im linken Menü Zugriffssteuerung (IAM) aus, und scrollen Sie dann, um die von Ihnen erstellten benutzerdefinierten Rollen zu finden.

  3. Wählen Sie die zuzuweisenden Rollen und dann den Benutzer oder die App-ID aus, und speichern Sie dann die Änderungen.

    Der Benutzer oder die App-ID wird nun auf der Registerkarte Rollenzuweisungen angezeigt.