赞
踩
微服务做用户认证和授权一直都是一个难点,随着OAuth2.0的密码模式被作废,更是难上加难了。今天胖哥群里的一个群友搭建用户认证授权体系的时候遇到了一些棘手的问题,这让作者觉得是时候分享一些思路出来了。
两种思路
通常微服务的认证和授权思路有两种:
第一种非常简单,而且我在多个微服务项目中都是这样设计的。如果你从来没有设计过,我其实建议按这个思路去做,你只需要搞一个负责管理用户、角色权限的服务器,其它的微服务模块都作为资源服务器自行和这个用户授权服务器进行交互,加上三户模型体系就足以应对各种场景了。
第二种结合了OAuth2体系,网关不仅仅承担流量转发功能,认证授权也是在网关层处理的,令牌会中继给下游服务。这种模式下需要搭建一个UAA(User Account And Authentication)服务。它非常灵活,它可以管理用户,也可以让受信任的客户端自己管理用户,它只负责对客户端进行认证(区别于用户认证)和对客户端进行授权。目前使用OAuth2对微服务进行安全体系建设的都使用这种方式。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。