我正在尝试从域外连接到SQL服务器。
我有以下连接字符串:
SqlConnection("SERVER=Server;DATABASE=Database;User ID=Domain\User;Password=password");
当我尝试在域外使用它时,这会在尝试使用SQL身份验证登录时失败。
有没有办法将命令传递给字符串以使用Active Directory身份验证。
使用域外的活动目录详细信息,还有哪些其他方法可以连接到SQL服务器?
答案 0 :(得分:3)
您需要:
您通过将域凭据放入user / pass并且甚至没有信任关系来进行无效混合。
编辑:
评论表明需要将SQL帐户与AD信用卡同步。这不是必需的。 SQL帐户只是SQL范围的用户名和密码,它特定于SQL服务器,与域信誉无关。如果您使用SQL帐户,那么这些将成为您的应用程序中的配置设置,用于构建正确的连接并通过网络发送。 SQL服务器在本地验证这些信用,而不涉及AD。
无论您是创建2层(胖客户端直接访问sql)还是3层(客户端访问访问sql的中间层应用服务器),这也很有趣。如果是后者,则应用程序对用户进行身份验证和授权,之后,它使用配置设置和sql特定用户/传递来访问sql。如果它是前者并且您正在使用sql帐户,则每个客户端需要一个,这是一个问题。