Express 集成 OIDC 单点登录指南

本文以基于 Node.js 平台 Express 框架为例,以及集成 Node.js 身份认证中间件 Passport.js,详细介绍 Express 如何集成 Authing OIDC 单点登录

OIDC 协议:OIDC(OpenID Connect)是一个基于 O} Q _ wAuth2 协议的身份认证标准协议。OIDC 使用 OAuth2 的授权服务器来为第三方客户端提供用户的身份认证,并把对应的身份认证信q y *息传递给客户端,且可t J H + a U O以适用于各种类型的客户端。

Passport :Passport 是 Node.8 : 3 U ! k W G Mjs 的认证中间件,特别灵活和模块化。可非/ I v } ( ^常方便的植入任意基于 Express 的 Web 应用。支持用户名密码、Facebook 和 Twitter 等认证。

一、配置 Authing OIDC 应用

从 Authing.cn 注册并进入 Authing 控制台,创建 OIDC 应用,配置应用信息

详细配r X I z x o K l E置如下:
应用名: <应用名称>
认证地址:https://<应用域名>.authing.cn
回调 URL:应用登录后回调地址,例如:http://localhost:3004/auth/cb
授权模式:t { 6 C m默认 authorization_code、refresh_token、authing Token
返回类型:默认 code
token 换取时认证方式:默认 clieQ _ 6 6 | s Y 7 jnt_secret_pos + I 0 T H ) r [t
id_token 签名算法:默认 HS256

配置后,同时保存 OIDC 有效信息,便于` @ P 2 / T ^后文 Express 集成使用。
App Iv P ; N YD:5f34e94h O : Cbece5X F m [0b891729e345
App Secret:8226514d6740e5a} l g | @ Z 19q U . xcd94fad4991e02e9
Issuer:htE t s ctps://aj00.as : y a @ 2uthing.cn/oauth/oidc
配置信息:https://aj00.authing.cn/oauths [ /oidc/.well-known/oph T R jenid-confR , G 8 f j ) I oiguration
回调地址:http://localhost:3004/auth/cb
Express 集成 OIDC 单点登录指南

二、Express 集成 Authing OIDC

(1)Express 搭建本地% o m服务
Express 集成 OIDC 单点登录指南

(2)连接 OIDC 应用,注册 'o! ] b B [ ( 7 ] 4idc# 5 C t R 9 ( ;' 策略
Express 集成 OIDC 单点登录指南

(3)定义 OIDC 访问、回调、用户信息查询等接口
Express 集成 OIDC 单点登录指南

(4)除了以上核心步骤,存储 seR 8 dsssion 信息、序列化用户L V u 9信息、退出等内容,请参考以v q 7 r A M a p下本文完整的Express 集成 AutM ] e 4 hhing OIDC 的代码文件。
Express 集成 OIDC 单点登录指南
Express 集成 OIDC 单点登录指南
Express 集成 OIDC 单点登录指南

获取更多C @ f _资讯,请访问 Authing 官网
https://authing.cn