logologo
Inizio
Guida
Sviluppo
Plugin
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Inizio
Guida
Sviluppo
Plugin
API
logologo

Autenticazione Utente

Panoramica
Gestione Autenticatori

Tipi di Autenticazione

Password
SMS

OIDC

Configurazione

Esempi

Login con Google
Login con Microsoft

SAML

Configurazione

Esempi

Login con Google
LDAP
CAS
WeChat Work
DingTalk
Chiavi API

Guida per Sviluppatori

Estendi Tipi di Autenticazione
Riferimento API

Verifica

Panoramica

Tipi di Verifica

SMS
Autenticatore TOTP

Guida per Sviluppatori

Estendi Tipi di Verifica
Estendi Scenari di Verifica
Estendi Provider SMS
Riferimento API
Autenticazione a Due Fattori (2FA)
Previous PageEstendi Tipi di Autenticazione
Next PagePanoramica
Avviso di traduzione IA

Questa documentazione è stata tradotta automaticamente dall'IA.

#Riferimento API

#Lato Server

#Auth

API del kernel, riferimento: Auth

#BaseAuth

API del kernel, riferimento: BaseAuth

#AuthModel

#Panoramica

AuthModel è il modello di dati dell'autenticatore (Authenticator, riferimento: AuthManager - setStorer e Auth - constructor) utilizzato nelle applicazioni NocoBase, che fornisce alcuni metodi per interagire con la collezione di dati utente. Inoltre, è possibile utilizzare anche i metodi forniti dal Sequelize Model.

import { AuthModel } from '@nocobase/plugin-auth';

class CustomAuth extends BaseAuth {
  async validate() {
    // ...
    const authenticator = this.authenticator as AuthModel;
    this.authenticator.findUser();
    this.authenticator.newUser();
    this.authenticator.findOrCreateUser();
    // ...
  }
}

#Metodi di Classe

  • findUser(uuid: string): UserModel - Consente di interrogare un utente tramite uuid.

    • uuid - Identificatore unico dell'utente per il tipo di autenticazione corrente.
  • newUser(uuid: string, userValues?: any): UserModel - Consente di creare un nuovo utente e di associarlo all'autenticatore corrente tramite uuid.

    • uuid - Identificatore unico dell'utente per il tipo di autenticazione corrente.
    • userValues - Opzionale. Altre informazioni sull'utente. Se non specificato, uuid verrà utilizzato come nickname dell'utente.
  • findOrCreateUser(uuid: string, userValues?: any): UserModel - Consente di trovare o creare un nuovo utente. Le regole di creazione sono le stesse descritte sopra.

    • uuid - Identificatore unico dell'utente per il tipo di autenticazione corrente.
    • userValues - Opzionale. Altre informazioni sull'utente.

#Lato Client

#plugin.registerType()

Registra il client del tipo di autenticazione.

import AuthPlugin from '@nocobase/plugin-auth/client';

class CustomAuthPlugin extends Plugin {
  async load() {
    const auth = this.app.pm.get(AuthPlugin);
    auth.registerType('custom-auth-type', {
      components: {
        SignInForm,
        // SignInButton
        SignUpForm,
        AdminSettingsForm,
      },
    });
  }
}

#Firma

  • registerType(authType: string, options: AuthOptions)

#Tipo

export type AuthOptions = {
  components: Partial<{
    SignInForm: ComponentType<{ authenticator: AuthenticatorType }>;
    SignInButton: ComponentType<{ authenticator: AuthenticatorType }>;
    SignUpForm: ComponentType<{ authenticatorName: string }>;
    AdminSettingsForm: ComponentType;
  }>;
};

#Dettagli

  • SignInForm - Modulo di accesso
  • SignInButton - Pulsante di accesso (di terze parti), utilizzabile in alternativa al modulo di accesso.
  • SignUpForm - Modulo di registrazione
  • AdminSettingsForm - Modulo di configurazione amministrativa

#Route

Le route frontend per la registrazione del plugin di autenticazione sono le seguenti:

  • Layout di autenticazione

    • name: auth
    • path: -
    • component: AuthLayout
  • Pagina di accesso

    • name: auth.signin
    • path: /signin
    • component: SignInPage
  • Pagina di registrazione

    • name: auth.signup
    • path: /signup
    • component: SignUpPage