none
用户权限 RRS feed

  • 问题

  • 怎样给账户授予对某个数据库只有db_datareader,db_datawriter,和执行EXEC sp_executesql @sql  的权限,为什么我设置了前两个权限了一般用用是可以的,但是执行某个存储过程的时候就出现

    “拒绝了对对象 'proc_分页' (数据库 '****',架构 'dbo')的 EXECUTE 权限。”

    2011年6月20日 5:45

答案

  • Have to grant permission in each db, and can grant exec permission at schema level. That way, user can execute all sps and functions in specific schema.
    2011年6月20日 13:44
  • 那如果我的几个数据库里已经建立好很多存储过程了,不是每个都要设权限,不能在用户角色那全部设好吗。


    2005后,可以对架构赋予权限,不过这样就会导致rmiao说的情况,这个架构的存储过程和函数等这个用户都可以执行,如果这个是你需要的,你可以不使用grant逐个赋予权限,而是针对架构赋予权限。

     


    family as water
    2011年6月21日 1:11

全部回复

  • 在建立存储过程的时候显示的使用grant 赋予这个用户执行的权限即可。

     


    family as water
    2011年6月20日 7:10
  • 在建立存储过程的时候显示的使用grant 赋予这个用户执行的权限即可。

     


    family as water

    或者 使用这个用户的身份建立这个存储过程。
    family as water
    2011年6月20日 7:11
  • 那如果我的几个数据库里已经建立好很多存储过程了,不是每个都要设权限,不能在用户角色那全部设好吗。
    2011年6月20日 7:13
  • Have to grant permission in each db, and can grant exec permission at schema level. That way, user can execute all sps and functions in specific schema.
    2011年6月20日 13:44
  • 那如果我的几个数据库里已经建立好很多存储过程了,不是每个都要设权限,不能在用户角色那全部设好吗。


    2005后,可以对架构赋予权限,不过这样就会导致rmiao说的情况,这个架构的存储过程和函数等这个用户都可以执行,如果这个是你需要的,你可以不使用grant逐个赋予权限,而是针对架构赋予权限。

     


    family as water
    2011年6月21日 1:11