|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2006 Messages : 5 ![]() |
Bonjour,
J'essaie de paramétrer les droits pour qu'un utilisateur puisse exécuter une vue qui fait un select dans une autre base de données située sur le même serveur. J'ai un message d'erreur "L'entité de sécurité de serveur "USER" ne peut accéder à la base de données "NomBase" dans le contexte de sécurité actuel. Sur mon serveur SQL Server 2005 + SP4, j'ai une base de données "BaseData". J'ai créé une base nommée "BaseView". Dans cette base, il n'y a que des vues qui pointent vers "BaseData". Ces vues ne servent qu'à fournir des extraction de données dans EXCEL. J'ai besoin de fournir le fichier excel bien préparé aux utilisateurs pour qu'ils puissent "Actualiser les données". Je voudrais juste créer un user SQL "SQLecteur" qui a les droits d'exécuter les vues, mais qui n'a aucun droits sur la "baseData"... Merci d'avance pour votre aide. Fred |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 12 170 ![]() |
Vous ne pouvez pas dépersonnaliser une vue. Vous devez donc créer un utilisateur SQL dans la base de données distante lié au même compte de connexion et donnez lui le rôle db_datareader ou des privilèges plus fins.
A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() ![]() ![]() David BARBARINInscription : août 2005 Messages : 4 166 ![]() |
Hello,
Autre possibilité : utiliser une procédure stockée qui utilisera ta vue et forcer l'emprunt d'identité dans cette procédure. Après tu as le choix entre 2 possibilités : - Passer par les priopriétaires de bases de données et l'option de bases de données trustworthy pour ta base de données source - Utiliser les certificats pour signer ta procédure et permettre la sélection des données dans la base de données cible au travers de la procédure dans ta base de données source. ++ |
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : février 2006 Messages : 5 ![]() |
Merci, je vais tester les 2 solutions ;-)
Fred |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com