【问题标题】:How to handle auth in nifi-registry when calling from nifi in OIDC configuration?在 OIDC 配置中从 nifi 调用时如何处理 nifi-registry 中的身份验证?
【发布时间】:2021-12-07 23:35:57
【问题描述】:

我已经安装并配置了 nifi 和 nifi-registry。两者都配置为使用 OIDC 身份验证,并且在我的 OIDC 提供程序(Keycloak 服务器 FWIW)中进行身份验证后,我可以成功访问两者。

当我想启动进程组的版本控制时会出现问题。我已经在 nifi 中配置了 nifi-registry URL,但我无法列出 nifi-registry 中可用的存储桶。

事实上,当我查看 nifi-registry 日志时,我看到了这一点:

2021-10-21 09:36:27,487 DEBUG [NiFi Registry Web Server-17] o.a.n.r.w.s.a.IdentityFilter Attempting to extract user credentials using X509IdentityProvider
2021-10-21 09:36:27,488 DEBUG [NiFi Registry Web Server-17] o.a.n.r.w.s.a.x.X509CertificateExtractor No client certificate found in request.
2021-10-21 09:36:27,488 DEBUG [NiFi Registry Web Server-17] o.a.n.r.w.s.a.IdentityFilter Attempting to extract user credentials using JwtIdentityProvider
2021-10-21 09:36:27,488 DEBUG [NiFi Registry Web Server-17] o.a.n.r.s.a.BearerAuthIdentityProvider HTTP Bearer Auth credentials not present. Not attempting to extract credentials for authentication.
2021-10-21 09:36:27,488 DEBUG [NiFi Registry Web Server-17] o.a.n.r.w.s.a.AnonymousIdentityFilter Set SecurityContextHolder to anonymous SecurityContext

所以它被视为一个匿名请求,这解释了为什么我看不到来自 nifi-registry 的任何存储桶。

我找不到说明在此 OIDC 案例中应如何进行安全配置的文档。我在这里想念什么?在这种情况下应该如何传达用户身份验证?

【问题讨论】:

    标签: apache-nifi apache-nifi-registry


    【解决方案1】:

    我终于设法让它工作了,它实际上与 OIDC 无关。

    一旦正确设置 Nifi 和 Nifi Registry 之间的安全配置(如果需要,在 Nifi 的信任库中添加 Nifi Registry SSL 证书,在 Nifi Registry 中注册 Nifi 用户并授予代理用户请求权限,...),它工作正常并且 Nifi Registry 知道当前用户正在执行该操作。

    【讨论】:

    • 如果您对此有更多详细信息,我会很高兴。我似乎在努力让他们互相交谈。 OIDC 在两者上都运行良好。
    • 如果 OIDC 在两个组件上都运行良好,问题可能出在 NiFi 和 NiFi Registry 之间的安全配置上,尤其是: - 将 NiFi Registry 证书导入 NiFi 的信任库 - 给 NiFi(由其证书的 DN 表示) 代理用户请求的权限(这可以在 NiFi Registry 中的用户配置中完成)
    猜你喜欢
    • 2023-02-16
    • 2022-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-11
    相关资源
    最近更新 更多