Ця документація була автоматично перекладена штучним інтелектом.
AuthManager — це модуль керування автентифікацією користувачів у NocoBase, який використовується для реєстрації різних типів автентифікації користувачів.
AuthType): Різні методи автентифікації користувачів, наприклад: пароль, SMS, OIDC, SAML тощо.Authenticator): Сутність методу автентифікації, яка фактично зберігається в колекції, відповідає запису конфігурації певного AuthType. Один метод автентифікації може мати кілька автентифікаторів, що відповідають різним конфігураціям, надаючи різні методи автентифікації користувачів.Authenticator name): Унікальний ідентифікатор для автентифікатора, використовується для визначення методу автентифікації для поточного запиту.constructor()Конструктор, створює екземпляр AuthManager.
constructor(options: AuthManagerOptions)| Властивість | Тип | Опис | Значення за замовчуванням |
|---|---|---|---|
authKey | string | Необов'язково, ключ у заголовку запиту, який містить ідентифікатор поточного автентифікатора. | X-Authenticator |
default | string | Необов'язково, ідентифікатор автентифікатора за замовчуванням. | basic |
jwt | JwtOptions | Необов'язково, може бути налаштований, якщо використовується JWT для автентифікації. | - |
| Властивість | Тип | Опис | Значення за замовчуванням |
|---|---|---|---|
secret | string | Секретний ключ токена | X-Authenticator |
expiresIn | string | Необов'язково, час дії токена. | 7d |
setStorer()Встановлює методи для зберігання та отримання даних автентифікатора.
setStorer(storer: Storer)| Властивість | Тип | Опис |
|---|---|---|
authType | string | Тип автентифікації |
options | Record<string, any> | Конфігурація, пов'язана з автентифікатором |
Storer — це інтерфейс для зберігання автентифікаторів, що містить один метод.
get(name: string): Promise<Authenticator> - Отримує автентифікатор за його ідентифікатором. У NocoBase фактичний тип, що повертається, — це AuthModel.registerTypes()Реєструє тип автентифікації.
registerTypes(authType: string, authConfig: AuthConfig)| Властивість | Тип | Опис |
|---|---|---|
auth | AuthExtend<Auth> | Реалізація типу автентифікації, див. Auth |
title | string | Необов'язково. Заголовок цього типу автентифікації, що відображається на інтерфейсі користувача. |
listTypes()Отримує список зареєстрованих типів автентифікації.
listTypes(): { name: string; title: string }[]| Властивість | Тип | Опис |
|---|---|---|
name | string | Ідентифікатор типу автентифікації |
title | string | Заголовок типу автентифікації |
get()Отримує автентифікатор.
get(name: string, ctx: Context)| Властивість | Тип | Опис |
|---|---|---|
name | string | Ідентифікатор автентифікатора |
ctx | Context | Контекст запиту |
middleware()Проміжне ПЗ для автентифікації. Отримує поточний автентифікатор та виконує автентифікацію користувача.