如何为采用 NT 身份验证的 ODBC 网络配置 Windows 用户帐户?

如何为采用 NT 身份验证的 ODBC 网络配置 Windows 用户帐户?

我正在尝试使用“使用网络登录 ID 的 Windows NT 身份验证”从 ODBC 数据源管理器创建到 SQL Server 数据库的连接。服务器和客户端都运行 Windows XP。

看起来任何具有管理员权限的帐户都可以在服务器上添加数据源*,但客户端的连接尝试会导致错误消息,表明它正在尝试使用访客帐户进行身份验证。

我发现Microsoft 支持页面说的是:

对于 SQL Server...:使用模拟的用户帐户进行连接。

但它没有提供关于如何要做到这一点。

如何在服务器上模拟用户帐户?

或者(因为这听起来会导致特权的不幸压缩和责任的丧失):

如何为客户端帐户提供服务器数据库的权限,然后确保客户端尝试使用特权帐户而不是来宾帐户进行身份验证?


我知道我提供的信息比较少。这是因为我不熟悉这个领域,不知道什么是相关的。我会尽快添加任何所需信息。


*我计划在它正常运行后立即加强权限。

答案1

听起来你会从描述 Microsoft SQL Server 安全系统背后的“基础知识”的文档中受益。

我会看看这些与校长权限, 和担保物了解如何在 SQL Server 中以细粒度的方式应用用户/组访问对象的权限。

这些文档有点抽象,但它们是实际的细节。

除了微软,还有非常好的“小抄”罗宾·佩奇写道,为安全模型提供了良好的背景。

从 10,000 英尺的视角来看,您要做的就是创建 Active Directory 组(您将使用户成为其成员),并向这些组授予对 SQL Server 计算机托管的资源(“安全对象”)的各种权限。您要处理的具体权限和安全对象取决于您的特定应用程序。如果某些用户需要对某些表的更新访问权限,或者需要执行某些存储过程的能力,您将使用 SQL Management Studio(或者,如果您使用的是 SQL Server 2000 或更早版本,则使用 E​​nterprise Manager)授予所需的权限。

答案2

SQL 服务器和 XP 工作站是否在同一个域中?如果这是直接连接到 SQL 的 XP 工作站,则应使用指定的凭据(来自不同的域)而不是来宾。您指向的文章正在讨论报告服务 - 那是完全不同的问题。其中有两个重要因素:

  1. 确保用户帐户可以访问正确的数据库
  2. 确保报表服务器计算机帐户值得信任,可以进行委派。

我怀疑如果这是一个报告服务器问题,那么问题 #2 就是您的问题。为了让服务器使用来自另一台服务器的凭据,它需要委托身份验证。所需步骤如下这里。一旦获得信任,服务器便可以模仿用户帐户。

相关内容