Sql server 2012 如何使用Windows AD Kerberos身份验证从WebLogic连接到SQL Server?

Sql server 2012 如何使用Windows AD Kerberos身份验证从WebLogic连接到SQL Server?,sql-server-2012,weblogic,kerberos,Sql Server 2012,Weblogic,Kerberos,我在Linux服务器上安装了WebLogic 11G(10.3.6),在Windows 2012上安装了SQL Server 2012。我想使用Windows Active Directory Kerberos身份验证从WebLogic创建到SQL Server的连接池 我正在寻找实现上述目标的步骤。我找到了零零碎碎的信息,但在寻找清晰的步骤。非常感谢您的帮助。我可以访问WebLogic 10.3.3。所以所有的版本号都是这样的。但原则是一样的 通过控制台登录 锁定和编辑。如果这不是生产模式服务

我在Linux服务器上安装了WebLogic 11G(10.3.6),在Windows 2012上安装了SQL Server 2012。我想使用Windows Active Directory Kerberos身份验证从WebLogic创建到SQL Server的连接池


我正在寻找实现上述目标的步骤。我找到了零零碎碎的信息,但在寻找清晰的步骤。非常感谢您的帮助。

我可以访问WebLogic 10.3.3。所以所有的版本号都是这样的。但原则是一样的

  • 通过控制台登录
  • 锁定和编辑。如果这不是生产模式服务器,则无需执行此操作
  • 转到服务>JDBC>数据源并单击“新建”
  • 给它一个名称和JNDI名称。我可能不需要提及JNDI名称是最重要的名称。另外,选择“数据库类型”作为“MS SQL Server”
  • 接下来,您必须选择驱动程序。在你的问题中,我没有观察到任何关于分发事务的情况。因此,我假设您不需要“XA”驱动程序
  • 同样,我在你的问题中没有看到任何关于全球交易的信息。所以在下一步中,禁用它
  • 接下来是关于数据库的信息;它的名称、主机的IP和端口。如果您有一个已命名的实例,请在IP后面添加如下名称:\\instance\u name。由于要使用Kerberos,请不要输入用户名和密码
  • 在下一步中,您需要告诉您的数据源使用kerberos。将“AuthenticationMethod=kerberos”添加到URL字段的末尾。连接属性用“;”分隔。例如,jdbc:sqlserver://192.168.10.56:17888;AuthenticationMethod=kerberos
  • 接下来,指定域中哪些服务器将访问此数据源。基本上,指定数据源的目标服务器
  • 旁注和其他重要设置:

  • 当您指定值为“kerberos”的“AuthenticationMethod”连接属性时,将忽略任何用户名或密码
  • 数据库服务器必须由管理Weblogic服务器的同一域控制器管理
  • 在$WL_HOME/server/lib下找到krb5.conf(包含Kerberos领域值和该领域的KDC名称的Kerberos配置文件),并在文本编辑器中打开它。指定系统属性java.security.krb5.realmjava.security.krb5.kdc。在Windows Active Directory中,Kerberos领域名称是Windows域名,KDC名称是Windows域控制器名称
  • 必须在Java 2平台的安全策略文件中向应用程序和驱动程序代码库授予安全权限。大概是这样的:

    grant codeBase“文件:/WL_HOME/server/lib/-”{ 权限javax.security.auth.AuthPermission “createLoginContext.DDTEK-JDBC”; 权限javax.security.auth.AuthPermission“doAs” 权限javax.security.auth.kerberos.ServicePermission “krbtgt/你的_realm@your_realm“发起”; 权限javax.security.auth.kerberos.ServicePermission “MSSQLSvc/db_主机名:SQLServer_port@your_realm“发起”; };

  • 其中:

    • WLU HOME是您安装WebLogic Server的目录
    • 您的_域是数据库主机所属的Kerberos域(或Windows域)
    • db_hostname是运行数据库的计算机的主机名
    • SQLServer_端口是Microsoft SQL Server实例正在侦听的TCP/IP端口
    我必须说,尽管我认为你找得不够努力。因为我在这里写的几乎所有东西都来自在线文档:


    您根本不知道如何在weblogic上创建数据源,或者只是不知道如何使其与Kerberos一起工作?我正在寻找有关如何使用Kerberos身份验证配置SQL Server驱动程序的信息。谢谢。我将尝试这些步骤。在提供的链接中,标题“获取Kerberos票证授予票证”下有一个步骤。为SQL Server驱动程序设置Kerberos身份验证是否需要这样做?我在您的步骤中没有看到任何与此相关的内容。此外,上面提到的链接不包含有关在“JDBCDriverLogin.conf”文件中为“JDBC\u DRIVER\u 01”项指定内容的信息。我有一个服务帐户,我想引用它进行身份验证。关于这方面的任何细节都会有所帮助。