• rilascio
  • API SDK
  • Vault
  • API account

Aggiornamenti del prodotto Logto

🎉 Presentiamo la nostra release di luglio: Logto API SDK, Vault segreto per l'archiviazione federata dei token, gestisci TOTP e Codici di Backup tramite l'Account API, e altro ancora!

Simeng
Simeng
Developer

Smetti di sprecare settimane sull'autenticazione degli utenti
Lancia app sicure più velocemente con Logto. Integra l'autenticazione degli utenti in pochi minuti e concentrati sul tuo prodotto principale.
Inizia ora
Product screenshot

Logto API SDK

Un SDK TypeScript per interagire con la Management API di Logto utilizzando l'autenticazione tramite credenziali client.

Come funziona:

  1. Crea un'applicazione machine-to-machine nella Logto Console.
  2. Concedi all'applicazione l'accesso alla Management API.
  3. Installa l’SDK tramite npm: npm install @logto/api
  4. Usa createManagementApi() per creare un client tipizzato della Management API con le credenziali della tua applicazione.

Punti salienti:

  • Gestisce automaticamente l'autenticazione e il rinnovo del token OAuth.
  • Supporta sia Logto Cloud che le istanze self-hosted.
  • Semplifica l'integrazione con la Management API di Logto, permettendoti di concentrarti sulle funzionalità anziché sulla gestione delle richieste API di basso livello.

Vault segreto

Il Vault segreto è una soluzione di archiviazione sicura in Logto per la gestione di dati utente sensibili, inclusi token di accesso, chiavi API, codici di accesso e altre informazioni riservate. Questi segreti sono solitamente utilizzati per accedere a servizi di terze parti per conto degli utenti, rendendo fondamentale una conservazione sicura.

Supporto per l’archiviazione federata dei token

L’archiviazione dei token è ora supportata sia per i connettori social che per quelli SSO aziendali. Quando abilitata, Logto memorizza il set di token emesso dal provider di identità dopo un’autenticazione riuscita. Le applicazioni possono quindi recuperare successivamente il token di accesso—senza richiedere una nuova autenticazione all’utente—per chiamare API di terze parti.

Connettori supportati:

  • Connettori social: GitHub, Google, Facebook, Standard OAuth 2.0 e Standard OIDC
  • Connettori SSO aziendali: Tutti i connettori SSO basati su OIDC

Come funziona:

  1. Abilita l’archiviazione del token per i connettori social e SSO aziendali nella Logto Console o tramite la Management API di Logto.
  2. Una volta abilitata, Logto memorizza automaticamente il set di token emesso dal provider dopo un'autenticazione utente riuscita.
  3. Recupera il token archiviato tramite l’Account API quando necessario.

Per ulteriori dettagli, consulta la documentazione del Vault segreto.

Aggiungi TOTP e Codici di Backup tramite Account API

Gli utenti possono ora aggiungere TOTP e codici di backup tramite l’Account API.

  • POST /api/my-account/mfa-verifications/totp-secret/generate: Genera un segreto TOTP.
  • POST /api/my-account/mfa-verifications/backup-codes/generate: Genera codici di backup.
  • POST /api/my-account/mfa-verifications: Aggiungi un TOTP o un codice di backup usando il segreto o i codici generati.
  • GET /api/my-account/mfa-verifications/backup-codes: Recupera i codici di backup.

Altri miglioramenti

  • Connettori social: Aggiunto il supporto per fornire un parametro scope personalizzato durante la generazione dell’URL di autorizzazione per i connettori social. Questo permette di richiedere permessi aggiuntivi dal provider social quando si chiama l'endpoint di verifica social Logto. Se viene fornito uno scope, verrà utilizzato nella richiesta di autorizzazione; in caso contrario, verrà utilizzato lo scope predefinito configurato nei settaggi del connettore.
  • Console: Per supportare meglio la nuova funzione Vault segreto, abbiamo ristrutturato il layout della pagina dei dettagli utente. Le identità social e SSO aziendali dell’utente ora sono organizzate in una nuova sezione Connessioni. Questa sezione elenca tutte le connessioni collegate di un utente, mostrando le informazioni di identità di terze parti e lo stato dell’archiviazione dei token (se applicabile). È inoltre disponibile una pagina dettagliata dell’identità dell’utente per ogni connessione, che fornisce maggiori informazioni sull’identità collegata e sui token associati.

Correzioni di bug

Vincolo di chiave esterna sensibile al tenant per la tabella organization_user_relations

Problema

Gli sviluppatori potevano erroneamente assegnare un user_id di un altro tenant a un’organizzazione, causando errori 500 sugli endpoint API utente dell’organizzazione. La tabella originaria organization_user_relations aveva solo un vincolo di chiave esterna su users (id), consentendo di assegnare qualsiasi user ID esistente indipendentemente dall’isolamento del tenant.

Causa principale

Logto applica la Row Level Security (RLS) su tutte le tabelle per isolare l’accesso ai dati del tenant. Quando si unisce la tabella users con organization_user_relations, i dati reali dell’utente diventano inaccessibili al tenant corrente a causa delle restrizioni RLS, facendo sì che i dati dell’utente risultino null e causando errori 500 del server.

Soluzione

È stato aggiunto un vincolo di chiave esterna composita (tenant_id, user_id) che fa riferimento a users (tenant_id, id) per garantire che l’ID tenant della relazione organization-user corrisponda all’ID tenant dell’utente. Questo rafforza il corretto isolamento dei tenant a livello di database.