docker - NiFi:为什么我的用户权限不足?
问题描述
我正在遵循https://hub.docker.com/r/apache/nifi的“独立实例,双向 SSL”部分中的步骤 。但是,当我访问 NiFi 页面时,我的用户权限不足。以下是我正在使用的过程:
生成自签名证书
mkdir conf
docker exec \
-ti toolkit \
/opt/nifi/nifi-toolkit-current/bin/tls-toolkit.sh \
standalone \
-n 'nifi1.bluejay.local' \
-C 'CN=admin,OU=NIFI'
docker cp toolkit:/opt/nifi/nifi-current/nifi-cert.pem conf
docker cp toolkit:/opt/nifi/nifi-current/nifi-key.key conf
docker cp toolkit:/opt/nifi/nifi-current/nifi1.bluejay.local conf
docker cp toolkit:/opt/nifi/nifi-current/CN=admin_OU=NIFI.p12 conf
docker cp toolkit:/opt/nifi/nifi-current/CN=admin_OU=NIFI.password conf
docker stop toolkit
将客户端证书导入浏览器
将.p12
文件导入浏览器。
更新 /etc/hosts
将“127.0.0.1 nifi1.bluejay.local”添加到 /etc/hosts 文件的末尾。
定义 NiFi 网络
docker network create --subnet=10.18.0.0/16 nifi
在容器中运行 NiFi
docker run -d \
-e AUTH=tls \
-e KEYSTORE_PATH=/opt/certs/keystore.jks \
-e KEYSTORE_TYPE=JKS \
-e KEYSTORE_PASSWORD=$(grep keystorePasswd conf/nifi1.bluejay.local/nifi.properties | cut -d'=' -f2) \
-e TRUSTSTORE_PATH=/opt/certs/truststore.jks \
-e TRUSTSTORE_PASSWORD=$(grep truststorePasswd conf/nifi1.bluejay.local/nifi.properties | cut -d'=' -f2) \
-e TRUSTSTORE_TYPE=JKS \
-e INITIAL_ADMIN_IDENTITY="CN=admin,OU=NIFI" \
-e NIFI_WEB_PROXY_CONTEXT_PATH=/nifi \
-e NIFI_WEB_PROXY_HOST=nifi1.bluejay.local \
--hostname nifi1.bluejay.local \
--ip 10.18.0.10 \
--name nifi \
--net nifi \
-p 8443:8443 \
-v $(pwd)/conf/nifi1.bluejay.local:/opt/certs:ro \
-v /data/projects/nifi-shared:/opt/nifi/nifi-current/ls-target \
apache/nifi
访问页面
当您访问 http://localhost:8443/nifi 时,系统会要求您选择一个证书。选择您导入的证书(例如管理员)。
在这一点上,我看到:
Insufficient Permissions
Unknown user with identity 'CN=admin, OU=NIFI'. Contact the system administrator.
在我看到的示例中,没有提到这个问题或如何解决它。
如何将权限分配给初始管理员身份?
解决方案
您缺少一行空格
-e INITIAL_ADMIN_IDENTITY="CN=admin,OU=NIFI"
查看错误消息。
推荐阅读
- sql-server - Laravel $dateformat 以一种方式工作
- r - 如何从数据框转换为嵌套的 json
- algorithm - 如何处理节点不相交路径的编码
- amazon-s3 - 有没有办法在笔记本中使用 PySpark 列出目录?
- bluetooth - Windows 10 上的蓝牙,禁用个人区域网络 (PAN) 配置文件
- java - 将值日期设置为 Jspinner 作为时间格式
- javascript - 每次触发A帧点击事件如何触发相关动画?
- node.js - Mongo 查询预订之间
- php - Razorpay OrderId 未使用 curl Php 获取 paymentId
- string - 如何转换 [i8; 88]到一些粘稠的东西