python库解析krb5.conf文件

时间:2019-01-27 15:44:59

标签: python kerberos ini

是否有任何可用于解析krb5.conf文件的python库。我需要解析krb5.conf来提取auth_to_local规则,然后将它们传递给kafka,因为kafka不能正确地提取出用户名,而无需这样做。

我试图找到这个,但到目前为止还没有运气,因此是一个问题。

我的krb5.conf如下图

includedir /etc/krb5/conf

[libdefaults]

default_keytab_name = /etc/krb5/krb5.keytab
default_realm = EXAMPLE.COM

[realms]
EXAMPLE.COM = {
  auth_to_local_realm = UNIX.EXAMPLE.COM
  auth_to_local = DEFAULT
}

UNIX.EXAMPLE.COM = {
                 acl_file = /var/tmp/file
             admin_keytab = /var/tmp/keytab
}

[logging]
        kdc = abc
        kdc = pqr
        default = klm
[appdefaults]
kinit = {
  renewable   = true
  forwardable = true
}
field=value

1 个答案:

答案 0 :(得分:-1)

该文件为Windows INI文件格式,您可以使用此模块进行解析:

https://docs.python.org/3/library/configparser.html

import configparser

config = configparser.ConfigParser()


config.read('/tmp/krb5.conf')

print(config.sections())

输出:

['libdefaults', 'realms', 'domain_realm', 'capaths']
>>> 
[Finished in 0.2s]