为 Essbase 设置 Weblogic TLS 连接

默认情况下, WebLogic 配置为未加密模式。下面是将 WebLogic TLS 连接添加到现有不安全域的步骤。

Essbase 21.2 或 21.3+ 设置 TLS 连接

注意:

更新 JAgent 和 WebLogic 证书的先决条件和说明。

  • 设置 Oracle 主目录环境变量 - 指向 Essbase 安装。必须定义 JAVA_HOME 和 ORACLE_HOME 环境变量才能运行配置。
  • 命令文件的参数是响应文件位置(此文件在 GUI 模式下生成,在无提示模式下使用)或 DOMAIN_HOME 位置。
  1. 停止 Essbase

    对于 Linux:

    ${DOMAIN_HOME}/esstools/bin/stop.sh

    对于 Windows:

    %DOMAIN_HOME%\esstools\bin\stop.cmd
  2. 要更新所有 TLS 证书(在 Essbase 21.2 或 21.3+ 中配置)和 wallet,请运行以下命令:

    注意:

    RESPONSE_FILE 和 DOMAIN_HOME 不能在脚本参数中同时使用。只使用其中一个。

    对于 Linux 上的 21.2 或 21.3+:

    java -cp $ORACLE_HOME/essbase/lib/essbaseconfig.jar com.oracle.wizard.operation.helper.ssl.SslConfigHelper [RESPONSE_FILE=<response file> | DOMAIN_HOME=<${DOMAIN_HOME}>]

    注意:

    对于 Linux 上的 21.3+,还可以使用以下命令(这不需要导出 JAVA_HOME 和 ORACLE_HOME):

    ${ORACLE_HOME}/essbase/bin/ssl_config.sh [RESPONSE_FILE=<response file> | DOMAIN_HOME=<${DOMAIN_HOME}>]

    对于 Windows 上的 21.3+:

    java -cp %ORACLE_HOME%\essbase\lib\essbaseconfig.jar com.oracle.wizard.operation.helper.ssl.SslConfigHelper [RESPONSE_FILE=<response file> | DOMAIN_HOME=<%DOMAIN_HOME%>]

    注意:

    您还可以使用以下命令:

    %ORACLE_HOME%\essbase\bin\ssl_config.cmd [RESPONSE_FILE=<response file> | DOMAIN_HOME=<%DOMAIN_HOME%>]
  3. 由于 wallet 和密钥库的密码未更改,因此只需运行 WebLogic 以启动 Essbase 。启动 Essbase 。请参见 Stop、Start and Check Servers

    对于 Linux:

    ${DOMAIN_HOME}/esstools/bin/start.sh

    对于 Windows:

    %DOMAIN_HOME%\esstools\bin\start.cmd

Essbase 21.2 或 21.3+ 设置启用 SSL 的模式

