【问题标题】:Running VB.Net Windows forms app as 2 different Windows authenticated users to connect to local and remote SQL server以 2 个不同的 Windows 身份验证用户身份运行 VB.Net Windows 窗体应用程序以连接到本地和远程 SQL 服务器
【发布时间】:2014-04-17 04:50:02
【问题描述】:

我继承了一个用于数百个远程站点的 VB.Net Windows 窗体应用程序。在远程站点上,应用程序使用工作站上当前登录的 Windows 用户本地连接到本地 SQL 服务器实例 - 这一切正常。

然而,应用程序还需要连接到远程 SQL 服务器 - 目前这是使用一组连接字符串和 sql 身份验证来完成的。 DBA 希望摆脱使用 SQL Server 身份验证,而使一切都成为 Windows 身份验证。

显然,将数百个用户添加到远程数据库不是一种选择。因此,如果我在本地连接到本地 SQL 服务器,我需要能够使用当前登录的用户;如果我是远程连接,我需要能够使用当前登录的用户和不同的 Windows 用户(将拥有数据库服务器的权限)。

有没有人对如何做到这一点有任何建议或可以提出一种方法。

谢谢

【问题讨论】:

  • 两台服务器是否在同一个域中?
  • @HardCode,是的,两台服务器都在同一个域中

标签: sql sql-server vb.net


【解决方案1】:

由于两台服务器位于同一个域中,因此为应用程序创建 Active Directory 组,将用户的 Windows 登录名放入组中,然后在数据库中授予 2、3 或 10 或任何特定于应用程序的 AD 组权限.如果您使用存储过程,请为每个 AD 组创建一个数据库角色,授予 DB 角色执行权限,并将 AD 组添加到 DB 角色。

【讨论】:

  • 这是一个选项。不幸的是,由于有很多人来来去去,我认为我们没有时间继续在组中添加和删除用户。对我来说,如果我们可以让远程连接作为组中的一组用户之一进行连接(这些用户是预定义的),这可能会起作用
猜你喜欢
  • 1970-01-01
  • 2019-06-05
  • 2013-04-09
  • 2014-07-15
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
  • 2021-01-10
  • 1970-01-01
相关资源
最近更新 更多