原创 OAuth使用简述 收藏
OAuth协议致力于使网站和应用程序(统称为消费方)能够在无须用户透露其认证证书的情况下,通过API访问某个web服务(统称为服务提供方)的受保护资源。更一般地说,OAuth为API认证提供了一个可自由实现且通用的方法。
在运行OAuth的web例子的时候,遇到问题的总结。
1、下载源代码
svn co http://oauth.googlecode.com/svn/code/java/ oauth-java
2、将core和example中的oauth-provider和webapp分别作为java项目导入eclipse中。
core 是一个项目
oauth-provider是一个项目
web是一个项目
3、将core作为一个jar从eclipse中导出,oAuth-core.jar
4、将oauth-provider以provider目录名部署到tomcat中
5、将webapp以web目录名部署到tomcat中
6、启动tomcat
7、访问 http://localhost/provider/ provider正常工作
8、访问http://localhost/web/index.jsp web正常工作
9、点击"Sample Provider",控制台提示错误信息为“java.security.NoSuchAlgorithmException: Algorithm HmacSHA1 not available”
10、修改 consumer.properties
原来的内容:sample.serviceProvider.baseURL: http://localhost:9090/oauth-provider/
修改后内容:sample.serviceProvider.baseURL: http://localhost/provider/
新增加一行:sample.consumer.oauth_signature_method: PLAINTEXT
oAuth目前支持HMAC_SHA1、PLAINTEXT、RSA_SHA1算法
验证的过程分别验证以下几部分内容:
oauth_token token
oauth_timestamp
oauth_signature
oauth_signature_method
oauth_consumer_key
分享到:
相关推荐
oauth2.0简述及其四种认证模式
OpenID和OAuth是互联网上两种重要的身份验证和授权协议,它们在确保用户数据安全和隐私保护方面发挥着关键作用。本文将对这两种协议进行详细解释。 **OpenID协议** OpenID是一个分散式身份验证协议,它允许用户...
- **用户代理(User-Agent, UA)**:指的是用户使用的浏览器或其他应用程序。 - **依赖方(Relying Party, RP)**:接受用户身份验证结果的一方,例如一个网站或应用程序。 - **OpenID提供者(OpenID Provider, OP)**:...
**OAuth2框架简述** OAuth2的主要目的是为了解决API的安全访问问题。它允许用户授权第三方应用代表他们与服务提供商进行交互,而无需透露用户的登录凭据。OAuth2定义了四个主要角色:资源所有者(Resource Owner)、...
本资源“2019-04-21_Spring5新特性简述及经典的高频面试题分析”涵盖了Spring5的关键更新以及程序员在面试中可能会遇到的问题,旨在帮助开发者深入理解和掌握这一版本的核心概念。 1. **响应式编程支持**:Spring5...
它通常利用Ajax或Fetch API与服务器通信,例如使用React Router进行路由管理。 3. **RESTful API**:后端通常以REST(Representational State Transfer)风格设计API,允许前端通过HTTP协议获取和更新资源。这促进...
security+oauth2使用rsa加密实现认证中心(我这里没有使用io.jsonwebtoken,实际上应该使用,nacos的源码也有使用jjwt,我没使用只是为了更好的熟悉security的部分源码) redis除了用作基本缓存以外,还是程序实现自动...
- **电子商务应用中的角色**:处理RESTful API请求,实现用户认证(OAuth2、JWT),管理数据库(如MySQL、MongoDB)操作,提供商品、订单、用户等服务接口。 2. **Angular框架** - **简述**:Angular是由Google...
6. **安全控制**:使用Spring Security或OAuth2进行权限管理和认证,保护用户数据和接口安全。 7. **测试**:使用JUnit和Mockito进行单元测试,SpringBoot的`@SpringBootTest`可以方便地进行集成测试。 8. **监控...
3. spring security+oauth2使用rsa加密实现认证中心(我这里没有使用io.jsonwebtoken,实际上应该使用,nacos的源码也有使用jjwt,我没使用只是为了更好的熟悉security的部分源码) 4. redis除了用作基本缓存以外,...
- **认证机制**:使用OAuth2.0进行认证。 - **请求格式**:采用HTTP/HTTPS协议,使用GET或POST方法发送请求。 - **响应格式**:返回JSON或XML格式的数据。 **3.3.4 示例** 以下是一些典型的API调用示例: - **...
1. **API概述**:这部分会对API的整体功能进行简述,包括它的主要用途、支持的技术栈以及适用场景。例如,API可能是用于数据检索、用户认证或者是后端服务的接口。 2. **API调用结构**:描述了API的URL结构,包括...
17. **第19章:PHP与框架** - 简述常见的PHP框架,如Laravel、Symfony、Yii等,及其在实际开发中的应用。 18. **第20章:PHP与版本控制** - 了解版本控制系统(如Git)的基本操作,以及如何在PHP项目中协同开发。 ...
3. **认证和授权**:API通常需要身份验证,文档会解释如何进行身份验证,比如使用OAuth2、JWT(JSON Web Tokens)等机制。 4. **请求方法**:API常见的请求方法有GET、POST、PUT、DELETE等,每种方法对应不同的操作...
6. **授权和安全性**:如果API需要身份验证,文档会说明如何获取和使用访问令牌,以及支持的安全协议,如OAuth 2.0。 7. **错误处理**:详述可能出现的错误代码及其含义,帮助开发者快速定位和解决问题。 8. **...
- **使用开放授权登录验证**:展示如何使用OAuth进行身份验证。 - **云服务**:探讨如何利用云服务增强QML应用的功能。 - **WebSockets**:讲解如何使用WebSocket实现实时通信。 - **总结**:总结网络技术在QML开发...
7. **Spring Boot**:简述Spring Boot的快速开发特性,如自动配置、起步依赖和Actuator。 8. **测试**:讲解Spring测试框架,包括单元测试、集成测试和Mockito的使用。 9. **安全**:讨论Spring Security,包括...
9. **身份验证与授权**:学习如何实现用户身份验证和角色授权,包括Windows身份验证、Forms身份验证和OAuth等。 10. **部署与性能优化**:介绍如何将ASP.NET应用部署到IIS服务器,以及性能监控和优化技巧,如缓存...
本章将介绍如何使用PHP开发RESTful API,调用Web服务,以及实现OAuth认证。 ### 第十四章:安全实践 在Web开发中,安全问题是不容忽视的。本章将讲解预防SQL注入、XSS攻击、CSRF攻击等常见安全威胁的策略。 ### 第...
6. 系统安全:采用OAuth2进行用户认证,JWT(JSON Web Token)进行授权,保障数据传输的安全。 三、系统实现 1. Vue.js前端:使用Vuex管理状态,Vue Router实现路由跳转,Element UI提供UI组件,提高开发效率。 2...