52.8. 以外部 IdP 用户身份检索 IdM ticket-granting ticket
如果您已将身份管理(IdM)用户的身份验证委派给外部身份提供程序(IdP),IdM 用户可以通过向外部 IdP 进行身份验证来请求 Kerberos 票据授予票据(TGT)。
完成这个流程以:
- 在本地检索和存储匿名 Kerberos 票据。
-
使用带有
-T
选项的kinit
和 Secure Tunneling (FAST)频道在 idm-user-with-external-idp 用户请求 TGT,以便在 Kerberos 客户端和 Kerberos 分发中心(KDC)之间提供灵活的身份验证。
先决条件
- 您的 IdM 客户端和服务器使用 RHEL 8.7 或更高版本。
- 您的 IdM 客户端和服务器使用 SSSD 2.7.0 或更高版本。
- 您已在 IdM 中创建了对外部 IdP 的引用。请参阅创建对外部身份提供程序的引用。
- 您已与用户帐户关联了一个外部 IdP 参考。请参阅启用 IdM 用户以通过外部 IdP 进行身份验证。
- 您最初以 身份登录的用户对本地文件系统中的目录具有写入权限。
流程
使用 Anonymous PKINIT 获取 Kerberos 票据,并将其存储在名为
./fast.ccache
的文件中。$ kinit -n -c ./fast.ccache
[可选] 查看检索到的票据:
$ *klist -c fast.ccache * Ticket cache: FILE:fast.ccache Default principal: WELLKNOWN/ANONYMOUS@WELLKNOWN:ANONYMOUS Valid starting Expires Service principal 03/03/2024 13:36:37 03/04/2024 13:14:28 krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM
开始以 IdM 用户身份进行身份验证,使用
-T
选项启用 FAST 通信频道。[root@client ~]# kinit -T ./fast.ccache idm-user-with-external-idp Authenticate at https://oauth2.idp.com:8443/auth/realms/master/device?user_code=YHMQ-XKTL and press ENTER.:
- 在浏览器中,以命令输出中提供的网站的用户身份进行身份验证。
- 在命令行中,按 Enter 键来完成身份验证过程。
验证
显示您的 Kerberos ticket 信息,并确认对于带有外部 IdP 的预身份验证的行
config: pa_type
显示152
。[root@client ~]# klist -C Ticket cache: KCM:0:58420 Default principal: idm-user-with-external-idp@IDM.EXAMPLE.COM Valid starting Expires Service principal 05/09/22 07:48:23 05/10/22 07:03:07 krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM config: fast_avail(krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM) = yes 08/17/2022 20:22:45 08/18/2022 20:22:43 krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM config: pa_type(krbtgt/IDM.EXAMPLE.COM@IDM.EXAMPLE.COM) = 152
pa_type = 152
表示外部 IdP 身份验证。