AuthManager
概览
AuthManager 是 NocoBase 中的用户认证管理模块,用于注册不同的用户认证类型。
基本使用
概念解释
- 认证类型 (
AuthType): 不同的用户认证方式,比如:密码、短信、OIDC, SAML 等。 - 认证器 (
Authenticator): 认证方式实体,实际存储到数据表中,对应某种认证类型 (AuthType) 的配置记录。一种认证方式可以有多个认证器,对应多个配置,提供不同的用户认证方法。 - 认证器标识 (
Authenticator name): 认证器的唯一标识,用来确定当前请求使用的认证方式。
类方法
constructor()
构造函数,创建一个 AuthManager 实例。
签名
constructor(options: AuthManagerOptions)
类型
详细信息
AuthManagerOptions
JwtOptions
setStorer()
设置认证器数据的存储和获取方法。
签名
setStorer(storer: Storer)
类型
详细信息
Authenticator
Storer
Storer 是认证器存储的接口,包含一个方法。
get(name: string): Promise<Authenticator>- 通过认证器标识获取认证器。在 NocoBase 中实际返回的类型是 AuthModel.
registerTypes()
注册认证类型。
签名
registerTypes(authType: string, authConfig: AuthConfig)
类型
详细信息
listTypes()
获取已注册的认证类型列表。
签名
listTypes(): { name: string; title: string }[]
详细信息
get()
获取认证器。
签名
get(name: string, ctx: Context)
详细信息
middleware()
鉴权中间件。获取当前认证器,进行用户认证。

