2010-05-20 3 views
1

Y at-il un moyen de faire qu'une certaine session exécute toutes les commandes en tant qu'utilisateur? Je ne peux pas utiliser la clause execute as car elle ne doit pas être codée en dur.SQL-Server: Usurpation d'identité

je besoin de quelque chose le long des lignes de ce pseudo-code:

SESSION sessionid SET ALTER EXECUTING_USER = someuser

Répondre

1

EXECUTE AS peut accepter les variables (en 2008 au moins) de sorte que vous ne devez pas coder en dur le nom pour l'utiliser.

DECLARE @username sysname = 'toto'

EXECUTE AS USER = @username

SELECT SESSION_USER

+0

Mais comment puis-je régler pour toute la session? Chaque appel de la session doit être exécuté en tant qu'utilisateur spécifié! – Falcon