我想在安全的nifi中使用rest。我添加了sslcontextService和它的trustore JKS文件,但是当我使用带有这个url的invokehttp处理器来获取kerberos令牌:https://ip here/nifi-api/access/kerberos时,我得到了这个错误https://ip here/nifi-api/access/kerberos
发布于 2017-09-04 22:51:37
Apache NiFi或称为SSLPeerUndefinedException的底层库中没有异常类。我怀疑你遇到的是SSLPeerUnverifiedException。当远程端点不提供证书或无法验证证书链时,将引发此异常。
您可以采取几个步骤来尝试确定问题所在:
PrivateKeyEntry应该加载在密钥库(keystore.jks或类似的)中,但是信任库是不同的--它包含包含SubjectKeyIdentifier和各种证书指纹(MD5、SHA1、SHA-256)的trustedCertEntry,以便它能够断言呈现这些证书的服务的有效性。如果与InvokeHTTP处理器关联的InvokeHTTP无法验证NiFi提供的证书,则不允许连接。curl或其他命令行工具(如尼比比 )连接到NiFi API并验证连接。Kerberos票据用于身份验证--通过了解/拥有某种秘密价值来证明您/客户就是您声称的客户。授权,或确定允许的操作和特权,是一个单独的过程。
证书中的subjectAltName为空可能会导致新浏览器出现问题,因为RFC 6125规定必须首先检查SAN,但我不认为这里使用的okhttp库的当前版本强制执行了这一点。不过,为了将来的兼容性,您应该填充SAN字段。
https://stackoverflow.com/questions/46036573
复制相似问题