【发布时间】:2018-12-10 19:28:00
【问题描述】:
我有一个 Microsoft Access 应用程序,它生成如下连接字符串:
Provider=SQLNCLI11;Server=servername;Database=db_name;Trusted_Connection=yes;
这没有任何问题。
我要做的是连接到用户必须插入其 Active Directory 名称和密码的 SQL Server 实例。
像这样:
Provider=SQLNCLI11;Server=servername;Database=db_name;Uid=username;Pwd=password;
这仅适用于直接在 SQL Server 上创建的用户。
我尝试了Uid=DOMAIN\username,但它不起作用。
这可能吗?还是有其他方法可以解决这个问题?
环境: 用户正在使用具有本地帐户的本地 PC,然后他正在使用他的 AD 用户和密码进行“NetworkConnect”。
之后,“RunAs”作为他的 AD 用户正在工作,但还有另一个应用程序从 Access 应用程序启动,并且该应用程序必须使用本地用户帐户启动。
SQL-Server 和 AD-User 是同一个域的成员。
【问题讨论】:
-
当他/她需要使用域凭据登录时,为什么用户是本地用户?为什么不从一开始就使用域凭据登录?您确定您要保护身份验证和密码安全,并在密码泄露时遇到麻烦吗?
-
因为计算机没有通过 VPN 隧道永久连接到公司。如果您有一个新用户,他将无法使用他的 AD 用户登录计算机,因为这台计算机上没有配置文件。因此,您需要在本地登录,然后使用您的 AD 用户和密码通过 NetworkConnect 登录到域。
标签: sql-server vba connection-string