要求用户首先接受一些仅存在于serviceA中的许可协议,以便能够登录所有其他服务。
所以这个过程应该是:
笔记: 无法修改serviceS以外的服务代码。 CAS也可以访问协议接受标志。
使用的CAS版本:5.3.4
假设agreement_accepted
是身份验证用户的属性,您可以设计两个适用于服务A和所有其他应用程序的访问策略S1和S2。
agreement_accepted
作为属性具有值,例如true
。服务/应用程序的访问策略详述如下:https://apereo.github.io/cas/5.3.x/installation/Configuring-Service-Access-Strategy.html
您需要确保将S2分配给所有其他应用程序,但服务A的记录除外。
PS您也可以考虑将CAS版本提高到5.3.8,这是本文撰写时5.3.x中的最新版本。