«L'accès est refusé» lors de la connexion de SSMS à Integration Services

17

Je reçois l'erreur suivante lors de la tentative de connexion de SSMS à Integration Services à l'aide du nom de réseau d'un cluster SQL Server particulier:

La connexion au service Integration Services sur l'ordinateur 'FooDB' a échoué avec l'erreur suivante: "L'accès est refusé."

Cette erreur se produit lorsque l'ordinateur n'a pas été configuré pour autoriser les connexions à distance via DCOM ou lorsque l'utilisateur est autorisé à accéder au service SQL Server Integration Services via DCOM.

Il s'agit d'un problème de routine avec une solution bien documentée. Par exemple, voyez les solutions ici et ici .

Cependant, j'ai essayé toutes les solutions que je connais et le problème persiste.

Plus en détail, j'ai fait ce qui suit:

  • Vérifié que les utilisateurs se connectant ont les autorisations DCOM répertoriées dans les articles liés ci-dessus sur MsDtsServer100:

    1. Autorisations de lancement et d'activation: Autoriser le lancement local, autoriser le lancement à distance, l'activation locale, l'activation à distance

    2. Autorisations d'accès: Autoriser l'accès local, autoriser l'accès à distance

    3. Autorisation de configuration: autoriser la lecture

  • Confirmé avec un renifleur de paquets que tout le trafic lié à la connexion passe avec succès par le pare-feu. Le dernier paquet affiché avant que la connexion TCP ne soit interrompue est une réponse du serveur contenant le code d'état Windows pour «accès refusé» à l'intérieur d'un en-tête MSRPC.

  • Test de l'ajout des utilisateurs au groupe «Utilisateurs COM distribués» et / ou au groupe des administrateurs locaux, puis redémarrage des serveurs. Cela a permis aux utilisateurs de se connecter à SSIS à partir de SSMS en utilisant les noms de nœuds locaux (FooDBN1, FooDBN2), mais ils obtiennent toujours une erreur `` accès refusé '' lors de la connexion au nom de réseau du cluster (FooDB), qui est ce à quoi ils sont habitués à utiliser, et ce qui fonctionne sur nos autres clusters.

De plus, je n'ai pas trouvé nécessaire de modifier l'appartenance à ces groupes sur d'autres clusters.

Sur les autres clusters que j'ai vérifiés, je peux connecter SSMS à SSIS en utilisant le nom du cluster sans aucune configuration non par défaut.

Je me rends compte que cela pourrait être plus approprié pour ServerFault et je suis d'accord pour que la question soit migrée si nécessaire, mais c'est aussi un problème SQL Server et je pense que les utilisateurs ici pourraient être plus susceptibles de l'avoir traité auparavant.

Détails de la plateforme:

  • Windows Server 2008 R2 SP1
  • SQL Server 2008 R2 SP2
  • Cluster actif-passif à 2 nœuds avec une seule instance SQL Server

Quelqu'un pourrait-il suggérer ce que je devrais regarder maintenant?

Mise à jour : cela a mystérieusement commencé à fonctionner aujourd'hui, mais uniquement pour les membres du groupe des administrateurs locaux. Pour autant que je sache, rien n'a changé.

James L
la source
1
Si vous utilisez le groupe Administrateurs, vous risquez d'être mordu par le masquage de privilèges UAC. Essayez de créer un nouveau groupe ou d'accorder des autorisations utilisateur individuelles directement sur l'application SSIS DCOM.
db2
Si vous avez un cluster, les utilisateurs doivent se connecter à l'alias du cluster, pas aux machines individuelles. Est-ce le cas?
Stoleg
Oui, ils doivent utiliser le nom du cluster, pas le nom du nœud individuel. Cependant, pour une raison quelconque, l'erreur se produit uniquement lors de l'utilisation du nom de cluster.
James L
Nous n'avons pas UAC activé sur les clients ou le serveur, mais je vais essayer d'accorder des autorisations DCOM à des utilisateurs individuels au lieu de groupes et voir si cela fait une différence. Actuellement, le problème n'a aucun sens pour moi.
James L
OK, maintenant cela a commencé de manière inexplicable à travailler pour tous ceux qui devraient avoir accès en fonction des autorisations que j'avais accordées il y a des semaines. Je ne sais pas pourquoi cela n'a commencé à fonctionner que ces derniers jours. Le problème semble donc être résolu, mais je ne sais pas pourquoi il a commencé ou pourquoi il s'est arrêté quand il l'a fait. Je suppose que cela est lié à des changements de stratégie de groupe non annoncés.
James L

Réponses:

9

Long shot peut-être, mais vaut la peine de vérifier le fichier

\ Program Files \ Microsoft SQL Server \ 100 \ DTS \ Binn \ MsDtsSrvr.ini

ou l'équivalent sur votre configuration. Vous devrez peut-être le modifier manuellement avec le nom de l'instance. Sinon, les connexions SSIS peuvent rechercher une msdb d'une instance SQL par défaut qui n'existe pas.

John Alan
la source
1
Merci, mais je l'ai déjà réglé. Surévalué car cela vaut la peine d'être mentionné.
James L
0

Le problème a quelque chose à voir avec les autorisations sur le serveur sous-jacent et non SSIS ou MSDB. Nous avons eu le même problème. L'ajout temporaire du compte AD de l'utilisateur au groupe d'administrateurs local a résolu ce problème pour nous. L'ajout de leur compte AD à PowerUsers ou Users ne l'a pas fait; cependant, je suis certain que nous aurions pu trouver ce qui manquait dans la politique de sécurité locale pour y arriver.

PseudoToad
la source
L'ajout au compte local a également fonctionné pour moi, pouvez-vous suggérer quelle pourrait être la raison probable. Comme cela ne pouvait pas être la meilleure pratique
Saurabh Sinha