我正在尝试将 Server 2008 R2 NPS 连接到 MSSQL 服务器以记录会计数据,但遇到了问题。
我通过“配置会计”向导配置了 NPS 会计,并使用 Windows 集成安全性连接到我的 MSSQL 服务器(2012 express)并创建一个用于会计的数据库。
当我测试它时,我的 NPS 生成了一个 6274 事件:“...无法写入配置的会计数据存储”。
查看我的数据库服务器,我看到一个 18456 事件:“用户‘mydom\npsserver$’登录失败。原因:无法打开明确指定的数据库‘myNPSDB’。[客户端:NPS.servers.IP.addr]”
因此,即使我使用具有 DB 访问权限的域帐户设置了 DB 连接,服务器仍与本地机器帐户连接。
我不想授予我的 NPS 服务器的计算机帐户对我的数据库的明确访问权限,而是想使用域帐户。
当我在数据链接属性对话框中尝试输入“使用特定用户名和密码”的域帐户时,出现“用户登录失败”错误 - 我知道我输入的凭据是正确的。
然后,我尝试以域帐户身份运行网络策略服务器服务,但执行此操作后它无法启动。
如何让我的 NPS 使用域帐户连接到我的数据库?
答案1
确保您的 SQL 实例使用混合模式身份验证。默认情况下,SQL 仅使用 Windows 身份验证进行安装。
更改安全认证模式
在 SQL Server Management Studio 对象资源管理器中,右键单击服务器,然后单击“属性”。
- 在“安全”页面的“服务器身份验证”下,选择新的服务器身份验证模式,然后单击“确定”。
- 在 SQL Server Management Studio 对话框中,单击“确定”以确认重新启动 SQL Server 的要求。
- 在对象资源管理器中,右键单击您的服务器,然后单击“重新启动”。如果 SQL Server 代理正在运行,还必须重新启动它。
启用 sa 登录
- 在对象资源管理器中,展开“安全”,展开“登录名”,右键单击“sa”,然后单击“属性”。
- 在常规页面上,您可能必须创建并确认登录密码。
- 在“状态”页面的“登录”部分中,单击“已启用”,然后单击“确定”。
答案2
我已设法通过在 NPS 会计数据库上添加计算机帐户 dbo 权限来实现这一点。由于在使用 SQL Management Studio 创建新登录时无法搜索计算机帐户,因此您必须手动将帐户键入为 domain\computername$ 并授予 NPS 会计数据库的 dbo 权限。如果您有多个 RADIUS 服务器尝试将其事务记录到 SQL,这会有点繁琐,但至少它是有效的。
我也尝试过使用计算机组,但没有成功。