Logto v1.44.0 is er. Deze versie voegt vertrouwde MFA-apparaten toe, aangepaste en langere gebruikers-ID's voor migraties, Cap als self-hosted CAPTCHA, authenticatiebeleid voor SAML-applicaties, een `theme` authenticatieparameter, en refresh tokens voor dynamische app-clients zoals ChatGPT en Codex.
YijunDeveloper
Stop met weken verspillen aan gebruikersauthenticatie
Lanceer veilige apps sneller met Logto. Integreer gebruikersauthenticatie in minuten en focus op je kernproduct.
Logto v1.44.0 voegt vertrouwde MFA-apparaten, aangepaste gebruikers-ID's voor migraties, Cap als self-hosted CAPTCHA en refresh tokens voor dynamische app-clients toe. Dit is er nieuw.
Gebruikers die MFA voltooien kunnen nu hun browser vertrouwen en MFA daar overslaan totdat het vertrouwen verloopt.
Zet het aan in Console > Multi-factor authenticatie en stel de duur van het vertrouwen in (1 tot 365 dagen, standaard 30).
Organisaties kunnen het toestaan van vertrouwde apparaten voor hun leden uitschakelen.
Beheerders beheren de vertrouwde apparaten van een gebruiker in Console of via de Management API. Gebruikers beheren hun eigen via Account Center of de Account API.
Abonneer op TrustedDevice.Created en TrustedDevice.Deleted webhooks.
Een vertrouwd apparaat dekt alleen de MFA-stap van het aanmelden. Identiteitsverificatie en andere gevoelige acties vragen alsnog om bewijs. Zie de handleiding voor vertrouwde MFA-apparaten.
Als Cloudflare Turnstile of Google reCAPTCHA wordt geblokkeerd of onbetrouwbaar is voor je gebruikers, kun je nu Cap gebruiken, een open-source proof-of-work CAPTCHA die je zelf host. Zet een Cap Standalone instantie op en voeg die toe in Console > Beveiliging > CAPTCHA.
reCAPTCHA Enterprise krijgt nu ook een instelbare score-drempel (0.0 tot 1.0) ter vervanging van de vaste 0.5.
MCP-clients zoals ChatGPT en Codex vragen om offline_access zonder prompt=consent, waardoor ze volgens OpenID Connect geen refresh token krijgen en gebruikers opnieuw moeten inloggen als het access token verloopt. Zet Toestemmingsprompt toevoegen voor offline toegang aan onder Client-compatibiliteit bij de instellingen van de dynamische app, en Logto voegt de prompt voor ze toe.
Dit geldt alleen voor dynamische apps (CIMD-clients). De instelling is experimenteel en standaard uitgeschakeld.
SAML-applicaties kunnen een bestaande Logto-sessie hergebruiken: zet Altijd authenticatie forceren uit (nieuwe authenticatie blijft de standaard). Ze kunnen nu ook ondertekende authenticatieverzoeken eisen, en assertions rapporteren nu de daadwerkelijke authenticatietijd.
theme authenticatieparameter: Geef theme=light of theme=dark mee om de inlogervaring in dat thema weer te geven in plaats van het OS-thema, voor de volledige flow. Zie authenticatieparameters.
De @logto/api SDK voegt paginate() toe, een getypte async iterator over paginerende endpoints, plus request timeouts en betrouwbaardere tokenafhandeling.
De inlogpagina wordt niet meer blanco als een browser hem automatisch vertaalt.
Social sign-up biedt alleen "koppelen en doorgaan" aan wanneer de conflicterende identifier kan inloggen met een verificatiecode.
OIDC enterprise SSO-issuers met een slash aan het einde worden nu correct verwerkt.
OIDC-configuratie staat niet meer toe om de none prompt met andere waarden te combineren.
API-foutmeldingen vallen terug op de basistaal als een regionale niet beschikbaar is.
Webhook testresultaten verschijnen niet meer op pagina's van andere webhooks.
Apple-connector: duidelijkere Services ID-setup en troubleshooting.
DingTalk (web) connector: corpId staat nu in rawData.
Database migratie vereist: Voer logto db alteration deploy uit (of npm run alteration deploy in het core-image) voordat je v1.44.0 start. Deze release maakt gebruikers-ID kolommen 128 tekens breed en voegt een SAML-configuratiekolom toe. Terugdraaien mislukt als een gebruikers-ID boven de oude limiet uitkomt.
Overgebleven PostgreSQL-rollen: logto db seed controleert nu op rollen die zijn achtergelaten door een eerdere Logto-database voordat tabellen worden aangemaakt, en legt uit waarom het verwijderen van de database die niet verwijderde. (Credits @ryanchou1994)