NiFi:为什么我的用户权限不足?
NiFi: Why Does My User Have Insufficient Permissions?
我正在按照 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 时,系统会要求您 select 证书。 Select 您导入的证书(例如 admin)。
此时,我看到:
Insufficient Permissions
Unknown user with identity 'CN=admin, OU=NIFI'. Contact the system administrator.
在我看到的例子中,没有提到这个问题或如何解决它。
如何为初始管理员身份分配权限?
您在第
行缺少 space
-e INITIAL_ADMIN_IDENTITY="CN=admin,OU=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 时,系统会要求您 select 证书。 Select 您导入的证书(例如 admin)。
此时,我看到:
Insufficient Permissions
Unknown user with identity 'CN=admin, OU=NIFI'. Contact the system administrator.
在我看到的例子中,没有提到这个问题或如何解决它。
如何为初始管理员身份分配权限?
您在第
行缺少 space-e INITIAL_ADMIN_IDENTITY="CN=admin,OU=NIFI"
查看错误消息。