当NIFI未配置需要单向SSL(例如LDAP,OpenId Connect等)的替代认证机制时,NiFi的Web服务器将要求访问用户界面的用户使用基于证书的客户端身份验证。启用备用身份验证机制会将Web服务器配置为WANT证书基本客户端身份验证。这将允许它支持具有证书的用户,而没有证书的用户可以使用凭证登录
参考文档:http://nifi.apache.org/docs.html ==》 Admin Guide ==》 搜索https
NIFI搭建参考:【NIFI】 Apache NiFI 安装及简单的使用
NiFI 授权配置
前提:已搭建了单机版的NIFI
1、下载工具nifi-toolkit-1.8.0-bin.tar.gz,下载地址:http://mirror.bit.edu.cn/apache/nifi/1.8.0/nifi-toolkit-1.8.0-bin.tar.gz
2、解压工具,命令:tar -zxvf nifi-toolkit-1.8.0-bin.tar.gz
3、进入解压目录,使用命令生成密钥库
命令:./bin/tls-toolkit.sh standalone -n 'localhost' -C 'CN=Admin,OU=NIFI' -o 'target'
4、生成证书后,打开target目录中,讲 target/locahost 目录中 的三个文件拷贝到 NIFI实例的 conf 目录下,其中nifi.properties选着替换
命令:cp -rf localhost/* /data/soft/nifi-1.8.0/conf/
其中nifi.properties文件自动配置了内容如下:
1 # Site to Site properties 2 nifi.remote.input.host=localhost 3 nifi.remote.input.secure=true 4 nifi.remote.input.socket.port=10443 5 6 # web properties # 7 nifi.web.war.directory=./lib 8 nifi.web.http.host= 9 nifi.web.http.port= 10 nifi.web.http.network.interface.default= 11 nifi.web.https.host=localhost 12 nifi.web.https.port=9443 13 14 15 nifi.security.keystore=./conf/keystore.jks 16 nifi.security.keystoreType=jks 17 nifi.security.keystorePasswd=od1wIykZMftxH8BDHrIZy6VbPIbIqXAjbVHTOQhSjmQ\ 18 nifi.security.keyPasswd=od1wIykZMftxH8BDHrIZy6VbPIbIqXAjbVHTOQhSjmQ 19 nifi.security.truststore=./conf/truststore.jks 20 nifi.security.truststoreType=jks 21 nifi.security.truststorePasswd=LF4fCcSphZsd5Q8wY+yn8DseCbEPKzjxFD4j56wVfpU 22 23 24 # cluster common properties (all nodes must have same values) # 25 nifi.cluster.protocol.heartbeat.interval=5 sec 26 nifi.cluster.protocol.is.secure=true 27 28 # cluster node properties (only configure for cluster nodes) # 29 nifi.cluster.is.node=false 30 nifi.cluster.node.address=localhost 31 nifi.cluster.node.protocol.port=11443
注意:NIFI启用HTTPS时,重要的nifi.web.http.port
是取消设置属性。NiFi仅支持在HTTP 或 HTTPS 上运行,而不是同时支持。
5、
6、启动nifi实例,使用浏览器进行访问,地址:https://localhost:9443
第一次访问如图:
7、给浏览器添加证书(target/CN=Admin,OU=NIFI.p12),密码在文件(target/CN=Admin,OU=NIFI.password)中
8、刷新浏览器,继续访问,即可登录成功