Windows 身份验证和数据库身份验证在 SQL Server 中的应用比较
Windows 身份验证是通过所连接计算机的 Windows 操作系统 (OS) 所提供的凭据来识别登录帐户的一种方法。
提示:
由于 Microsoft SQL Server 数据库仅限在 Windows 操作系统中运行,因此 SQL Server 的 OS 身份验证也称为 Windows 身份验证。
经 Windows 验证的登录帐户是默认帐户,因此也是 SQL Server 数据库的推荐帐户类型。默认情况下,这是在创建 SQL Server 实例后唯一允许使用的登录类型。
而数据库登录帐户则是在数据库管理系统中创建的帐户。这些帐户与用户连接到操作系统时使用的登录帐户相互独立。
在 SQL Server 中,同数据库身份验证相比,Windows 身份验证具有明显优势。具体优势包括以下几点:
- 在 SQL Server 数据库中,Windows 身份验证通常比数据库身份验证更安全,因为前者采用基于证书的安全机制。通过经 Windows 验证的登录帐户访问 SQL Server 时需要使用存取令牌而不是用户名和密码。存取令牌由 Windows(活动目录域或本地操作系统)在用户登录时指定。令牌中包含该登录用户的唯一安全 ID (SID) 和用户所属的任何本地 Windows 组或域 Windows 组的 SID 信息。该令牌的 SID 将与 sys.server_principals 系统视图中的所有 SID 进行比较。系统会根据比较结果决定允许还是拒绝登录帐户访问 SQL Server。
- 在使用域帐户时,密码和帐户采取集中管理方式;域管理员管理在组织中使用的所有登录帐户,而数据库管理员无须管理单独帐户。
- 当用户要与数据库建立连接时,不会要求用户输入用户名和密码。只需登录一次便可访问所有支持 Window 身份验证的服务。
如果在企业级地理数据库中使用 Windows 身份验证,需要注意以下几点限制:
- 您无法作为不同于当前登录帐户的 Windows 用户连接到地理数据库。例如,如果您已使用 TERRA\Ian 帐户登录系统,则无法采用 TERRA\Sylvia 帐户建立经 Windows 验证的连接。但如果您使用的是数据库身份验证,便可以使用一个用户帐户登录到计算机,而使用另一个用户帐户连接到地理数据库,只要提供不同的用户名和密码即可。
- 在使用 ArcSDE 服务而且 ArcSDE 应用程序服务器安装在 SQL Server 之外的其他服务器上时,不能使用经 Windows 验证的用户。因此,要使用经 Windows 验证的用户,您可以直接连接地理数据库,或者将 ArcSDE 应用程序服务器和 SQL Server 安装在同一台计算机上。
相关主题
5/10/2014