java openid方式_JOIDS(Java OpenID服务器)

相关开源项目

Gabriel:Gabriel是一用户权限验证安全框架.它的API很小并且易于使用.

JOID: JOID是OpenID1.x/2.0 Java类库让你实现RP(Relying Party)服务提供和客户端验证。

OpenSSO:Open Web SSO项目是SSO(单一登录)的一个开源实现。OpenSSO为部署在各种不同Web或应用服务器上的Web应用提供集中身份认证功能。这个项目基于Sun JavaTM System Access Manager,核心代码之上。

JOSSO:JOSSO(Java Open Single Sign-On)是一个开源的J2EE-based的SSO(SSO:单一登录技术是一种认证和授权机制,它允许注册用户只需要在任一成员网站上登录一次,而后授权访问其他连接的分支网站,无需再进行验证登录)基础结构.它的目的是提供一种用来解决在统一平台上进行用户集中认证的方案.

Kasai:Kasai是一个开源100%基于Java的认证与授权框架.它提供一个完善的,易于管理的许可方案来与你应用程序相结合的.这个框架的目的是为多用户应用程序提供一个使用简单但强大的安全环境.

JBoss SSO Framework:JBoss SSO Framework是一个组件集能够很容易集成到现有的web应用中提供单一登录功能.该框架已经能够支持一些重要的SSO标准如SAML。整个系统包括以下组件:

1.联合服务器(Federation Server)– 一个联合服务器用于为放置在不同安全域(security domain)中的web应用程序安全地传播Federation Token。

2.Token编排框架(Token Marshalling Framework)– 这是一组灵活的/可插件的Java API用来marshal/unmarshal一个Federation Token。该系统默认提供一个SAML兼容的编排器(Marshaller) 。

3.身份管管理框架(Identity Management Framework)–这是一组灵活的/可插件的Java API用来连接中中央身份存储库(Identity Store)。该系统默认提供一个Provider来连接基于LDAP的身份存储库。

JCas:JCas实现了一个免费,开源基于Java的CAS服务器.

NTRU: 这个项目是公钥加密系统NTRU:NTRUEncrypt与NTRUSign的一个实现。

Atlassian Seraph:Seraph是一个非常简单,可插入的J2EE Web应用程序安全框架.它主要基于以下几个核心组成部分:拦截器,它允许在安全事件发生(如登录/登出)的前后运行相应的代码.认证器,依赖一个后台用户系统来验证一个用户.控制器,这个控制器用来管理安全机制是否启用和失效.角色权限设置等.

OSUser:OSUser是OpenSymphony框架的一部分,它为用户管理提供了一组易于使用的API.这组提供的功能包括:

证书(Credentials)-用于验证用户的身份;

访问控制(Access Control)-决定是否允许用户去执行某一个任务;

管理(Management)-用于修改基础数据;

概要(Profile)-用户的个人详细资料和数据。

OSUser当前还没有正式发布但是可以通过CVS下载到1.0版本的源码包。完整的OSUser1.0版本也将很快会发布。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 后端获取 openID 是指在 Java 后端代码中获取用户微信公众号或小程序的 openID,以便后续进行用户信息的判断和业务逻辑的处理。下面我们一起看看具体的实现过程。 1. 授权获取 code 用户在微信公众号或小程序中点击登录按钮后,会跳转到微信的授权页面。我们需要在 Java 后端代码中,通过构造微信授权链接,将用户引导到该页面。 授权链接示例:https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect 参数说明: - appid:微信公众号或小程序的 appid - redirect_uri:回调地址,即用户在授权后跳转的链接 - response_type:授权类型,固定填写 code - scope:授权范围,snsapi_base 表示只获取用户的 openID - state:用于登录验证等操作,可以为空 - #wechat_redirect:固定的参数,表示要进行授权操作 2. 获取 access_token 获取 code 后,我们需要在 Java 后端代码中使用该 code 去换取 access_token,从而获取用户的 openID。 获取 access_token 的请求示例:https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code 参数说明: - appid:微信公众号或小程序的 appid - secret:应用的 app secret,推荐通过配置文件等方式进行安全保护 - code:授权码,即用户同意授权后获取到的 code - grant_type:固定填写 authorization_code 3. 解析 openID 获取 access_token 后,我们就可以通过 API 获取用户的基本信息,其中包括用户的 openID。 通过 access_token 获取用户信息的请求示例:https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN 参数说明: - access_token:获取到的访问令牌 - openid:用户的 openID - lang:语言版本,可为空,zh_CN 表示简体中文 以上就是 Java 后端获取 openID 的详细操作流程。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值