我希望在 FreeIPA 4.4 中的用户定义中添加字段。
现在我有修改了用户架构并在 Web UI 中添加了版本的字段。
现在我希望能够通过 JSON API 以及 CLI 工具更改新添加的字段(国家代码c
和国家名称co
)。这将需要更改现有的 API 调用,例如user_add
等user_show
。
我找到了此类插件的示例,但适用于 FreeIPA 3,似乎从那时起 Python API 就发生了变化,因为当我使用好的字段名称调整它们时,它们不起作用。我收到以下错误:
$ ipa
ipa: ERROR: ImportError: No module named plugins
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/ipalib/cli.py", line 1348, in run
api.finalize()
File "/usr/lib/python2.7/site-packages/ipalib/plugable.py", line 707, in finalize
self.__do_if_not_done('load_plugins')
File "/usr/lib/python2.7/site-packages/ipalib/plugable.py", line 422, in __do_if_not_done
getattr(self, name)()
File "/usr/lib/python2.7/site-packages/ipalib/plugable.py", line 586, in load_plugins
self.add_package(package)
File "/usr/lib/python2.7/site-packages/ipalib/plugable.py", line 613, in add_package
module = importlib.import_module(name)
File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/usr/lib/python2.7/site-packages/ipaclient/plugins/country.py", line 1, in <module>
from ipalib.plugins import user
ImportError: No module named plugins
ipa: ERROR: an internal error has occurred
网上是否有关于为 FreeIPA 4.4 的用户添加一两个新属性的最小示例?
精度不高,我知道至少一个例子功能齐全的插件,可添加全新类型的对象,但据我所知,它不适用于为已经存在的对象添加新字段的情况。