【发布时间】:2011-01-20 03:25:19
【问题描述】:
我们工作在.Net 3.5,代码中有SqlDependency,需要.Net用户有CREATE权限等权限。
这里的 DBA 想要避免给 .Net 用户如此巨大的权限。
有没有办法通过手动执行 SqlDependency 的操作来绕过 SqlDependency?运行具有比 .net 更多权限的后台进程并创建必要的程序等?
谢谢!
为了以后的参考,我只想说我们通过一个非常简单的解决方案解决了权限问题:SqlDependency 使用不同的连接字符串与具有与常规 .net 连接字符串不同权限的用户。
【问题讨论】:
-
您可以很容易地通过 IPC 通道进行远程处理。
-
为什么用户需要 CREATE 权限?我以为他们只需要
SqlClientPermission.Unrestricted和 SUBSCRIBE QUERY NOTIFICATIONS 数据库权限。 (根据msdn.microsoft.com/en-us/library/ms172133.aspx)您是否建议允许用户在任意服务器上启用查询通知? (因为设置代码确实需要一些 alter 和 create 语句。)
标签: c# sql-server .net-3.5