代码之家  ›  专栏  ›  技术社区  ›  vfalcao

是否可以使用Oracle Wallet将节点连接到其vault?

  •  0
  • vfalcao  · 技术社区  · 6 年前

    是否可以使用 甲骨文12c 备份 node.conf dataSource.url="jdbc:oracle:thin:@host:port:@ SOME_ORACLE_WALLET_TNS " 没有 指定任何 dataSource.username dataSource.password 参数)?

    .jar 文件应该是 添加到节点驱动程序目录。

    2 回复  |  直到 6 年前
        1
  •  1
  •   Joel    6 年前

    Corda Enterprise支持Oracle钱包。以下是Oracle Wallet的工作配置,并已在Oracle 11g和Oracle 12c上进行了测试。

    1. Oracle wallet配置为自动登录( -auto_login_local

    2. 假设节点的数据库连接URL是在中配置的 tnsnames.ora ,化名为 "db11g"

      $ echo 'For JDBC URL ==> "jdbc:oracle:thin:@localhost:1521/xe" ==> below is an example of tnsnames.ora'
      $ cat ~/oracle_experiment/tnsnames.ora 
      db11g =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = xe)
          )
        )
      
    3. 钱包位置在中配置 sqlnet.ora :

      $ cat ~/oracle_experiment/sqlnet.ora
      WALLET_LOCATION =
         (SOURCE =
           (METHOD = FILE)
           (METHOD_DATA =
             (DIRECTORY = /Users/corda/oracle_wallet/)
           )
         )
      
      SQLNET.WALLET_OVERRIDE = TRUE
      SSL_CLIENT_AUTHENTICATION = FALSE
      SSL_VERSION = 0
      
    4. Sqlplus应能够在无密码挑战的情况下登录:

      sqlplus /@db11g     
          SQL*Plus: Release 12.2.0.1.0 Production on Tue Nov 27 15:17:00 2018 
          Copyright (c) 1982, 2017, Oracle.  All rights reserved. 
          Last Successful login time: Tue Nov 27 2018 14:46:09 +08:00 
          Connected to:   
          Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production  
          SQL>
      

    1. 从以下位置更改特定于数据库的配置:

      $ cat dbconfig_oracle11g.conf
      dataSourceProperties = {
          dataSourceClassName = "oracle.jdbc.pool.OracleDataSource"
          dataSource.url = "jdbc:oracle:thin:@localhost:1521/xe"
          dataSource.user = corda_es_user
          dataSource.password = corda_es_passwd
      }
      

      $ cat dbconfig_oracle_wallet.conf 
      dataSourceProperties = {
          dataSourceClassName = "oracle.jdbc.pool.OracleDataSource"
          dataSource.url = "jdbc:oracle:thin:/@db11g"
          dataSource.user=null
          dataSource.password=null   // user and password can't be ignored and can't be left blank.
      }
      
    2. drivers 文件夹:

      ]$ ls <corda>/drivers/
      ojdbc8.jar
      osdt_cert.jar
      osdt_core.jar
      oraclepki.jar
      
    3. oracle.net.wallet_location oracle.net.tns_admin 选项:

      ]$ java -Doracle.net.wallet_location=/Users/corda/oracle_wallet/ -Doracle.net.tns_admin=/Users/corda/oracle_experiment/ -jar corda.jar
      
        2
  •  0
  •   Nirmala    6 年前

    参考 SSL with JDBC 更多详情请登录博客。