临时票据是不是多此一举
有点不理解这个临时票据的作用,用户在授权中心登录之后,直接把用户信息返还给请求端不就行了么,为什么要返还临时票据,请求端再拿着临时票据再请求一次,然后才给用户信息,这不是多此一举吗
70
收起
正在回答 回答被采纳积分+1
2回答
陈增强
2023-05-20 19:50:11
你好,在CAS协议中,是需要根据全局门票去获取临时票据。然后再根据获取到的临时票据获取用户会话。因为用户会话是用户在业务系统中重要的凭证,如果根据全局门票就能直接获取到用户会话其实是很危险的。
我认为临时票据这个设计的精妙之处在于以下两点:
一、提高系统的安全性。我们服务器传临时票据给业务系统是通过“重定向”将临时票据带出去给业务系统的。如果我们在重定向之前对 returnUrl 的合法性进行校验(属于公司的地址才重定向),就能在一定程度上保证安全,因为是重定向到我们公司自己的地址。即使全局门票被泄露了,别人也无法轻易根据全局门票拿到临时票据,也就无法拿到用户的会话这种敏感信息。
二、单一职责。全局门票负责标识用户在CAS登录过。临时票据用于获取用户的会话信息。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星