Symptômes
Considérez le scénario suivant :
-
Vous exécutez une instance de catalogue de Services d’intégration et de catalogue de la SSISDB dans Microsoft SQL Server 2012 ou SQL Server 2014.
-
Vous accordez des autorisations pour les membres du groupe Windows afin qu’ils aient accès à un catalogue environnement, projet ou dossier sécurisable élément SSIS.
Remarque Vous pouvez accorder les autorisations d’une des manières suivantes :-
Vous utilisez Management Studio. Pour ce faire, cliquez droit sur l’objet dans le catalogue de Services d’intégration, sélectionnez Propriétés, puis, dans la page autorisations , accédez au groupe, ajoutez le groupe et puis sélectionnez les autorisations pour ce groupe.
-
Vous appelez la procédure stockée suivante :
[SSISDB].[catalog].[grant_permission]
-
-
Un utilisateur Windows qui est membre du groupe Windows tente de visualiser et d’exécuter les packages dans la base de données SSISDB dans le catalogue de Services d’intégration à l’aide de Management Studio ou de la procédure stockée.
Dans ce scénario, l’utilisateur ne peut pas afficher les packages auxquels des autorisations ont été accordées et ne peut pas valider ou exécuter les packages d’installation.
Cause
Ce problème se produit en raison d’un problème dans les vues internes SSISDB. Ceci empêche l’utilisateur d’avoir les autorisations effectives attendues lorsque les autorisations sont accordées à l’aide de l’appartenance au groupe de Windows.
Résolution
Le problème a été tout d’abord résolu dans la mise à jour cumulative suivante de SQL Server.
Mise à jour cumulative 1 pour SQL Server 2014/en-us/help/2931693
Mise à jour cumulative 7 pour SQL Server 2012 SP1/en-us/help/2894115
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et de sécurité inclus dans la mise à jour cumulative précédente. Découvrez les dernières mises à jour cumulatives pour SQL Server :
Solution de contournement
Pour contourner ce problème, n’utilisez pas le groupe Windows de différents utilisateurs à accéder à SSIS sécurisable. Au lieu de cela, utilisez un rôle de base de données défini par l’utilisateur dans SQL Server pour encapsuler la liste nécessaire des utilisateurs de Windows et ensuite affecter les autorisations à ce rôle de base de données.
Pour ce faire, procédez comme suit :
-
Créer les logins Windows nécessaires à l’instance de SQL Server, puis donner à l’utilisateur d’accéder à la base de données SSISDB. Par exemple, vous pouvez utiliser Management Studio en accédant à la sécurité, cliquez sur connexions, puis cliquez sur Nouvelle connexion. Ou bien, vous pouvez utiliser le script suivant pour chaque ouverture de session Windows :
UTILISATION principale
GO
De créer une connexion de domaine\nom d’utilisateur à partir de WINDOWS avec DEFAULT_DATABASE =maître
GO
UTILISER SSISDB
GO
CRÉER un utilisateur domaine\nom d’utilisateur d’ouverture de session de domaine\nom d’utilisateur
GO -
Dans la base de données SSISDB, créez un rôle de base de données défini par l’utilisateur, par exemple ssis_users. Par exemple, vous pouvez utiliser Management Studio en accédant aux bases de données, en cliquant sur les SSISDB, sécurité, cliquant sur rôles, cliquez sur Rôles de base de données, puis en cliquant sur Nouveau rôle de base de données. Ou bien, vous pouvez utiliser le script suivant :
UTILISER SSISDB
GO
CRÉER un rôle ssis_users
GO -
Ajoutez les utilisateurs souhaités dans SSISDB dans le rôle ssis_users. Par exemple, vous pouvez utiliser Management Studio en accédant aux bases de données, en cliquant sur les SSISDB, sécurité, cliquant sur rôles, cliquez sur Rôles de base de données, en cliquant sur les Membres du rôle, puis en cliquant sur Ajouter. Ou bien, vous pouvez utiliser le script suivant :
UTILISER SSISDB
GO
ALTER ROLE ssis_users d’ajouter un membre domaine\nom d’utilisateur
GO -
Cliquer sur l’objet sécurisable dans le catalogue de Services d’intégration, cliquez sur Propriétés, cliquez sur Parcourir dans la page autorisations pour ajouter les autorisations du rôle de base de données et sélectionnez Autoriser ou Refuser sur les autorisations explicites souhaitées comme suit :
Remarque Ces autorisations n’est peut-être pas suffisantes pour exécuter un package SSIS. Chaque package SSIS est une conception personnalisée et peut avoir des exigences spécifiques supplémentaires pour accéder à certains serveurs et bases de données ou des partages pour valider ou exécuter le package SSIS avec succès.
État
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».
Références
Pour plus d’informations, consultez les rubriques suivantes sur le site Web de Microsoft Developer Network (MSDN) :
Catalogue SSIS
Boîte de dialogue Propriétés de dossier
Boîte de dialogue de propriétés de projet
Boîte de dialogue Propriétés environnement
Consultez la terminologie que Microsoft utilise pour décrire les mises à jour logicielles.