跳到主要内容

1.4. Authorization (授权)

作为认证服务, Kerberos 提供了验证网络上主体身份的方法。认证通常主要用作授权过程中的第一步, 确定客户端是否可以使用服务、客户端被允许访问哪些对象以及每个对象允许的访问类型。Kerberos 本身不提供授权。拥有服务的客户端票据仅提供客户端对该服务的认证, 在没有单独的授权程序的情况下, 应用程序不应认为它授权使用该服务。

单独的授权方法可以 (MAY) 作为特定于应用程序的访问控制功能来实现, 并且可以利用应用程序服务器上的文件、单独颁发的授权凭证 (例如基于代理的凭证 [Neu93]) 或其他授权服务。单独认证的授权凭证可以 (MAY) 在由 KDC 颁发的授权数据元素封装时嵌入到票据的授权数据中。

应用程序不应接受 Kerberos 服务器 (即使是修改过的 Kerberos 服务器) 仅仅颁发服务票据就授予使用服务的权限, 因为在提供其他应用程序认证选项的环境中, 或者如果它们与其他 KDC 互操作, 这样的应用程序可能容易受到此授权检查被绕过的攻击。