ADO.NET SQL Server身份验证两种模式揭秘

上网导航 2023-08-11 366 0条评论
摘要: ADO.NET经过长时间的发展,很多用户都很了解ADO.NET SQL Server了,这里我发表一下个人理解,和大家讨论讨论。ADO...

ADO.NET经过长时间的发展,很多用户都很了解ADO.NET SQL Server了,这里我发表一下个人理解,和大家讨论讨论。ADO.NET SQL Server身份验证支持两种模式,Windows 身份验证模式和混合模式。

◆Windows 身份验证是默认模式(通常称为集成安全),因为此 SQL Server 安全模型与 Windows 高度集成。信任特定 Windows 用户和组帐户登录 SQL Server。已经过身份验证的 Windows 用户不必提供附加的凭据。

◆混合模式支持通过 Windows 和 SQL Server 进行的身份验证。用户名和密码对保留在 SQL Server 中。

我们建议尽可能使用 Windows 身份验证。Windows 身份验证使用一系列加密消息验证 SQL Server 中的用户。使用 SQL Server 登录时,会通过网络传递 SQL Server 登录名和密码,这样会降低它们的安全性。使用 Windows 身份验证,已经登录到 Windows 的用户不必再单独登录到 SQL Server。下面的 SqlConnection.ConnectionString 可指定 Windows 身份验证,而无需用户名或密码。

"Server=MSSQL1;Database=AdventureWorks;Integrated Security=true; 

登录名与数据库用户名不同。您必须通过单独的操作将登录或 Windows 组映射到数据库用户或角色。然后向用户或角色授予访问数据库对象的权限。

ADO.NET SQL Server身份验证方案

在下列情形中,Windows 身份验证通常为最佳选择:

◆存在域控制器。

◆应用程序和数据库位于同一台计算机上。

◆您正在使用 SQL Server Express 的实例。

SQL Server 登录常常在以下情况中使用:

◆您有工作组。

◆用户从其他不受信任的域进行连接。

◆Internet 应用程序(例如 ASP.NET)。

指定 Windows 身份验证不会禁用 SQL Server 登录。使用 ALTER LOGIN DISABLE Transact-SQL 语句会禁用具有高特权的 SQL Server 登录。

ADO.NET SQL Server身份验证登录类型

SQL Server 2000 支持三种登录类型:

◆本地 Windows 用户帐户或受信任的域帐户。SQL Server 依赖 Windows 来对 Windows 用户帐户进行身份验证。

◆Windows 组。向 Windows 组授予访问权限会向作为该组的成员的所有 Windows 用户登录授予访问权限。

◆SQL Server 登录。SQL Server 将用户名和密码的哈希形式都存储在 master 数据库中,使用内部身份验证方法验证尝试的登录。

文章版权及转载声明:

作者:上网导航本文地址:https://www.90xe.com/post/1693.html发布于 2023-08-11
文章转载或复制请以超链接形式并注明出处技术导航

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