SQL 2005: Adhoc Access pour les non-sysadmin (Msg 7415)

Il y a quelques temps je vous ai expliqué comment activer l’OpenRowset mais cette manipulation ne marche que pour les membres de sysadmin!

Après celle ci, un non-sysadmin verrait s’afficher l’erreur suivante:

Ad hoc access to OLE DB provider ‘MSOLAP’ has been denied. You must access this provider through a linked server.

Ce qui pourrait vous inciter à aller voir un peu du coté des providers que vous utilisez (Server Objects / Linked Servers / Providers) et de vérifier les propriétés du susnommé MSOLAP.
Tiens! Une de celle ci s’appelle « Disallow Adhoc Access » mais elle est… décochée.
Que se passe-t-il? C’est un petit bug référencé: la valeur DWORD qui stocke cette valeur doit exister avec la valeur 0 dans la base de registre pour que le provider soit activé. Or depuis SSMS lorsque l’option Disallow est décochée, cela… supprime la valeur.
Il faut donc aller dans la base de registre:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\[Instance]\Providers\[Provider]

Et ajouter une valeur DWORD de nom « DisallowAdhocAccess » et ayant pour valeur 0.
C’est tout!
A bientôt!

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s