【问题标题】:Best way to create SQL user with read only permissions?创建具有只读权限的 SQL 用户的最佳方法?
【发布时间】:2013-08-11 22:40:09
【问题描述】:

为特定数据库创建只读用户的最佳实践是什么?

我创建了一个新用户并授予了 db_datareader 角色,但是,该用户仍然可以访问主数据库和其他系统数据库。那样行吗?还是我应该拒绝访问某些系统表/数据库以使其更安全?

谢谢。


好的,所以如果我创建一个新用户,他是否还有更多我必须拒绝的默认权限? 如果我做 ~创建登录 〜创建用户登录.. ~ 为用户授予 EXECUTE 权限

用户是否只有 EXECUTE 权限,还是对活动数据库也有其他权限?

【问题讨论】:

    标签: sql-server sql-server-2008


    【解决方案1】:

    您好,我相信用户也可以在对象资源管理器中查看其他数据库。

    CREATE LOGIN me with password = 'me', check_policy = off
    
    sp_changedbowner 'me'
    GO
    
    USE MASTER
    GO
    
    
    DENY VIEW ANY DATABASE TO me
    GO
    

    【讨论】:

      【解决方案2】:

      您可以使用拒绝写入作为角色选项。用户必须“看到”主服务器,因为主服务器包含他最终将连接到的数据库列表,但他在那里只有来宾权限。然后,您可以拒绝访问其他特定数据库。 AFAIK 他不需要将 tempdb 或 msdb 视为访问这些的 SQL 引擎

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多