windows验证,服务器windows密码和客户端windows密码必须一至才能访问数据库?谁能说说原理?

yinshisike 2009-11-06 09:42:39
为什么在有的机器可以,有的机器上不可以?
...全文
159 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinshisike 2009-11-06
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 urdoom 的回复:]
引用 11 楼 yinshisike 的回复:
我的意思是,一个客户端用USER:myname 登录了系统.在数据库服务器上有一个相同的帐户(密码也相同),
这时用windows验证时,为什么连输入密码都省了?如果省的?也就说这个输入密码过程是谁做的(为什么这么做.如何做?)


你已经为了在客户端上使用这个用户输入过一次密码了

客户端连服务器端判断的是用户,不是密码


[/Quote]

多谢了,到另一个未结的帖子,我再给你分..
urdoom 2009-11-06
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 yinshisike 的回复:]
我的意思是,一个客户端用USER:myname 登录了系统.在数据库服务器上有一个相同的帐户(密码也相同),
这时用windows验证时,为什么连输入密码都省了?如果省的?也就说这个输入密码过程是谁做的(为什么这么做.如何做?)
[/Quote]

你已经为了在客户端上使用这个用户输入过一次密码了

客户端连服务器端判断的是用户,不是密码

nzperfect 2009-11-06
  • 打赏
  • 举报
回复
在你登陆客户端服务器时,已经输入过密码了,登陆之后再连接服务器的sql server ,的确不用再输入密码了,帐号也是灰的不需要再输入,这是微软自己定的规则吧。
yinshisike 2009-11-06
  • 打赏
  • 举报
回复
我的意思是,一个客户端用USER:myname 登录了系统.在数据库服务器上有一个相同的帐户(密码也相同),
这时用windows验证时,为什么连输入密码都省了?如果省的?也就说这个输入密码过程是谁做的(为什么这么做.如何做?)
nzperfect 2009-11-06
  • 打赏
  • 举报
回复
windows验证就是要用户名和密码相同才能通过验证。
楼主你什么意思?
--小F-- 2009-11-06
  • 打赏
  • 举报
回复
SQL   Server   身份验证   
当用户用指定的登录名称和密码从非信任连接进行连接时,SQL Server 通过检查是否已设置 SQL Server 登录帐户,以及指定的密码是否与以前记录的密码匹配,自己进行身份验证。如果 SQL Server 未设置登录帐户,则身份验证将失败,而且用户收到错误信息。

提供 SQL Server 身份验证是为了向后兼容性,因为为 SQL Server 7.0 版或更早的版本编写的应用程序可能要求使用 SQL Server 登录和密码。另外,当 SQL Server 实例在 Windows 98 上运行时,必须使用 SQL Server 身份验证,因为在 Windows 98 上不支持 Windows 身份验证模式。因此,SQL Server 在 Windows 98 上运行时使用混合模式(但只支持 SQL Server 身份验证)。

应用程序开发人员和数据库用户也许更喜欢 SQL Server 身份验证,因为他们熟悉登录和密码功能。对于连接到 Windows NT 4.0 和 Windows 2000 客户端以外的其它客户端,可能也必须使用 SQL Server 身份验证。





说明 当使用命名管道连接到在 Windows NT 4.0 或 Windows 2000 上运行的 SQL Server 实例时,用户必须有连接到 Windows NT 命名管道 IPC \\<computername>\IPC$ 的权限。如果用户没有连接权限,则不能使用命名管道连接到 SQL Server 实例,除非计算机上的 Windows NT 4.0 或 Windows 2000 guest 帐户已启用(默认情况下禁用),或者给用户帐户授予"从网络访问该计算机"的权限。
--小F-- 2009-11-06
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 urdoom 的回复:]
windows验证就是服务器的操作系统是windows,然后把服务器的操作系统里的用户作为数据库的用户来认证

这样你用客户端访问服务器时候的认证其实就是相当于你在局域网里访问网上邻居的共享文件夹一样

