如何检查(在shell中)我是否拥有特定服务的有效Kerberos票据?

问题描述:

我想能够检查(在我bash脚本)我是否有特定服务的有效未过期的车票。我可以通过手,如果我这样做klist得到这个信息,但是这将是一个工作位以编程方式解析的到期时间,服务主体等是否有更简单的方法来做到这一点?谢谢。如何检查(在shell中)我是否拥有特定服务的有效Kerberos票据?

+0

MIT或Heimdall? –

+0

(顺便说一句,如果你是* *打算这样做解析自己,我也希望你先检查[BashFAQ#1](http://mywiki.wooledge.org/BashFAQ/001);它可能比工作量少您认为)。 –

+0

@CharlesDuffy我在RHEL所以我相信(但不知道),它的麻省理工学院。我如何确认?谢谢! –

尝试klist -s,如果你有一个有效的股票应该返回0状态码,或1如果不是。然后您可以通过查看$?来进行测试。例如:

if ! klist -s 
then 
    echo "kerberos ticket not valid; please run kinit" 
    exit 1 
fi