@nocobase/plugin-oidc (0.21.12)
Published 2024-04-16 14:13:53 +08:00 by sealday
Installation
@nocobase:registry=
npm install @nocobase/plugin-oidc@0.21.12
"@nocobase/plugin-oidc": "0.21.12"
About this package
OIDC
提供标准Open ConnectID接入登录功能。
本插件登录流程使用授权码模式 (Authorization Code Flow).
依赖
@nocobase/plugin-auth
提供表,模型函数复用等
使用方法
以Sign in with Google为例
https://developers.google.com/identity/openid-connect/openid-connect
获取Google OAuth 2.0凭据
Google Cloud控制台 - 创建凭据 - OAuth客户端ID
进入到配置界面,填写授权重定向URL. 重定向URL可以在Nocobase,新增认证器时获取,通常情况下为http(s)://host:port/api/oidc:redirect
.
完成后复制客户端ID和客户端密钥。
在NocoBase上新增认证器
插件设置 - 认证 - 新增 - OIDC
依次填写- Issuer - issuer由IdP提供,通常以
/.well-known/openid-configuration
结尾,Google的为https://accounts.google.com/.well-known/openid-configuration - Client ID - 客户端ID
- Client Secret - 客户端密钥
- scope - 选填,默认为openid email profile
- id_token signed response algorithm - id_token的签名方法,默认为RS256
- HTTP - 回调地址是否为http协议,默认https
- Port - 回调地址端口,默认为443/80
- Field Map - 如果需要将用户相关字段映射,可以在这里配置,默认昵称为openid.
在有email的情况下,登录时将尝试匹配已有用户,否则创建新用户。
Dependencies
Development Dependencies
ID | Version |
---|---|
@ant-design/icons | ~5.3.6 |
@formily/antd-v5 | 1.x |
@nocobase/schema | 0.21.12 |
ahooks | ^3.7.2 |
antd | 5.16.1 |
nanoid | 3.3.4 |
openid-client | ^5.4.2 |
react | ~18.2.0 |
react-i18next | ^11.15.1 |
react-router-dom | ^6.11.2 |
Peer Dependencies
ID | Version |
---|---|
@nocobase/actions | 0.21.12 |
@nocobase/auth | 0.21.12 |
@nocobase/client | 0.21.12 |
@nocobase/database | 0.21.12 |
@nocobase/plugin-auth | 0.21.12 |
@nocobase/server | 0.21.12 |
@nocobase/test | 0.21.12 |
Keywords
Authentication