Rôles personnalisés pour les migrations de SQL Server vers des machines virtuelles Azure avec ADS
Cet article explique comment configurer un rôle personnalisé dans Azure pour les migrations de base de données SQL Server. Le rôle personnalisé dispose uniquement des autorisations nécessaires pour créer et exécuter une instance d’Azure Database Migration Service avec une machine virtuelle Azure comme cible.
Utilisez la section AssignableScopes
de la chaîne JSON de définition de rôle pour contrôler l’emplacement des autorisations dans l’interface utilisateur Ajouter une attribution de rôle dans le portail Azure. Pour éviter d’encombrer l’interface utilisateur avec des rôles supplémentaires, vous pouvez définir le rôle au niveau du groupe de ressources ou même de la ressource. La ressource à laquelle le rôle personnalisé s’applique n’effectue pas l’attribution de rôle réelle.
{
"properties": {
"roleName": "DmsCustomRoleDemoForVM",
"description": "",
"assignableScopes": [
"/subscriptions/<storageSubscription>/resourceGroups/<storageAccountRG>",
"/subscriptions/<ManagedInstanceSubscription>/resourceGroups/<virtualMachineRG>",
"/subscriptions/<DMSSubscription>/resourceGroups/<dmsServiceRG>"
],
"permissions": [
{
"actions": [
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/listkeys/action",
"Microsoft.Storage/storageAccounts/blobServices/read",
"Microsoft.Storage/storageAccounts/blobServices/write",
"Microsoft.Storage/storageAccounts/blobServices/containers/read",
"Microsoft.SqlVirtualMachine/sqlVirtualMachines/read",
"Microsoft.SqlVirtualMachine/sqlVirtualMachines/write",
"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/databaseMigrations/cutover/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": []
}
]
}
}
Vous pouvez utiliser le Portail Azure, Azure PowerShell, Azure CLI ou l’API REST Azure pour créer les rôles.
Pour plus d’informations, consultez Créer ou mettre à jour des rôles personnalisés Azure à l’aide du portail Azure et Rôles personnalisés Azure.
Description des autorisations nécessaires pour migrer vers une machine virtuelle
Action d’autorisation | Description |
---|---|
Microsoft.Storage/storageAccounts/read |
Retourne la liste des comptes de stockage ou récupère les propriétés du compte de stockage spécifié. |
Microsoft.Storage/storageAccounts/listkeys/action |
Retourne les clés d’accès au compte de stockage spécifié. |
Microsoft.Storage/storageAccounts/blobServices/read |
Liste les services blob. |
Microsoft.Storage/storageAccounts/blobServices/write |
Retourne le résultat des propriétés du service blob de placement. |
Microsoft.Storage/storageAccounts/blobServices/containers/read |
Retourne la liste des conteneurs. |
Microsoft.Sql/managedInstances/read |
Retourne la liste des instances gérées ou obtient les propriétés de l’instance gérée spécifiée. |
Microsoft.Sql/managedInstances/write |
Crée une instance gérée avec les paramètres spécifiés ou met à jour les propriétés ou balises pour l’instance gérée spécifiée. |
Microsoft.Sql/managedInstances/databases/read |
Obtient une base de données managée existante. |
Microsoft.Sql/managedInstances/databases/write |
Crée une base de données ou met à jour une base de données existante. |
Microsoft.Sql/managedInstances/databases/delete |
Supprime une base de données managée existante. |
Microsoft.DataMigration/locations/operationResults/read |
Obtient l’état d’une opération longue liée à une réponse 202 Accepté. |
Microsoft.DataMigration/locations/operationStatuses/read |
Obtient l’état d’une opération longue liée à une réponse 202 Accepté. |
Microsoft.DataMigration/locations/sqlMigrationServiceOperationResults/read |
Récupère les résultats de l’opération de service. |
Microsoft.DataMigration/databaseMigrations/write |
Crée ou met à jour la ressource de migration de base de données. |
Microsoft.DataMigration/databaseMigrations/read |
Récupère la ressource de migration de base de données. |
Microsoft.DataMigration/databaseMigrations/delete |
Supprime la ressource de migration de base de données. |
Microsoft.DataMigration/databaseMigrations/cancel/action |
Arrête la migration continue pour la base de données. |
Microsoft.DataMigration/databaseMigrations/cutover/action |
Bascule l’opération de migration en ligne pour la base de données. |
Microsoft.DataMigration/sqlMigrationServices/write |
Créer ou modifier les propriétés d’un service existant |
Microsoft.DataMigration/sqlMigrationServices/delete |
Supprime un service existant. |
Microsoft.DataMigration/sqlMigrationServices/read |
Récupère les détails du service de migration. |
Microsoft.DataMigration/sqlMigrationServices/listAuthKeys/action |
Récupère la liste des clés d’authentification. |
Microsoft.DataMigration/sqlMigrationServices/regenerateAuthKeys/action |
Régénère les clés d’authentification. |
Microsoft.DataMigration/sqlMigrationServices/deleteNode/action |
Désinscrit le nœud IR. |
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action |
Liste les données de monitoring pour toutes les migrations. |
Microsoft.DataMigration/sqlMigrationServices/listMigrations/read |
Liste les migrations pour l’utilisateur. |
Microsoft.DataMigration/sqlMigrationServices/MonitoringData/read |
Récupère les données de monitoring. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/read |
Récupère les détails de la machine virtuelle SQL. |
Microsoft.SqlVirtualMachine/sqlVirtualMachines/write |
Crée ou modifie les propriétés d’une machine virtuelle SQL existante. |
Vous pouvez obtenir un exemple de script pour créer une connexion et l’approvisionner avec les autorisations nécessaires, pour VMware, Hyper-V ou serveurs physiques, à l’aide de l’authentification Windows ou celle de SQL Server.
Attribution de rôle
Pour attribuer un rôle à un ID d’utilisateur ou d’application :
Dans le portail Azure, accédez à la ressource.
Dans le menu de gauche, sélectionnez Contrôle d’accès (IAM), puis faites défiler pour rechercher les rôles personnalisés que vous avez créés.
Sélectionnez les rôles à attribuer, sélectionnez l’ID d’utilisateur ou d’application, puis enregistrez les changements.
L’ID d’utilisateur ou d’application s’affiche désormais sous l’onglet Attributions de rôle.