我是如何编写一个单点登录系统的

我是如何编写一个单点登录系统的

本文将从“后端逻辑”及”前端“两个层面介绍我是如何设计一个单点登录系统的。
除有特殊说明外,本文所描述的所有逻辑均在单点登录系统中(后端、前端授权页)实现,请不要混淆将其用于第三方应用程序中。

对于单点登录系统,目前有很多商业公司都提供成熟的解决方案,如国外的 Okta、Auth0、Duo 和国内公司的 Authing,这些商业化的解决方案都非常成熟,适合有足够预算和对安全性、可用性高的企业使用。
单点登录不仅仅可以用于企业内部对员工身份的鉴权(B2E),也可以用于对客户身份的鉴权(B2C)
我第一次尝试设计单点登录系统是在 2020年年末,当时我第一次有了身份认证的需求,我所设计的第一版单点登录系统后端是基于 Python Flask 的,前端非常简陋,仅仅有一些基本功能:

Read more
利用 NewRelic 以非介入方式监控 Nodejs 服务

利用 NewRelic 以非介入方式监控 Nodejs 服务

NewRelic 是一个数据监控平台,该平台提供系统(Windows、Linux、Docker)、代码(PHP、Nodejs、Python等)的监控服务,相关监控探针全部开源(所以平台本身类似于一个数据集中管控平台)。

不过比较可惜的是,他们没有提供私有部署服务,但因为 NewRelic 有在欧盟提供服务的能力,故隐私方面无需过多担心。

NewRelic 提供免费的基本计划,免费计划对于个人甚至中小型企业而言可以说是十分豪华的,当然其也与 Github 合作,所有拥有教育认证的 Github 账户均可以申请开通教育版本计划(说是价值300$一个月,且没有规定最长使用时间)。

本文演示 Nodejs 代码接入,如果你使用的是 Vercel 的 Serverless,则无需看本文,因 Vercel 有官方的 NewRelic 插件,鼠标点一下就好。

Read more

Bilibili API

Api 列表:

1.视频信息类:通过(BV/AV) 号获取视频详细信息、通过(BV/AV) 号获取视频数据信息(点赞转发收藏弹幕数量等)(可用于AV BV号转换)
2.(通过AV号)获取视频评论/评论的子评论(评论的评论) (及置顶评论):获取视频评论、获取视频置顶评论、获取评论的子评论
3.个人信息:获取个人信息、获取用户收藏夹
4.主站:综合热门、音乐排行
5.哔哩哔哩公益:公益概览(公益项目个数、总捐款金额、总捐款人数,及首页的项目)、项目详细信息、项目详细捐款记录(最近100条)(脱敏)


Read more