如果在 21.1 版本中以加密模式配置了 Essbase ,则在打补丁到 Essbase 21.2 或 21.3+ 后,需要使用以下步骤设置启用 SSL 的模式。

  1. 呼叫 wlst。

    对于 Linux:

    ${ORACLE_HOME}/oracle_common/common//bin/wlst.sh
    ${ORACLE_HOME}/essbase/modules/oracle.essbase.sysman/scripts/ssl_settings.py
    ${DOMAIN_HOME} ${DOMAIN_HOME}/security/keystore.jks
    ${DOMAIN_HOME}/config/fmwconfig/ovd/default/keystores/adapters.jks
    ${DOMAIN_HOME}/config/fmwconfig/essconfig/essbase/walletssl/certwallet.pem <FQDN> <ssl Admin
    Port> <<EOF
    Password1
    Password1
    EOF
    • 对于 21.2,使用以下命令代替全限定域名 <FQDN>
      https://<FQDN>:<Essbase Server SSL Port>/essbase/agent
    • 对于 21.3+,它应该是纯 FQDN 主机。

    对于 Windows:

    %ORACLE_HOME%\oracle_common\common\bin\wlst.cmd
    %ORACLE_HOME%\essbase\modules\oracle.essbase.sysman\scripts\ssl_settings.py
    %ORACLE_HOME%\security\keystore.jks
    %ORACLE_HOME%\config\fmwconfig\ovd\default\keystores\adapters.jks
    %ORACLE_HOME%\config\fmwconfig\essconfig\essbase\walletssl\certwallet.pem <FQDN> <ssl Admin
    Port>

    上面的命令将提示您输入密码。

  2. 更改以下内容:

    对于 Linux:编辑 ${DOMAIN_HOME}/bin/setStartupEnv.sh。查找子字符串 -Djavax.net.ssl.trustStore 并将此行更改为行末尾(展开 ${DOMAIN_HOME}

    -Djavax.net.ssl.trustStore=${DOMAIN_HOME}/config/fmwconfig/essconfig/essbase/walletssl/cacerts -Dweblogic.security.SSL.ignoreHostnameVerification=true

    对于 Windows:编辑 %ORACLE_HOME%\bin\setStartupEnv.cmd。查找子字符串 -Djavax.net.ssl.trustStore 并将此行更改为行末尾(展开 %DOMAIN_HOME%

    -Djavax.net.ssl.trustStore=%ORACLE_HOME%\config\fmwconfig\essconfig\essbase\walletssl\cacerts -Dweblogic.security.SSL.ignoreHostnameVerification=true
  3. 更改以下各项:

    对于 Linux:按如下方式编辑 ${DOMAIN_HOME}/bin/setWlstEnv.sh:(展开 ${DOMAIN_HOME})

    export WLST_PROPERTIES="-Dweblogic.ssl.JSSEEnabled=true 
    -Dweblogic.security.SSL.enableJSSE=true 
    -Dweblogic.security.SSL.ignoreHostnameVerification=true 
    -Dweblogic.security.CustomTrustKeyStoreType=JKS 
    -Dweblogic.security.TrustKeyStore=CustomTrust 
    -Dweblogic.security.CustomTrustKeyStoreFileName=${DOMAIN_HOME}/config/fmwconfig/ovd/default/keystores/adapters.jks 
    -Djavax.net.ssl.trustAnchors=${DOMAIN_HOME}/config/fmwconfig/ovd/default/keystores/adapters.jks"
    export API_CAINFO=${DOMAIN_HOME}/config/fmwconfig/essconfig/essbase/walletssl/certwallet.pem

    对于 Windows:类似地编辑 %ORACLE_HOME%\bin\setWlstEnv.cmd

    export WLST_PROPERTIES="-Dweblogic.ssl.JSSEEnabled=true 
    -Dweblogic.security.SSL.enableJSSE=true 
    -Dweblogic.security.SSL.ignoreHostnameVerification=true 
    -Dweblogic.security.CustomTrustKeyStoreType=JKS 
    -Dweblogic.security.TrustKeyStore=CustomTrust 
    -Dweblogic.security.CustomTrustKeyStoreFileName=%DOMAIN_HOME%\config\fmwconfig\ovd\default\keystores\adapters.jks 
    -Djavax.net.ssl.trustAnchors=%DOMAIN_HOME%\config\fmwconfig\ovd\default\keystores\adapters.jks"
    export API_CAINFO=%DOMAIN_HOME%\config\fmwconfig\essconfig\essbase\walletssl\certwallet.pem
  4. 按如下方式添加代码行:

    对于 Linux:向 ${DOMAIN_HOME}/nodemanager/nodemanager.properties 添加以下代码行(展开 ${DOMAIN_HOME})。

    KeyStores=CustomIdentityAndCustomTrust
    CustomIdentityKeystoreType=jks
    CustomIdentityKeyStoreFileName=${DOMAIN_HOME}/security/keystore.jks
    CustomIdentityKeyStorePassPhrase=Password1
    CustomIdentityPrivateKeyPassPhrase=Password1
    CustomIdentityAlias=ssl
    CustomTrustKeystoreType=jks
    CustomTrustKeyStoreFileName=${DOMAIN_HOME}/config/fmwconfig/ovd/default/keystores/adapters.jks
    CustomTrustKeyStorePassPhrase=Password1

    对于 Windows:将以下代码行添加到 %DOMAIN_HOME%\nodemanager\nodemanager.properties(展开 %DOMAIN_HOME%)。

    KeyStores=CustomIdentityAndCustomTrust
    CustomIdentityKeystoreType=jks
    CustomIdentityKeyStoreFileName=%DOMAIN_HOME%\security\keystore.jks
    CustomIdentityKeyStorePassPhrase=Password1
    CustomIdentityPrivateKeyPassPhrase=Password1
    CustomIdentityAlias=ssl
    CustomTrustKeystoreType=jks
    CustomTrustKeyStoreFileName=%DOMAIN_HOME%\config\fmwconfig\ovd\default\keystores\adapters.jks
    CustomTrustKeyStorePassPhrase=Password1
  5. 更新如下:

    对于 Linux:使用以下值更新 ${DOMAIN_HOME}/config/fmwconfig/essconfig/essbase/essbase.cfg

    对于 Windows:使用以下值更新 %DOMAIN_HOME%\config\fmwconfig\essconfig\essbase\essbase.cfg

    AgentSecurePort 6423
    
    EnableSecureMode true
    EnableClearMode false
    ClientPreferredMode SECURE
  6. 更新身份证明和 OPSS 密钥库。

    对于 Linux:将 .wlst 脚本中的 ${DOMAIN_HOME} 替换为实际路径。

    source ${DOMAIN_HOME}/bin/setWlstEnv.sh
     
    ${ORACLE_HOME}/oracle_common/common/bin/wlst.sh <<EOF
    wlAddress='t3s://<fqdn>:<AdminServer SSL port>'
    wlUser='<user name>'
    wlPassword='<password>'
    keystorePath='${DOMAIN_HOME}/config/fmwconfig/essconfig/essbase/walletssl/keystore.jks'
    connect(wlUser, wlPassword, wlAddress)
    svc = getOpssService(name='KeyStoreService')
    svc.importKeyStore(appStripe='essbase', name='internalidentity', password='Password1', aliases='orakey', keypasswords='Password1', type='JKS', permission=true, filepath=keystorePath)
    svc.importKeyStore(appStripe='essbase', name='internaltrust', password='Password1', aliases='orakey', keypasswords='Password1', type='JKS', permission=true, filepath=keystorePath)
    updateCred(map='oracle.essbase', key='ssl.passphrase', user='ssl.passphrase', password='Password1') exit()EOF

    对于 Windows:将 .wlst 脚本中的 %DOMAIN_HOME% 替换为实际路径。

    call %DOMAIN_HOME%\bin\setWlstEnv.cmd
    call %DOMAIN_HOME%\oracle_common\common\bin\wlst.cmd 

    上面的命令将进入 WLST 模式。然后运行以下命令:

    wls:\offline>wlAddress='t3s:\\<fqdn>:<AdminServer SSL port>'
    wls:\offline>wlUser='<user name>'wls:\offline>wlPassword='<password>'
    wls:\offline>keystorePath='%DOMAIN_HOME%\\config\\fmwconfig\\essconfig\\essbase\\walletssl\\keystore.jks'
    wls:\offline>connect(wlUser, wlPassword, wlAddress)wls:\offline>svc = getOpssService(name='KeyStoreService')
    wls:\offline>svc.importKeyStore(appStripe='essbase', name='internalidentity', password='Password1', aliases='orakey',
    keypasswords='Password1', type='JKS', permission=true, filepath=keystorePath)
    wls:\offline>svc.importKeyStore(appStripe='essbase', name='internaltrust', password='Password1', aliases='orakey',
    keypasswords='Password1', type='JKS', permission=true, filepath=keystorePath)
    wls:\offline>updateCred(map='oracle.essbase', key='ssl.passphrase', user='ssl.passphrase', password='Password1')
    wls:\offline>exit()