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
Navigieren Sie im Azure-Portal zu der Ressource.
Wählen Sie im linken Menü Zugriffssteuerung (IAM) aus, und scrollen Sie dann, um die von Ihnen erstellten benutzerdefinierten Rollen zu finden.
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.