首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache NiFi:使用基于文件的提供程序引导UserGroups和策略

Apache NiFi:使用基于文件的提供程序引导UserGroups和策略
EN

Stack Overflow用户
提问于 2019-02-15 12:40:55
回答 1查看 334关注 0票数 0

可以用基于文件的提供程序引导UserGroups和策略吗?

目前,我们使用org.apache.nifi.authorization.FileUserGroupProvider引导Initial User Identity,使用org.apache.nifi.authorization.FileAccessPolicyProvider在设置NiFi实例时引导Initial Admin Identity

我检查了FileUserGroupProvider的代码以及管理指南中的Authorizers.xml设置,但是我找不到任何关于引导UserGroups的信息。我想使用AccessPolicies引导FileAccessPolicyProvider也是如此。我知道使用LDAP是可能的,但我们现在不使用它。

我已经在StackOverflow上找到了一个类似的问题,但是解决方案并不令人满意,因为如果不是绝对必要的话,我们不想使用nifi来执行这个任务。因此,我要做的是编写一个基于UserGroupProvider和AccessPolicyProvider的新文件来完成这个任务。

这是唯一的可能吗?

我是否会为此使用CompositeUserGroupProviderCompositeConfigurableUserGroupProvider,所以,与其重新实现FileUserGroupProvider的功能并添加自定义实现,不如使用它来组合这些功能吗?

意思是这样的:

代码语言:javascript
复制
<userGroupProvider>
  <identifier>composite-user-group-provider</identifier>
  <class>org.apache.nifi.authorization.CompositeUserGroupProvider</class>
  <property name="User Group Provider 1">org.apache.nifi.authorization.FileUserGroupProvider</property>
  <property name="User Group Provider 2">MyFileUserGroupProvider</property>
</userGroupProvider>

authorizers.xml文件中的配置会是什么样的呢?

如果我关于如何使用CompositeProvider的假设是正确的,那么对于引导策略是否有类似的假设呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-15 15:44:12

如果我正确理解,您希望自动将用户、组和策略设置为固定的、预定义的值。

我建议您使用FileUserGroupProviderFileAccessPolicyProvider,因为它们都使您能够在NiFi本身中直接配置用户、组和策略。您不应该创建UserGroupProvider或AccessPolicyProvider的自定义实现,除非您需要自定义包含的基于字段的提供者所能提供的功能之外的功能。

您说过不想使用nifi,我假设您指的是。(我并不是想变得迂腐,实际上有一个名为nifi的库,它是nifi开发人员在编写扩展时使用的Java接口的集合。)REST APi通常是我推荐的一个很好的选项,因为在NiFI 1.x上有向后兼容性的保证,但这并不是实现您想要做的事情的唯一方法。

您可以在users.xml之外手动创建NiFi和authorizations.xml文件(或脚本),只需配置FileUserGroupProvider和AccessUserGroupProvider就可以使用这些文件(或者将它们复制到conf目录中这些文件的默认位置)。在启动时,NiFi将这些文件的内容读入内存,以创建用户、组和访问策略。初始用户和初始管理属性仅用于在这些文件缺席或空时自动填充这些文件,因此如果您自己提供这些文件的副本,则将使用它们。

这些XML文件的结构非常容易创建。您可以使用NiFi实例通过UI创建用户、组和策略,并查看写入这些文件的内容。然后,您可以随意创建它们:手工创建的NiFi UI,或者从另一个源文件编写的脚本。一旦创建了文件,就可以通过将它们放置在NiFi conf中并(重新)启动它们来执行“引导”部分。除非用户、组和策略在UI中被修改,否则NiFi不会重新生成或修改这些文件。

这些方法的唯一缺点是,这些文件不能保证将来有一个稳定的模式。因此,随着时间的推移,新的字段可以添加或更改。尽管如此,在NiFi的最后几个版本中,它们一直是稳定的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54709616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档