如何将所有现有Sybase用户的权限复制到新帐户?例如,某些表只有select权限,许多proc具有执行权限等。原始帐户对数十个数据库对象中的几十个表和几个存储过程的访问权限有限。
答案 0 :(得分:1)
如果要多次执行此操作:创建角色,为角色授予权限,并将用户分配给该角色。
如果审核谁在数据库中执行的操作并不重要:将新用户别名为数据库中的旧用户
sp_dropuser 'NEW_USERNAME'
go
sp_addalias 'NEW_USERNAME', 'EXISTING_USERNAME'
go
sp_helprotect EXISTING_USERNAME将打印出该用户的权限列表。您可以捕获该输出并使用它将这些权限添加到新帐户。
以下步骤需要编辑系统表,请务必小心,以免破坏您的系统。确保您有良好的备份。 * 强> 的
用户权限存储在sysprotects表中。从理论上讲,你应该能够:
免责声明请在生产服务器上尝试之前对其进行测试,因为我没有对其进行测试以验证其是否有效。