Java 启用身份验证后未打开NiFi web ui
在windows中配置了NiFi 1.1.1版本 我已启用具有以下属性的客户端证书身份验证 nifi.propertiesJava 启用身份验证后未打开NiFi web ui,java,ssl,openssl,apache-nifi,Java,Ssl,Openssl,Apache Nifi,在windows中配置了NiFi 1.1.1版本 我已启用具有以下属性的客户端证书身份验证 nifi.properties nifi.web.war.directory=./lib nifi.web.http.host= nifi.web.http.port= nifi.web.https.host=hostname nifi.web.https.port=8080 nifi.web.jetty.working.directory=./work/jetty nifi.web.jetty.thre
nifi.web.war.directory=./lib
nifi.web.http.host=
nifi.web.http.port=
nifi.web.https.host=hostname
nifi.web.https.port=8080
nifi.web.jetty.working.directory=./work/jetty
nifi.web.jetty.threads=200
nifi.security.keystore=./conf/ssl/server.keystore
nifi.security.keystoreType=JKS
nifi.security.keystorePasswd=server_password
nifi.security.keyPasswd=server_keypassword
nifi.security.truststore=./conf/ssl/server.truststore
nifi.security.truststoreType=JKS
nifi.security.truststorePasswd=server_password
nifi.security.needClientAuth=true
nifi.security.user.authorizer=file-provider
nifi.security.user.login.identity.provider=
nifi.security.ocsp.responder.url=
nifi.security.ocsp.responder.certificate=
authorizers.xml
<authorizer>
<identifier>file-provider</identifier>
<class>org.apache.nifi.authorization.FileAuthorizer</class>
<property name="Authorizations File">./conf/authorizations.xml</property>
<property name="Users File">./conf/users.xml</property>
<property name="Initial Admin Identity"></property>
<property name="Legacy Authorized Users File">./conf/authorized-users.xml</property>
<!-- Provide the identity (typically a DN) of each node when clustered, see above description of Node Identity.
<property name="Node Identity 1"></property>
<property name="Node Identity 2"></property>
-->
</authorizer>
<users>
<user dn="CN=Kumar">
<role name="ROLE_ADMIN"/>
<role name="ROLE_DFM"/>
</user>
</users>
一切都很好。NiFi服务器启动并获取日志,因为UI在以下URL中可用:
但当我在firefox和chrome浏览器中打开UI时,Nifi web url无法打开,它会显示出来
安全连接在firefox中失败
,在chrome中无法访问该站点
它没有要求客户端证书
我做错了什么?我怎样才能做到这一点
我们将不胜感激。提前谢谢 我建议使用ApacheNIFI的tls工具包来促进证书生成。它可以在单个命令中生成NiFi的证书颁发机构(导入浏览器)、密钥库和信任库以及客户端p12文件
您可以从NiFi下载页面获得它,作为NiFi工具包的一部分
NiFi(从1.0版开始)和NiFi工具包都需要运行Java8
如果您运行(将_主机名替换为实际主机名):
您应该得到一个包含密钥库、信任库、nifi.properties以及客户端证书的p12和密码文件的\u主机名目录
您需要将nifi-cert.pem作为受信任的CA导入浏览器,以便它知道它可以信任服务器
然后使用.password文件中提供的密码将客户端p12导入浏览器
(编辑代码格式,添加到答案中)好的,您对此有何疑问如何打开NiFi web ui?为什么它没有要求客户端证书?说真的,我不知道你是否创建了客户端证书并将其导入浏览器?这是0.x安装的升级吗?如果没有,您应该在authorizers.xml
中填充初始管理员标识,删除旧版授权用户文件值,删除conf/Users.xml
和conf/authorizations.xml
并重新启动NiFi。当我运行此命令时,我将获得“线程中的异常”主命令“java.lang.UnsupportedClassVersionError:org/apache/nifi/toolkit/tls/TlsTo olkitMain:Unsupported major.minor version 52.0”将证书导入浏览器后,工作正常。非常感谢您的帮助。@Kumar我很高兴为您工作:)。我编辑了答案以使其更清楚。我还将添加java 8要求。
bin/tls-toolkit.sh standalone -n YOUR_HOSTNAME -C 'CN=Kumar'