Shiro+Webseal做单点登录
2016-06-30 00:00
309 查看
摘要: Shiro+Webseal做单点登录的要点就是设置Shiro的密码校验Hash
在日常的项目中,使用Shiro通常都会实现自己的AuthorizingRealm,在实现AuthorizingRealm的同时需要设置Hash算法及迭代次数。如下:
与Webseal做SSO时,只能获取到用户的ID,在没有密码的情况下告诉Shiro使用无密码验证。
AllowAllCredentialsMatche始终返回true。
最后一步就是在LoginController里加个SSO的方法,获取用户ID,生成Token对象,调用 login
还可以在SSO方法里做请求来源服务器的识别等,加强安全。
在日常的项目中,使用Shiro通常都会实现自己的AuthorizingRealm,在实现AuthorizingRealm的同时需要设置Hash算法及迭代次数。如下:
HashedCredentialsMatcher matcher = new HashedCredentialsMatcher(SystemService.HASH_ALGORITHM); matcher.setHashIterations(SystemService.HASH_INTERATIONS); setCredentialsMatcher(matcher);
与Webseal做SSO时,只能获取到用户的ID,在没有密码的情况下告诉Shiro使用无密码验证。
setCredentialsMatcher(new AllowAllCredentialsMatcher());
AllowAllCredentialsMatche始终返回true。
最后一步就是在LoginController里加个SSO的方法,获取用户ID,生成Token对象,调用 login
UsernamePasswordToken token = new UsernamePasswordToken(); token.setUsername(userId); UserUtils.getSubject().login(token);
还可以在SSO方法里做请求来源服务器的识别等,加强安全。
相关文章推荐
- Num63 前台用户注册&redis的简单java使用
- 实现td内容自动换行
- 获取星座的接口
- 麦田里的守望者》杂记
- 最简单的音频剪切和合并
- mysql触发器使用
- Jvm 内存分析-jstat -gcutil
- Java根据JSON的路径获取节点值
- java随机字符生成工具
- Visual Studio Xamarin中找不到iOS模拟器
- C语言的编译链接过程详解
- android 使用jni
- codeigniter在nginx安装配置及URL重写
- hbase client访问的超时时间、重试次数、重试间隔时间的配置(很重要)
- 3.osframe框架权限开发说明
- Java异常探索
- 使用ProxyGenerator类生成字节码
- 如何用Maven创建web项目(具体步骤)
- 编写php扩展(一)构建扩展的初步流程
- Android测试