那个文件夹的安全设置里加入了你客户端的用户名,给了你权限,你才能访问

那么密码不同也能访问就好理解了,这两个密码不过是两台机器的用户登陆密码而已,只要用户名一样,效果是一样的。

就像你要过一道安全门,有扫描你眼睛的,有扫描你指纹的,最后只要能确定是你就OK了
[/Quote]

形象
urdoom 2009-11-06
  • 打赏
  • 举报
回复
windows验证就是服务器的操作系统是windows,然后把服务器的操作系统里的用户作为数据库的用户来认证

这样你用客户端访问服务器时候的认证其实就是相当于你在局域网里访问网上邻居的共享文件夹一样

那个文件夹的安全设置里加入了你客户端的用户名,给了你权限,你才能访问

那么密码不同也能访问就好理解了,这两个密码不过是两台机器的用户登陆密码而已,只要用户名一样,效果是一样的。

就像你要过一道安全门,有扫描你眼睛的,有扫描你指纹的,最后只要能确定是你就OK了
yinshisike 2009-11-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 herowang 的回复:]
MS的游戏规则
[/Quote]

等于没说...我想知道原理,为什么帐号密码相同就可以访问?那要是N多人不得建立N多?
yinshisike 2009-11-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fredrickhu 的回复:]
什么叫做有的机器上可以 有的机器上不可以?
[/Quote]

我在我本机上试过就不可以,在其它人机器试就可以.(user:administrator) 为什么?
xiequan2 2009-11-06
  • 打赏
  • 举报
回复
MS的一惯作风,很多软件都这样的
feixianxxx 2009-11-06
  • 打赏
  • 举报
回复
....微软
--小F-- 2009-11-06
  • 打赏
  • 举报
回复
什么叫做有的机器上可以 有的机器上不可以?
  • 打赏
  • 举报
回复
MS的游戏规则
1、本课程是一个干货课程,主要讲解如何封装服务器底层,使用Tcp/ip长连接,IDE使用vs2019 c++开发以及使用c++11的一些标准,跨平台windows和linux,服务器性能高效,单服务器压力测试上万无压力,服务器框架是经历过上线产品的验证,框架简单明了,不熟悉底层封装的人,半个小时就能完全掌握服务器框架上手写业务逻辑。2、本课程是一个底层服务器框架教程,主要是教会学员在windows或linux下如何封装一个高效的,避免踩坑的商业级框架,服务器底层使用初始化即开辟内存的技术,使用内存池,服务器运行期间内存不会溢出,非常稳定,同时服务器使用自定义哈希hashContainer,在处理新的连接,新的数据,新的封包,以及解包,发包,粘包的过程,哈希容器性能非常高效,增、删、查、改永远不会随着连接人数的上升而降低性能,增、删、查、改的复杂度永远都是恒定的O(1)。3、服务器底层封装没有使用任何第三方网络库以及任何第三方插件,自由度非常的高,出了任何BUG,你都有办法去修改,查找问题也非常方便,在windows下使用iocp,linux下使用epoll.4、讲解c++纯客户,主要用于服务器之间通信,也就是说你想搭建多层结构的服务器服务器服务器之间使用socket通信。还可以使用c++客户做压力测试,开辟多线程连接服务器,教程提供了压力测试,学员可以自己做压力测试服务器性能。5、赠送ue4和unity3d通信底层框架以及多人交互demo,登录,注册,玩家离开,同步主要是教会学员服务器客户如何交互。6、赠送c++连接mysql数据库框架demo,登录,注册,玩家离开数据持久化.7、服务器教程使用自定义通信协议,同时也支持protobuf,选择权在开发者自己手里,想用什么协议都可以,自由度高。8、服务器教程使用手动敲代码逐句讲解的方式开展教学课程。非喜勿喷,谢谢大家。9、服务器教程提供源码,大家可以在平台提供的地址下载或者联系我,服务器使用c++11部分标准,std::thread,条件变量,线程锁,智能指针等,需要学员具备一定c++知识,购买前请慎重考虑。

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