SQL 登录必须执行以下哪些服务器角色和/或数据库角色:
- 读取数据(包括临时表)
- 写入数据(包括临时表)
- 在他们被授予访问权限的数据库中执行任何 SP
我们正在从 SQL 2000 迁移到 2008,我正在检查所有登录,并注意到它们都设置为 sysadmin 和 db_owner,这并不好。我们使用这些登录名的应用程序只会执行我上面列出的操作,这就是我想知道的原因。我知道我可以使用 db_datareader 和 db_datawriter 的数据库角色设置每个登录名,但这不包括执行 SP。我们在 2 或我们的数据库中有接近 300 个 SP,并且必须通过每个 SP 并在扩展属性中设置登录权限会太长太乏味。
任何帮助是极大的赞赏!