基于SAML2.0单点登录的实现(JAVA)

一、实现流程
链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-
二、git中下载sp程序,部署服务,并调试,确保与idp可以通信。
1、下载地址
https://github.com/vdenotaris/spring-boot-security-saml-sample
2、配置证书,修改 \src\main\resources\update-certifcate.sh,并运行,会根据配置生成jks证书。解决SSL peer failed hostname validation for name: null错误
注:update-certifcate.sh解释:从IDP_HOST、IDP_PORT的地址获取证书存入临时ssocircle.cert中,根据ssocircle.cert生成samlKeystore.jks文件。
如果自己有cert证书,请修改update-certifcate.sh 根据自己的cert证书生成 jks。
3、修改WebSecurityConfig.java

String idpSSOCircleMetadataURL = "自己idp地址"; //指向 federationmetadata.xml
HTTPMetadataProvider httpMetadataProvider = new HTTPMetadataProvider(this.backgroundTaskTimer, httpClient(), idpSSOCircleMetadataURL);
extendedMetadataDelegate.setMetadataTrustCheck(false); // 不改成false好像不能过

4、部署并启动
5、访问 http://localhost:8080/saml/metadata 下载 spring_saml_metadata.xml,并在idp中进行配置。(通信需要)。
6、修改LandingController方法

@RequestMapping("/landing")
	public String landing
  • 2
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值