使用windows身份验证连接到sql server的java模拟
现在,我使用经典的asp和visual basic 6构建了以下体系结构 我有一个用VB6开发的COM+组件,它连接到dabatase。我通过一个配置了集成安全性的.udl文件来设置DB conf 在web服务器(IIS)上,我向com+管理器注册该组件,并将其配置为在帐户名下运行,例如mydomain\appAccount 在sql 2005中,我将mydomain\appAccount授予相应的权限 从asp中,我只使用server.createobject的组件 我想用java开发一个类似的解决方案,问题如下: 可能吗 如何配置域帐户以连接到sql server 2005 db 我应该在哪里存储数据库配置?我应该在哪里配置域帐户?在tomcat/jetty配置中 我希望解决方案尽可能简单明了(我尽量避免使用glassfish或jboss之类的东西)使用windows身份验证连接到sql server的java模拟,java,sql-server,windows,configuration,integrated-security,Java,Sql Server,Windows,Configuration,Integrated Security,现在,我使用经典的asp和visual basic 6构建了以下体系结构 我有一个用VB6开发的COM+组件,它连接到dabatase。我通过一个配置了集成安全性的.udl文件来设置DB conf 在web服务器(IIS)上,我向com+管理器注册该组件,并将其配置为在帐户名下运行,例如mydomain\appAccount 在sql 2005中,我将mydomain\appAccount授予相应的权限 从asp中,我只使用server.createobject的组件 我想用java开发一个类似
好的,非常感谢……查看有关如何配置数据源的tomcat文档。
您需要做的是确保Tomcat JVM进程是由具有数据库可信连接的用户执行的 然后,您需要在Tomcat中配置数据源 以下MSDN文章详细介绍了如何设置数据源以使用集成安全性:
- 所以这是一个非常棘手的问题,我现在也遇到了同样的问题。我还没有解决应用服务器中的模拟问题,但我的团队正在接近
到目前为止,我们已经成功地使用Kerberos根据域控制器对用户进行身份验证。SourceForge SPNEGO和Spring Security Kerberos扩展在这方面都非常有用。我们还能够在连接到SQL Server时成功模拟运行Java应用程序的进程。真正的问题是通过委托进行模拟,因为它要求您获得可以委托给另一个服务的Kerberos票证。这是我们目前正在研究的问题
如果要在SQL Server中模拟用户,必须使用NTLM或Kerberos。Kerberos提供了最好的安全性,老实说,我们甚至没有费心尝试使用NTLM。有两个JDBC驱动程序(据我所知)允许您使用域帐户连接到SQL Server:jTDS和DataDirect JDBC。jTDS是一个2型JDBC驱动程序,这意味着它依赖于本机库为用户获取凭据。jTDS将只模拟运行该进程的用户,不允许您模拟其他帐户(而且,它只能在Windows上进行此操作)。DataDirect驱动程序(Commercial)是一个4型驱动程序,这意味着它是一个纯Java实现(可以在*nix上工作)。这是我们正在使用的驱动程序,它工作得很好
如果我找到了一个可行的解决方案,我会发布它,因为我认为社区中的很多人在这个问题上受到了伤害
祝你好运 非常感谢,我仍然无法接受答案,因为我没有时间尝试,但我希望我能很快做到。。。