È un sostituto diretto di Keycloak?
No. Keycloak è un identity server generico con SAML, federazione LDAP, pagine di accesso personalizzabili e console di amministrazione. Nautilus fa un lavoro più stretto: accesso e account utente per i clienti di un prodotto SaaS, dietro un'API HTTP senza schermate proprie. Se ti serve SAML o il single sign-on per clienti enterprise, tieni Keycloak. Se lo usi per l'accesso con password, Google e GitHub, il recupero, i due fattori e i ruoli all'interno delle organizzazioni dei tuoi clienti, questa è la parte che puoi smettere di ospitare. Organizzazioni, ruoli e membri si gestiscono tramite l'API e la dashboard non ha ancora una schermata per i membri. I ruoli di un utente tornano nel token firmato, nell'introspezione del token e nel controllo della sessione.
Devo ancora costruire le schermate di accesso?
Sì, le schermate. Nautilus restituisce ogni passaggio come risposta API e il tuo codice invia ciò che l'utente ha digitato, così i moduli sembrano il resto del tuo prodotto. Ciò che smetti di costruire è tutto quello che c'è dietro: archiviazione delle password, email di recupero e verifica, sessioni, accessi con i provider. Se vuoi una pagina di accesso ospitata e personalizzabile, Keycloak ce l'ha e questo no.
Come verifico un webhook?
Ogni consegna porta gli header svix-id, svix-timestamp e svix-signature: una firma HMAC-SHA256 su id, timestamp e body grezzo. Controllala con la libreria Svix ufficiale e open source, che esiste per Node, Python, Go, Rust, PHP, Java, Ruby, C# e Kotlin, invece di scrivere il controllo da te. Le consegne fallite vengono ritentate e possono essere reinviate dalla dashboard.
Quanto costa?
Gratis fino a 1.000 utenti attivi al mese, senza carta. Un utente attivo è chi accede almeno una volta in un mese di calendario, per quante volte sia; le persone che crei tramite API e non accedono mai non vengono contate. Pro costa 99 € al mese per 10.000 utenti attivi e Advanced 199 € per 50.000. Ruoli e organizzazioni sono in ogni piano, Free compreso, e il registro di audit è conservato 7, 30 o 90 giorni a seconda del piano; nessuno dei due è un extra con un prezzo a sé. Oltre il limite l'accesso non viene mai bloccato: ti scriviamo all'80 % e al 100 %, e hai tempo per passare a un piano superiore prima che le nuove registrazioni vengano rifiutate. L'elenco aggiornato è nella pagina dei prezzi.
Cosa gira sotto?
Ory Kratos, l'identity server open source, come un unico deployment condiviso per tutti gli account. La dashboard, le chiavi API, i webhook, le organizzazioni e i ruoli, i token firmati e il controllo che tiene gli utenti di un account lontani da quelli di un altro sono nostri, sopra. Il prezzo della condivisione: lo schema utente è fissato a un'email, una lingua e il tuo campo JSON, e non puoi cambiare la configurazione propria di Kratos. Il motore è aperto: se questo non ti basta più, lo stesso software gira sui tuoi server. Lo strato che abbiamo costruito sopra non viene con te. Per migrare altrove, chiedi al supporto un'esportazione di tutti i tuoi utenti con hash delle password, collegamenti social, metadati, organizzazioni e ruoli: ricevi un file cifrato entro 7 giorni, in un formato che il nostro import accetta e che corrisponde a Ory Kratos.
Dove sono conservati i dati di identità?
Identità, sessioni e i tuoi metadati personalizzati sono memorizzati in database sui nostri server in Francia, presso OVHcloud. Le email in uscita, come i codici di accesso e di recupero, sono consegnate tramite Resend, un fornitore statunitense, con le clausole contrattuali tipo della Commissione europea.
Come funzionano i ruoli e i controlli dei permessi?
Crei un'organizzazione, ci definisci dei ruoli (un ruolo è un nome e un elenco di permessi come invoices:write) e aggiungi un utente all'organizzazione con un ruolo. Per verificare, chiama authorize con l'utente, il permesso e l'organizzazione: ottieni consentito o no, con un motivo e il ruolo. Oppure leggi i ruoli dal token firmato e lascia decidere alla policy del database. I permessi vengono confrontati esattamente, senza caratteri jolly. Un ruolo che qualcuno ricopre non può essere eliminato finché quella persona non viene spostata. Un'appartenenza può avere una scadenza ed essere rimossa da una regola quando passa. Ogni modifica a un ruolo o a un'appartenenza è nel registro di audit.
Cosa non fa?
Niente SAML o single sign-on enterprise, nessuna pagina di accesso ospitata, nessun componente già pronto, niente passkey, niente codici SMS e niente Sign in with Apple. Non è un provider OAuth o OpenID per terze parti: il token firmato serve a essere verificato e Nautilus non ha un endpoint di autorizzazione. Le e-mail che inviamo per te partono dall'indirizzo di Verne e sono scritte nella lingua dell'utente (sei lingue, secondo il suo locale). Gli SDK ufficiali coprono Node, Python, PHP e Rust.
Come si confronta con Auth0, Clerk, Ory Network o Logto?
C'è una pagina per ciascuno, con i prezzi dai loro siti e la data in cui li abbiamo controllati. In breve: loro sono avanti su schermate già pronte, single sign-on enterprise e numero di metodi di accesso. Noi siamo avanti sulle regole che eliminano gli account inutilizzati, su ruoli e organizzazioni senza prezzo a parte e, rispetto a Clerk, su dove si trovano i dati. Leggi le pagine, poi decidi. Le pagine sono in inglese.