让我们说我们有两个应用程序
ID为“user1”的用户。此用户登录App2后,我们要显示一个链接(App1链接),允许用户登录App1。用户点击链接后应该转到App1。
App2仅将使用私钥加密的用户ID传递给App1。它不会通过密码。
用户--------->外部App2 -----加密用户ID -----> CAS ===== App1
这是否可以实现,因为请求不包含密码? 你能不能指导我这个方法,因为这是我第一次参与CAS和SSO。
非常感谢您的帮助。
我们正在使用CAS 3.4和Spring 3集成。
答案 0 :(得分:1)
是的,这是可能的,在您的App1中,您无需检查密码,因为CAS将进行身份验证,而当您单击链接(APP1)时,在其他应用程序级别中,您必须传递访问令牌和用户名, App1你必须使用CAS库,那些库会检查请求是否来自可信站点,而Access令牌(这里我们称之为服务票证和代理授予票证)是否有效。完成这两项检查后,您的身份验证功能/方法将被执行(您必须像这样配置),如果您的数据库中存在用户名,您必须创建会话,并且您可以假设它已登录。功能可能因技术和要求而异。