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。
- 通常情况下,配置 Windows 身份验证更为容易,因为您只需将现有 Windows 登录帐户添加到 SQL Server,而不必创建独立用户。
- 当用户要与数据库建立连接时,不会要求用户输入用户名和密码。只需登录一次便可访问所有支持 Window 身份验证的服务。
如果在 ArcSDE 地理数据库中使用 Windows 身份验证,需要注意以下几点限制:
- 您无法作为不同于当前登录帐户的 Windows 用户连接到地理数据库。如果您已使用 TERRA\Ian 帐户登录系统,则无法再作为 TERRA\Sylvia 建立经 Windows 验证的连接。但如果您使用的是数据库身份验证,便可以使用一个用户帐户登录到计算机,而使用另一个用户帐户连接到地理数据库,只要提供不同的用户名和密码即可。
- 如果 ArcSDE 和 SQL Server 安装在不同的服务器上,并且您使用 ArcSDE 服务与地理数据库进行连接,则您将不能使用经 Windows 验证的用户。因此,要使用经 Windows 验证的用户,您最好建立与地理数据库的直接连接,或者将 ArcSDE 和 SQL Server 安装在同一台计算机上。
相关主题
7/10/2012