微服务认证鉴权场景分析与Apache ServiceComb-fence

微服务环境下,认证鉴权变得复杂。本文通过Apache ServiceComb-fence项目,探讨了系统内部认证、使用第三方认证及提供认证能力的场景,并介绍了该项目的蓝图、功能规划和当前进展,旨在解决分布式认证的安全性和效率问题。
摘要由CSDN通过智能技术生成

微服务化以后,应用的认证鉴权面临多方面的挑战。本文结合 Apache ServiceComb-fence 项目的实践,分享认证鉴权设计需要考虑的一些问题,以及 Apache ServiceComb-fence 总体认证鉴权支持的一个蓝图。

 

1 认证鉴权的场景

传统的一些应用,认证鉴权相对比较简单。用户通过输入用户名密码登录系统,系统根据用户角色信息判断用户是否具备操作权限。这是一种相对孤立的封闭系统。现在的互联网应用,不仅需要访问本应用的资源,还需要访问第三方的资源,同时还提供接口给第三方使用。应用的接入形式是多样化的,有手机,WEB客户端,API访问等。认证的方式包括用户名密码、手机验证码、人脸识别等。微服务化架构,需要考虑分布式的认证鉴权机制,保证分布式认证的安全性和高效性。

1.1 系统内部的认证鉴权

很多应用都有自己的用户和权限管理系统,用户注册后,就拥有了访问应用的权限。系统内部的认证机制已经比较成熟,但是需要考虑的场景仍然非常多样。

从登陆方式看,有如下一些场景:

  • 使用用户名密码登录。用户名可以是手机号、邮箱、工号等,同时需要增加验证码功能,以防止暴力破解。

  • 使用多重因子认证。除了用户名密码,很多系统还需要提供双重因子认证,比如手机验证码、实名认证(人脸识别),数字证书(U盾),动态口令(E-Token,Authentication APP、等)。

  • 人机接口和机机接口需要设计不一样的认证方案。前面的认证方式一般适用于人机接口,机机接口一般会基于Token或者共享秘钥、密钥对等方式完成认证。区分了人机接口和机机接口,还需要对不同的接口做好访问控制和网络隔离。

在微服务架构下,还需要考虑认证的性能。传统的会话管理模式需要共享会话状态实现认证,这个对于认证服务的性能是非常大的考验,容易成为整个系统的瓶颈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值