WEB开发网
开发学院数据库MSSQL Server Sql Server用户名和登录名的关系总结 阅读

Sql Server用户名和登录名的关系总结

 2010-06-22 00:00:00 来源:WEB开发网   
核心提示:以前经常被Sql Server中的用户名和登录名搞迷糊,因为用sa(登录名)就搞定一切东西了,Sql Server用户名和登录名的关系总结,当然这会存在一些安全隐患,网上的文章也貌似讲得很好,但一个登录名在一个房间只能拥有此房间的一把钥匙,链接或登录Sql Server服务器时是用的登录名而非用户名登录的,但还是不明白

以前经常被Sql Server中的用户名和登录名搞迷糊,因为用sa(登录名)就搞定一切东西了,当然这会存在一些安全隐患。网上的文章也貌似讲得很好,但还是不明白。今天决心把这个问题弄明白。mashallah, 看了N多文章加实验后终于弄明白了(学东西最重要的还是要亲自动手试试),现将学到的分享一下,看是否对你有帮助。

登录名:服务器方的一个实体,使用一个登录名只能进入服务器,但是不能让用户访问服务器中的数据库资源。每个登录名的定义存放在master数据库的syslogins表中

用户名:一个或多个登录对象在数据库中的映射,可以对用户对象进行授权,以便为登录对象提供对数据库的访问权限。用户定义信息存放在每个数据库的sysusers表中。

SQLSERVER把登录名与用户名的关系称为映射。用登录名登录SQLSERVER后,在访问各个数据库时,SQLSERVER会自动查询此数据库中是否存在与此登录名关联的用户名,若存在就使用此用户的权限访问此数据库,若不存在就是用guest用户访问此数据库(guest是一个特殊的用户名,后面会讲到)。

一个登录名可以被授权访问多个数据库,但一个登录名在每个数据库中只能映射一次。即一个登录可对应多个用户,一个用户也可以被多个登录使用。好比SQLSERVER就象一栋大楼,里面的每个房间都是一个数据库.登录名只是进入大楼的钥匙,而用户名则是进入房间的钥匙.一个登录名可以有多个房间的钥匙,但一个登录名在一个房间只能拥有此房间的一把钥匙。

链接或登录Sql Server服务器时是用的登录名而非用户名登录的,程序里面的链接字符串中的用户名也是指登录名。

SQLSERVER中有几个特殊的登录名和用户名:

1 2 3  下一页

Tags:Sql Server 用户名

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接