Partager via


Rôles personnalisés pour les migrations de SQL Server vers Azure SQL Database dans Azure Data Studio

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 Azure Database Migration Service avec Azure SQL Database 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": "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": []
            }
        ]
    }
}

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.

Autorisations nécessaires pour migrer vers Azure SQL Database

Action d’autorisation Description
Microsoft.Sql/servers/read Retourne la liste des ressources de base de données SQL ou obtient les propriétés de la base de données SQL spécifiée.
Microsoft.Sql/servers/write Crée une base de données SQL avec les paramètres spécifiés, ou met à jour les propriétés ou étiquettes de la base de données SQL spécifiée.
Microsoft.Sql/servers/databases/read Obtient une base de données SQL existante.
Microsoft.Sql/servers/databases/write Crée une base de données ou supprime une base de données existante.
Microsoft.Sql/servers/databases/delete Supprime une base de données SQL existante.
Microsoft.DataMigration/locations/operationResults/read Obtient les résultats 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 une 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/sqlMigrationServices/write Crée un service ou change 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 du runtime d’intégration.
Microsoft.DataMigration/sqlMigrationServices/listMonitoringData/action Liste les données de monitoring de 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.

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 :

  1. Dans le portail Azure, accédez à la ressource.

  2. 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.

  3. 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.