当前位置: 首页 > 后端技术 > Node.js

2019年6个JavaScript用户认证库

时间:2023-04-03 16:01:30 Node.js

来源:公众号《前端全栈开发者》“在两周内为我构建一个用户认证系统”是现在研发团队的常用词。由于种种原因,这个任务交由团队中的开发人员来解决。一方面,你真的不想浪费很多时间。另一方面,您担心此类信息最好由您内部编写的服务处理,以便以后可以更好地扩展。随着网络上出现新教程(一个好的开始),越来越多的团队正在尝试了解实施自己的解决方案与使用库或服务的成本效益方程式,希望这会节省一些时间并做更多明智的决定。1.PassportJSPassport不仅仅是一个15k星的用户认证库,它可能是JS开发者使用外部库进行用户认证最常用的方式。这个库基本上为Node.js提供了相对灵活和模块化的中间件,可以集成到任何基于Express的Web应用程序中。它也是一个社区平台,支持各种常见的身份验证,例如用户名和密码、Facebook、Twitter等。如果您不想实施自己的解决方案,它可能是第一个选项。2.Auth0虽然这不是图书馆,但它是一项服务,这是完成工作的可靠而快速的方法。Auth0是一家(规模相当大的)初创公司,为网络、移动和遗留应用程序提供广泛的通用身份验证和授权平台。有人说它是最接近Plataformatec的RubyonRailsDevise的解决方案,只是您可以使用任何语言与任何应用程序或API进行交互。有超过100个预构建的集成。3.PermitPermit是一个1k星项目,为构建Node.jsAPI提供“不受限制”的身份验证库。Permit允许您向任何Node.jsAPI添加身份验证层,并可与Express、Koa、Hapi和Fastify等框架一起使用。它可以与从REST到GraphQL的多种类型的API一起使用,因此它是一种“非规范化”设计。Permit旨在专注于API(无状态请求)和Express以外的支持框架。它还在积极开发中,使“许可”成为一个值得考虑的有趣选项。4.Grant一个相当新的、有前途的库,它为Express、Koa和Hapi提供OAuth中间件,拥有超过180个受支持的提供者和一个现场游乐场。如果您想将它与您自己的私有OAuth提供程序一起使用,您可以自己指定所需的密钥。虽然该库已经开始受到关注(超过1Kstar),但资源相对匮乏,请谨慎尝试。5.Feathers认证管理Feathers是一个开源(11000颗星)NodeJS实时微服务Web框架,可让您通过RESTful资源、套接字和灵活的插件来控制数据。Feathers还提供了鉴权和鉴权管理模块,允许你在本地Feathers鉴权中添加注册验证、忘记密码重置等功能。这个想法是在一个灵活的基础设施中结合不同的身份验证方法。6.只使用Firebase身份验证(适用于小型应用程序)这可能不一定是在扩展平台中管理用户授权的长期解决方案(或者是吗?),但是,对于通过Firebase部署的应用程序来说,这是一个非常快速轻松地完成工作的有用方法。Firebase身份验证提供后端服务、一个易于使用的SDK和一个随时可用的UI库来对您的应用程序的用户进行身份验证。它支持使用密码、电话号码、流行的联合身份提供商(如Google、Facebook和Twitter)进行身份验证。