2017-04-25 53 views
2

在我的工作场所,我们试图连接到不同服务器上的Microsoft SQL Server数据库。我们的服务器是一个通过代理AD帐户运行服务的ColdFusion服务器。数据库的所有者要求我们创建另一个AD帐户并通过Windows身份验证授予其访问其数据库的权限。在试图创建在ColdFusion管理页面此连接的数据源,并进入代理帐户的信息,我们收到此错误:如何通过Windows身份验证为SQL Server数据库正确设置ColdFusion数据源?

Connection verification failed for data source: xxxxxxx java.sql.SQLInvalidAuthorizationSpecException: [Macromedia][SQLServer JDBC Driver][SQLServer]Login failed for user 'xxxxxxx'. The root cause was that: java.sql.SQLInvalidAuthorizationSpecException: [Macromedia][SQLServer JDBC Driver][SQLServer]Login failed for user 'xxxxxx'.

我承认,这是因为它试图建立连接可能是通过SQL身份验证,并且他们可能没有打开混合身份验证设置(基于查看以前的答案)。

所以我的问题是,我们可以采取什么其他步骤来正确设置此连接?我假设在数据库方面他们不会有兴趣改变他们的认证设置或任何东西,这意味着我们只能使用Windows身份验证。我们有其他选择吗?

+1

您的ColdFusion服务是否在具有SQL权限的AD帐户下运行?如果是这样,那么我认为你只需要从数据源中删除用户名/密码,它就会尝试使用ColdFusion服务用户的凭证。如果您无法在该帐户下运行ColdFusion,那么我认为您需要查看使用与ColdFusion捆绑在一起的ODBC服务。 –

+0

关闭,你需要用户名。这是你留下空白的密码。 –

+0

挑战那些正在告诉你为ColdFusion创建一个新的AD帐户的人。 –

回答

3

This link旧,但Windows身份验证说明仍适用。要设置数据源的CF使用Windows身份验证:

  • 编辑DSN,并选择显示高级设置>连接字符串。然后输入AuthenticationMethod=Type2并保存。
  • 离开usernamepassword领域的空白

注: ColdFusion服务必须将AD帐户下运行具有权限到SQL Server。它不能以编程方式更改。

+0

看起来这是我们需要做的。谢谢。 – lonnyjuce

+0

欢迎。由于CF服务器必须在特定的Windows帐户下运行,因此您可能还需要检查针对任何CF应用程序的分支(如果有)。 – Leigh

+0

是的,我们对这条路线犹豫不决,因为我们并不确定。 – lonnyjuce

相关问题