有没有人知道如何使用keytab在python脚本中进行kinit;那是为了避免提示输入密码?
谢谢
答案 0 :(得分:2)
我更喜欢使用诸如 krbcontext
之类的库:
from krbcontext.context import krbContext
with krbContext(using_keytab=True, principal='[username]@[REALM]', keytab_file='/etc/security/keytabs/[name].keytab', ccache_file='/tmp/krb5cc_pid_appname'):
pass
答案 1 :(得分:0)
from subprocess import Popen, PIPE
kinit_args - [ '/usr/bin/kinit', '-kt', '/home/username/username.keytab', 'username@realm' ]
subp = Popen(kinit_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
subp.wait()
答案 2 :(得分:-2)
这应该可以解决问题
from subprocess import Popen, PIPE
kinit = Popen(['kinit', 'userid@realm'], stdin=PIPE, stdout=PIPE, stderr=PIPE)
kinit.stdin.write('%s\n' % 'useridpass')
kinit.wait()
它不使用keytab
,但我不知道那是什么......