1

我正在尝试添加 NETWORK SERVICE 登录,因为我仍然无法连接到 AdventureWorks3 数据库。但我想通过 SQL Server 身份验证而不是 Windows 添加此 NETWORK SERVICE 登录。

当我选择 Windows 身份验证时,它允许我创建此登录。但是当我选择 SQL Server 身份验证时,它给了我以下错误: 登录失败 'NT AUTHORITY\NETWORK SERVICE'...'NT AUTHORITY\NETWORK SERVICE' 不是有效名称,因为它包含无效字符。(MS SQL Server,错误:15006)

4

2 回答 2

5

NT AUTHORITY\NETWORK SERVICE是本地服务器帐户名。当服务器是域的一部分时,“网络服务”就变成了DOMAIN\ServerName$,这可以用于受信任/集成/Windows 登录

CREATE LOGIN [BigCompany\JustOneServer$] FROM WINDOWS

如果它不是域的一部分,请使用 SQL Server 登录。

于 2010-06-21T19:07:20.160 回答
3

SQL 身份验证和 Windows 身份验证是不同的。通过指定相似的用户名,两者不可互换。

SQL auth 允许在数据库中存储密码信息并且是可移植的,而 Windows auth 告诉 SQL 依赖 Windows 来验证用户。因此,您无需在数据库中指定密码以及 Windows 身份验证用户。

如果您需要使用 SQL 身份验证,只需指定任何用户名和密码并将该信息包含在您的连接字符串中。该名称没有理由必须与现有 Windows 用户匹配。

于 2010-06-21T18:01:13.207 回答