如何配置 Pentaho Carte 接受 HTTPS 请求而不是 HTTP
How to configure Pentaho Carte to accept HTTPS request instead of HTTP
我有一个要求,Pentaho Carte 服务器需要接受 "HTTPS" 而不是默认的 "HTTP"。
我遵循了以下 link 但无济于事:
https://help.pentaho.com/Documentation/6.0/0L0/0Y0/060/060/010#Configuring_Carte_Servers_for_SSL
以下是我遵循的步骤:
使用 Keytool,我使用以下命令创建了一个 .jks
文件:
keytool -genkey -keyalg RSA -alias selfsigned -keystore C:\KEY_STORE\Pentaho\keystore.jks -storepass password -validity 360 -keysize 2048
我在我的系统上编辑了 carte_config_master-8080.xml
文件,现在看起来是:
<slaveserver>
<name>master1</name>
<hostname>10.67.110.93</hostname>
<port>8080</port>
<master>Y</master>
<sslConfig>
<keyStore>C:\KEY_STORE\Pentaho</keyStore>
<keyStorePassword>password</keyStorePassword>
<keyPassword>password</keyPassword>
</sslConfig>
</slaveserver>
可以看到我已经创建了 .jks
文件并在 carte-config-master-8080.xml
中提到了它的位置。
我调用 Carte 为:
C:\software\pdi-ce-5.4.0.1-130\data-integration>Carte.bat carte-config-master-8080.xml
DEBUG: Using PENTAHO_JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files\Java\jre7
DEBUG: _PENTAHO_JAVA=C:\Program Files\Java\jre7\bin\java.exe
Carte 正在被调用,但它不接受 "HTTPS",我猜是因为以下错误:
validation.properties could not be loaded by any means. fail. Exception was: java.lang.IllegalArgume
classloader resource.
SecurityConfiguration for Logger.LogServerIP not either "true" or "false" in ESAPI.properties. Using
2017/02/02 15:33:31 - Carte - Using SSL mode
2017/02/02 15:33:31 - Carte - Created listener for webserver @ address : 10.67.110.93:8080
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.pentaho.commons.launcher.Launcher.main(Launcher.java:92)
Caused by: java.io.FileNotFoundException: C:\KEY_STORE\Pentaho (Access is denied)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
可以明显看出保存密钥的文件夹是无法访问的。我已授予该文件夹的完全访问权限。
P.S。 - 致力于 Pentaho Kettle Community Edition 5.4 & Windows 7
有什么建议吗?
文档中似乎有错误。
行
<keyStore>C:\KEY_STORE\Pentaho</keyStore>
文档状态
keyStore | Path to the keystore **file**. | Yes
重要的部分是 "...文件..."
尝试替换为
<keyStore>C:\KEY_STORE\Pentaho\keystore.jks</keyStore>
而且我更喜欢使用反斜杠
<keyStore>C:/KEY_STORE/Pentaho/keystore.jks</keyStore>
我有一个要求,Pentaho Carte 服务器需要接受 "HTTPS" 而不是默认的 "HTTP"。
我遵循了以下 link 但无济于事:
https://help.pentaho.com/Documentation/6.0/0L0/0Y0/060/060/010#Configuring_Carte_Servers_for_SSL
以下是我遵循的步骤:
使用 Keytool,我使用以下命令创建了一个
.jks
文件:keytool -genkey -keyalg RSA -alias selfsigned -keystore C:\KEY_STORE\Pentaho\keystore.jks -storepass password -validity 360 -keysize 2048
我在我的系统上编辑了
carte_config_master-8080.xml
文件,现在看起来是:<slaveserver> <name>master1</name> <hostname>10.67.110.93</hostname> <port>8080</port> <master>Y</master> <sslConfig> <keyStore>C:\KEY_STORE\Pentaho</keyStore> <keyStorePassword>password</keyStorePassword> <keyPassword>password</keyPassword> </sslConfig> </slaveserver>
可以看到我已经创建了
.jks
文件并在carte-config-master-8080.xml
中提到了它的位置。我调用 Carte 为:
C:\software\pdi-ce-5.4.0.1-130\data-integration>Carte.bat carte-config-master-8080.xml DEBUG: Using PENTAHO_JAVA_HOME DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files\Java\jre7 DEBUG: _PENTAHO_JAVA=C:\Program Files\Java\jre7\bin\java.exe
Carte 正在被调用,但它不接受 "HTTPS",我猜是因为以下错误:
validation.properties could not be loaded by any means. fail. Exception was: java.lang.IllegalArgume classloader resource. SecurityConfiguration for Logger.LogServerIP not either "true" or "false" in ESAPI.properties. Using 2017/02/02 15:33:31 - Carte - Using SSL mode 2017/02/02 15:33:31 - Carte - Created listener for webserver @ address : 10.67.110.93:8080 Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.pentaho.commons.launcher.Launcher.main(Launcher.java:92) Caused by: java.io.FileNotFoundException: C:\KEY_STORE\Pentaho (Access is denied) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(Unknown Source)
可以明显看出保存密钥的文件夹是无法访问的。我已授予该文件夹的完全访问权限。
P.S。 - 致力于 Pentaho Kettle Community Edition 5.4 & Windows 7
有什么建议吗?
文档中似乎有错误。
行
<keyStore>C:\KEY_STORE\Pentaho</keyStore>
文档状态
keyStore | Path to the keystore **file**. | Yes
重要的部分是 "...文件..."
尝试替换为
<keyStore>C:\KEY_STORE\Pentaho\keystore.jks</keyStore>
而且我更喜欢使用反斜杠
<keyStore>C:/KEY_STORE/Pentaho/keystore.jks</keyStore>