我将整合已经存在的。NET web应用程序,OAuth 2.0中编写的授权服务。NET与Java web应用程序一起使用DotNetOpenAuth。但我是。NET开发人员,所以几乎不了解Java。目标是从提供单一登录。NET web应用程序到使用此授权服务的Java web应用程序。
Java web应用程序所需的一切就是验证OAuth 2.0访问令牌是否发送给它,因为。NET web应用程序已从授权服务获取访问令牌。并且正在向Java web应用程序发出请求。在这种情况下,Java web应用程序被视为资源服务器(根据OAuth 2.0标准中的角色,为了获得令牌资源所有者凭据,使用.NET web app中的密码流)
DotNetOpenAuth发出的获取访问令牌请求的结果如下:
{
"access_token": "gAAAAH44atDAyWeu8BFwhLof7rtBRpiZrSlAC0zci8xU81tXHZDVkBX8LXrMLDHDYfimjuSOsdrXQIAY7Xf4JnK1x_fo_JSmvuiA5CvO5JUJNuEmHNSlR4ePO4tBPkOHQnN50DIRJMbHJdQrFZCqqaWz6s0iuvCuTMcTua6J0yaTPQaD9AAAAIAAAADHgef78SHh4-K2aZ87xYRoRFfmQ0lc3ET7Y5vAS7BadLM5btYvmrSkAWsCxhUji92D0LbKgyVkbQuuw5LnRP_zsxe_W_VztTqZ5m9PwJDL6q7McrUfiVQj_XBQqpv2slBeouD0F1k1KjVedR9Pwm7ganz4R7dmeYivnx8f0_isEGBqSZrtnILoit3SOCPyVxmIwizYwLE2bQOtlwVpqtrBMyzc4MVPVyaSiJb2-Lj5tOftEWl0k93Qmr8uzmjDyeCn3TsFX0f_qFgCmxp32_kt4ZTMf4zgmh5yUS1Hy7ERNQxpCIxRTx9yma7JN_K5Pss",
"token_type": "bearer",
"expires_in": 43200,
}
问题是应该使用什么java库来验证这个令牌?Spring安全OAuth?DotNetOpenAuth发布的访问令牌格式是否可以被这个java库解析和验证?
Java项目Eclipse Lyo
使用OAuth:
我在源代码验证中发现:https://eclipse.googlesource.com/lyo/org.eclipse.lyo.server/ /b0f230907c3135da5e65d663b8a8261f99cdc7b8/org.eclipse.lyo.server.oauth.webapp.sample/src/main/java/org/eclipse/lyo/server/oauth/webapp/sample/SecureHelloWorld.java