如果需要授予某个用户访问权限以登录到您的帐户(以您的身份),则可以通过 Kerberos 执行此操作而不必显示您的口令,方法是将 .k5login 文件放置在起始目录中。.k5login 文件是一个列表,其中包含一个或多个与要为其授予访问权限的各用户对应的 Kerberos 主体。每个主体都必须单独占一行。
假定用户 david 在其起始目录中按如下所示保存了一个 .k5login 文件:
jennifer@ENG.EXAMPLE.COM joe@EXAMPLE.ORG |
如果用户 jennifer 和 joe 在其各自的领域中已经拥有 Kerberos 票证,则此文件允许这两个用户采用 david 的身份。例如,jennifer 可以使用 david 的身份远程登录到 david 的计算机 (boston),而不必提供 david 的口令。
如果 david 的起始目录使用 Kerberos V5 协议从另一台(第三台)计算机挂载了 NFS,则 jennifer 必须具有可转发票证才能访问 david 的起始目录。有关使用可转发票证的示例,请参见创建 Kerberos 票证。
如果您要通过网络登录到其他计算机,则需要在这些计算机上的 .k5login 文件中包括您自己的 Kerberos 主体。
您可以随时通过从 .k5login 文件中删除主体来收回访问权限。
虽然在您的起始目录的 .k5login 文件中指定的用户主体对您在该计算机(或一组计算机,例如如果通过 NFS 共享 .k5login 文件)上的帐户拥有完全访问权限,但是,所有基于 Kerberos 的服务都将根据该用户的身份而不是您的身份来授权访问。因此,jennifer 可以登录到 joe 的计算机并在其中执行任务。但是,如果该用户使用基于 Kerberos 的程序(如 ftp 或 rlogin),则将以其自身身份执行此操作。
Kerberos 会记录获取票证的用户,以便系统管理员在必要时查找在特定时间可以使用您的用户身份的人员。
使用 .k5login 文件的一种常见方法是将其放置在 root 的起始目录中,从而为列出的 Kerberos 主体提供对该计算机的 root 访问权限。此配置允许系统管理员成为本地 root,或以 root 身份远程登录,而不必公布 root 口令,并且不需要任何人通过网络键入 root 口令。
假定 jennifer 决定以 root 身份登录到计算机 boston.example.com。由于在 boston.example.com 的 root 起始目录的 .k5login 文件中存在该用户的主体名称项,因此不必再次键入其口令。
% rlogin boston.example.com -l root -x This rlogin session is using DES encryption for all data transmissions. Last login: Thu Jun 20 16:20:50 from daffodil SunOS Release 5.7 (GENERIC) #2: Tue Nov 14 18:09:31 EST 1998 boston[root]% |