繁体   English   中英

在SQL Server中将权限从一个域传输到另一个域

[英]Transfer permissions from one domain to another in SQL Server

在我们的大多数存储过程的底部,我们有一个类似的授权

GRANT EXECUTE ON [dbo].[uspFOO] TO [DOMAIN\SQLServerUsers]

幸运的是 ,我们的域名正在发生变化,我们现在需要通过并更改权限。 有没有人知道使用数据库元数据执行此操作的简单方法,因此我可以提取[DOMAIN \\ SQLServerUsers]被授予运行权限的所有位置并用[DOMAIN2 \\ SQLServerUsers]替换它?

谢谢。

对于那些要求,这是在SQL Server 2005上。

你在用什么版本的SQL Server?

在2005年及以后,你可以

  • 创建一个新的数据库角色“db_executor”并做

     GRANT EXECUTE TO db_executor 
  • 将该数据库角色授予所有必需用户

这将创建一个“catch all”角色,该角色对数据库中的每个现有和未来(!!)存储过程具有执行权限。 是的,这确实包括未来的存储过程! 确实非常方便(至少只要允许每个用户执行所有存储过程)

这样,您就不必为每个存储过程创建单独的GRANT EXECUTE语句.......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM