SQL Server使用Windows身份验证分布式登录

时间:2016-02-21 17:48:09

标签: sql-server windows-authentication impersonation

我是SQL Server的新手,我打算用Java构建一个用于SQL Server的分布式应用程序。我很想知道如果有办法处理以下情况:

  1. UserA登录MachineA并选择 Windows身份验证作为应用中的凭据。我的应用程序的第二个组件在MachineB上(组件使用RESTful Web服务进行通信),而MachineB上安装了SQL Server。 MachineB具有连接到SQL Server的代码。

    我想知道实现这一目标的步骤是什么,是否可以在此处使用Windows身份验证?

  2. UserA登录MachineA并使用 Windows身份验证,连接代码在MachineB上,SQL Server在MachineC上。此处需要执行哪些步骤,连接字符串以及是否需要创建任何域等。

1 个答案:

答案 0 :(得分:0)

假设所有机器都在同一个域上,是的,它会起作用。您可能需要配置Kerberos(SetSPN)以确保服务是可信的。您应该从Microsoft查看Microsoft® Kerberos Configuration Manager for SQL Server®。如果从Web站点使用Java,您还需要为此服务配置SPN。全部配置后,要使用Java连接,您的ConnectionString应如下所示:

jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;

希望有所帮助。