add user or add role

解决方案 »

  1.   

    最好不要使用sa登录应用程序。
    增加用户,为他对该数据库授权。
    sa具有极高的权限,能够调用系统存储过程。并且可以通过其他途径获得对服务器的控制权。不过,既然是web应用程序,并且保证不能够动态执行sqlserver命令,也保证你的web程序中没有调用系统存储过程。应该没有什么大的安全问题。
      

  2.   

    help我想知到哪些系统存储过程对服务器有安全隐患?因为是用sa连接数据库,通过SQL注入语句达到调用系统存储过程的目的有没有这样的情况?
      

  3.   


    --管好sql的用户,防止访问他不该访问的数据库(总控制,明细还可以控制他对于某个数据库的具体对象具有的权限)  
     
    --切换到你新增的用户要控制的数据库  
    use  你的库名  
    go  
     
    --新增用户  
    exec  sp_addlogin  'test'            --添加登录  
    exec  sp_grantdbaccess  N'test'            --使其成为当前数据库的合法用户  
    exec  sp_addrolemember  N'db_owner',  N'test'            --授予对自己数据库的所有权限  
     
    --这样创建的用户就只能访问自己的数据库,及数据库中包含了guest用户的公共表  
    go  
     
    --删除测试用户  
    exec  sp_revokedbaccess  N'test'            --移除对数据库的访问权限  
    exec  sp_droplogin  N'test'            -