急!和第三方系统对接,实现免登录,如何绕过shiro权限验证?

项目本身是用jfinal框架开发的,权限框架用的是shiro,现在需要和第三方对接,将我们的系统挂在他们系统中某个菜单里,在他们系统中登录之后,点击链接跳转到我们系统,绕过登录验证,直接进入系统,但是还会用到shiro的一些权限验证功能,只是登录的时候,绕过去。(前提是他们的用户会提前推给我们入库,密码我们设个死值)

有没有大概思路?在线等,谢谢各位大神!

评论区

JFinal

2017-11-28 11:38

在 controller 中新建一个专用 action,专门接受这些请求,然后用 shiro 对这个 action 配置好访问权限

吃饱了晒太阳

2017-11-28 11:45

@JFinal 那用户名,密码,角色,权限那些信息,怎么交给Shrio呢?

JFinal

2017-11-28 11:48

@吃饱了晒太阳 你前面的需求是:如何绕过shiro权限验证

finally

2017-12-05 00:23

自己做个简单的单点登录不就完了.你开放2个action,一个action传给你用户名和你们提供给第三方的密码 你们返回给第三方系统一个token,第三方把token作为参数放在你的第二个action上在客户浏览器上访问,你根据token认证是不是合法的,然后不就登录成功了,和你用户密码校验一样,只不过一个是用户输入用户密码,一个是根据token.这个比让第三方系统去实现OAuth2.0简单,开发工作量不大.我估计是你们项目要被集成到企业的OA或企业门户.
@吃饱了晒太阳

吃饱了晒太阳

2017-12-05 13:24

@finally 嗯好的,谢谢您啊,实际上还是我对shiro不了解,所以描述的可能不太正确,刚您提到了token,这个很关键,我试试

jack_bc

2018-01-05 11:18

@finally 我现在有个问题 两个系统的密码不一样 然后在认证的时候 判断如果是b系统跳转过来的 就把密码设置一个死值 进行原系统的登录和授权 但是问题来了 在原系统 用同一个账号就不能登录了 因为shiro授权的时候 用的是你设置的死密码 跟原系统密码不一致 请问 怎么破

热门反馈

扫码入社