首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Caddy登录系统

Caddy登录系统
EN

Stack Overflow用户
提问于 2021-04-13 10:29:01
回答 1查看 534关注 0票数 0

最近,我成立了凯迪公司,以代理我在互联网上的所有服务。为了保持所有的组织,我第一次开始使用NodeJS来呈现一个带有指向所有服务的链接的定制主页。问题是,我希望在主页级别实现一个登录sistem,并对用户进行身份验证,这样他就可以连接到由Caddy代理的所有服务。

我的想法是实现一个基于cookie的登录系统,并不断更新,这样对于站点的每个端点,只有执行有效授权cookie的用户才能访问。

我在网上查看了如何创建登录系统,并发现了一些使用passportjs和本地策略的资源,我不知道如何从这些资源中创建令牌和授权coockies。我发现了一个名为passport的库,但我需要在每次登录时都有一个授权cookie列表,以将其提供给Caddy,并保护节点不受控制的端点。我怎么能这么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-13 11:58:33

要实现你的目标,有几种选择:

  • Basic auth

保护您的服务的最简单的解决方案是basically,它基本上告诉用户浏览器询问用户名和密码,然后发送到服务器。

https://caddyserver.com/docs/caddyfile/directives/basicauth

即使设置起来非常快,您也会失去一些好处,比如精细的访问控制和用户更改用户名/密码的能力。

  • OAuth

OAuth允许用户使用自己的帐户登录,例如从谷歌或Facebook登录。看看这个完整的卡迪奥斯系统:https://github.com/greenpau/caddy-auth-portal

  • JWT -构建您的own

最后,如果您想利用这个挑战作为学习机会,可以查看基于JWT的身份验证。看看这个模块:https://github.com/greenpau/caddy-auth-jwt

这将使您能够在node.js应用程序中发出JWT令牌,然后由Caddy进行验证。

显然,所有这些解决方案确实需要一些研究和技巧,我将把它们按升序执行的难度打分,而您构建自己的Auth系统的计划是最困难的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67073130

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档