Answers:
愚蠢的我,您可以简单地使用以下命令:
echo "password" | kinit aduser@REALM
尽管您可以将密码硬编码到自动化系统中,但更正确的Kerberos方法是为主体创建密钥表,然后使用该密钥表进行身份验证。 kinit
支持使用-k -t <keytab-path>
选项从密钥表进行身份验证。
密钥表的主要优点是它将凭据隔离在单独的文件中,并且可以由各种Kerberos软件直接使用(因此,您不必添加代码即可从单独的文件中读取密码)。也可以使用标准命令(使用AD KDC,使用ktpass
)来创建它。如果您拥有Linux KDC,还有更多优势,例如,轻松地将存储在密钥表中的密钥随机化,而不是使用较弱的密码。
-norandkey
密码,请不要在不使现有密码无效的情况下使用ktadd中的标志。
根据手册页,您可以使用:
kinit --password-file="~/my.secret" aduser@REALM.COM
因此,您仅可以通过文件提供密码。
echo -n "$PASS" | kinit "$USER"
不输出结尾的换行符