Je dois configurer certains utilisateurs pour pouvoir créer des procédures stockées avec un accès READ uniquement. Aussi, en production, ils ne peuvent pas avoir SELECT, seulement EXECUTE sur les procs qu'ils ont créés. En développement, ils auraient SELECT pour qu'ils puissent créer leurs procédures.Question sur les schémas et la sécurité
J'ai configuré un schéma appelé Rapports. Le propriétaire de ce schéma est un identifiant - Report_Admin. Cet utilisateur a un accès sélectif aux tables. J'ai alors donné alter et exécute sur le schéma de rapports à mon compte d'auteur de rapport. Dbo possède la table - donc cela fonctionne si dbo possède aussi le schéma Reporting - mais alors une suppression fonctionnera aussi dans la procédure!
Nous utilisons des services de rapport et aimeriez avoir tout le SQL dans la base de données pour la maintenabilité.
Merci!
Je ne sais pas si j'ai bien compris la question, mais il semble que dans la production, l'utilisateur de report_writer n'ait pas de droits de sélection. Ainsi, EXECUTE AS SELF empêcherait les procédures stockées de sélectionner quoi que ce soit. – Andomar
@Andomar: report_writer a l'autorisation SELECT. Dans l'OP est Report_Admin. –