`
help
  • 浏览: 22094 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

OAuth2使用心得

 
阅读更多
一个企业下面如果将来准备做很多的产品,各个产品的用户又是公用的,那么设计一个“用户中心库”是很有必要的,这样一来,一个该企业的用户可以很方便的使用该企业下的所有产品而不需要反复注册。
有了上面这一个“用户中心”,那么很快就会产生一个问题-----相同的用户名和密码在各个产品直接很难维护,如果user1用户登录了A产品,用户想要修改密码那就灾难了,除非一个产品不提供这项功能,但是一个设计好的产品这样子的功能怎么能够不考虑呢!所以修改密码就必须引导用户去到一个统一的帐号管理中心页面去修改。看起来视乎问题解决了,但是当某一天登录A产品的用户user1要掉用B产品的某项涉及到用户user1的服务,那么考虑安全问题,很显然A产品必须提供user1用户名和密码给B产品去用户中心确认,如果产品多了怎么办,想想看就头疼,用户名和密码在产品之间到处飞。
那么这样子普遍的情况下,该怎么办才好呢?
OAUTH2就是专门解决这种问题而诞生的国际共识。


认证中心(AccessToken)<----->用户中心(UserInfo)
   ^                                                        |
   |         https                                      |token
   |                                                        v
短信中心  <---token------- 客服中心(app client_id=xxx client_secret=xxxxxxxxxxx)      

仔细研究oauth2会发现,产品之间关键的用户名和密码换成了一个token。那么现在安全了吗?
不过,如果被人获得了token和资源服务器请求接口的时候,不知道该怎么办?看起来如果不是获得用户的银行卡号和密码视乎还可以容忍。

分享到:
评论

相关推荐

    MYSQL使用过程心得及资料

    ### MySQL 使用过程心得及资料 #### 一、基本操作 **1. 登录MySQL** - **命令**: `# mysql -u root -p` - **说明**: 在没有密码的情况下直接按回车键即可登录。如果需要设置密码,可以使用以下命令: ```sql ...

    安卓期末课程设计、一款仿学习i强国的强国通App 包含源代码、使用手册和心得体会

    这个应用包含了完整的源代码、使用手册以及开发者的心得体会,对于学习Android移动软件开发的学生来说,这是一个宝贵的资源。以下是关于这个项目的详细知识点: 1. **Android应用程序开发基础**:首先,你需要了解...

    webservice 心得

    常见的安全措施包括使用HTTPS加密传输、数字签名验证消息完整性以及OAuth等认证机制。 3. **服务发现与注册**:为了方便客户端找到可用的服务,通常会使用UDDI(Universal Description, Discovery and Integration...

    安卓期末课程设计、一款刷小视频的App 包含源代码、使用手册和心得体会

    13. **使用手册和心得体会**:这部分内容提供了开发者在开发过程中的经验和技巧,包括遇到的问题、解决方案、优化策略等,对于学习者极具价值。 总的来说,这款安卓小视频App项目不仅覆盖了Android应用开发的基本...

    大学生安卓期末课程设计、一看仿菜谱的App 包含源代码、使用手册和心得体会

    在安卓开发中,这通常涉及到SQLite数据库的使用,用于存储用户数据,以及网络请求技术,如OAuth或Firebase Authentication,实现用户身份验证。 2. **菜谱内容展示**:这部分涉及数据的获取和呈现,可能包括图片、...

    安卓期末课程设计、一款大学生今日校园App 包含源代码、使用手册和心得体会

    开发者可能使用SharedPreferences或SQLite数据库来本地存储用户信息,同时,理解OAuth或JWT(JSON Web Tokens)等认证协议对于实现安全的用户认证至关重要。 4. **数据持久化**:在App中,用户的信息需要持久化存储...

    安卓期末课程设计、一款轻享的App 包含源代码、使用手册和心得体会 可以作为安卓(移动软件开发)期末课程设计参考

    本项目名为“轻享App”,它是一个包含了源代码、使用手册和心得体会的安卓应用,适合作为移动软件开发课程的参考。这个App旨在提供一个社交互动的平台,让用户能够分享、交流和获取信息。 轻享App的主要功能包括: ...

    webservice开发的一些心得体会

    以上就是关于“Web服务开发的一些心得体会”的主要内容。实践中,开发者需要根据具体需求选择合适的协议、框架和工具,同时关注服务的可扩展性、可靠性和安全性,以实现高效、稳定的Web服务系统。

    springboot+多数据源+shiro+springcloud.zip

    这是我自己为了学习springboot等相关知识搭建的一个简易的项目,里面主要包括springboot,shiro,mybatis,多数据源,springcloud的eureka集群,以及beetl的简单使用,springcloud的网关、oauth2授权等在其他的模块...

    招人心得iOS47道面试题

    ### 2. Objective-C基础 - **面向对象编程**:Objective-C是一种面向对象的语言,支持继承、多态等特性。了解类与对象的基本操作对于iOS开发至关重要。 - **消息传递机制**:Objective-C通过消息传递的方式实现方法...

    v2ex_flutter:使用Flutter SDK构建的www.v2ex.com演示应用程序

    这个名为“v2ex_flutter”的项目就是基于Flutter SDK创建的一个非官方V2EX应用,V2EX是一个热门的技术交流社区,它允许用户讨论各种技术话题,分享心得和资源。 在使用Flutter构建此类应用程序时,开发者可以充分...

    安全认证框架-Apache_Shiro研究心得

    ### 安全认证框架-Apache Shiro研究心得 #### Apache Shiro简介 Apache Shiro 是一个强大且易用的 Java 安全框架,提供了认证、授权、加密和会话管理功能,可以非常容易地开发出足够安全的应用——无论它们是部署...

    ddpushWebManager_ddpush使用php推送解决方案

    2. **数据库设计**:项目可能涉及到MySQL或类似的SQL数据库,用于存储推送消息、用户信息等。你需要理解数据库设计的基本原则,如ER模型,以及如何使用SQL语句进行数据查询、更新和删除。 3. **API接口调用**:...

    详解JWT token心得与使用实例

    在实际应用中,JWT还可能与其他技术结合,如OAuth2,用于授权第三方应用访问资源。此外,为了增加安全性,还可以使用更复杂的加密算法,并定期更新密钥。同时,需要注意对JWT的有效期管理,避免长期有效的JWT成为...

    基于Spring Boot的CMS内容管理系统项目的实习心得.zip

    同时,Spring Security还支持OAuth2和JWT(JSON Web Tokens)进行身份验证,确保了API的安全通信。 此外,为了实现CMS的可扩展性和灵活性,我们采用了微服务架构的思想,将系统拆分为多个独立的服务,如用户服务、...

    ASP.NET学习过程中总结的一些技巧

    2. **视图状态(ViewState)管理** ViewState是ASP.NET用于保持页面间控件状态的一种机制。在页面postback时,ViewState能确保控件的值不会丢失。然而,ViewState也会增加页面大小,影响加载速度。因此,需要合理使用...

    项目QQzone

    2. **OAuth认证**:为了安全地访问用户数据,开发者需要使用OAuth协议进行授权。理解并正确实现OAuth流程是QQzone开发的基础。 3. **前端技术**:项目可能包含HTML、CSS和JavaScript的使用,用于构建与QQzone交互的...

    物联网安全使用Wireshark分析网络数据包.docx

    **物联网安全:使用Wireshark分析网络数据包** 在物联网(IoT)环境中,网络安全...此外,了解最新的安全标准和最佳实践,如OAuth、TLS/SSL的最新版本,以及IoT设备特有的安全设计,都将有助于提升整体的网络安全水平。

    android新浪微博

    2. **网络请求**:使用HttpURLConnection或第三方库如OkHttp、Volley进行网络请求,获取和发送微博数据。考虑到性能和用户体验,可能使用异步请求和缓存策略。 3. **JSON解析**:微博API返回的数据通常是JSON格式,...

Global site tag (gtag.js) - Google Analytics