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!
🎉 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!
Un SDK TypeScript per interagire con la Management API di Logto utilizzando l'autenticazione tramite credenziali client.
Come funziona:
npm install @logto/apicreateManagementApi() per creare un client tipizzato della Management API con le credenziali della tua applicazione.Punti salienti:
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.
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:
Come funziona:
Per ulteriori dettagli, consulta la documentazione del Vault segreto.
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.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.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.