Skip to Content

API Domini Personalizzati

I Domini Personalizzati ti consentono di servire le pagine di login ospitate da Auris e i flussi OAuth sotto il tuo dominio brandizzato (es. auth.tuodominio.com) invece del dominio Auris predefinito. Questo offre un’esperienza white-label senza soluzione di continuità in cui i tuoi utenti non vedono mai il brand Auris.

Il ciclo di vita di un dominio personalizzato segue questi passaggi:

  1. Aggiungi il dominio tramite l’API
  2. Configura il DNS — aggiungi il record CNAME o TXT fornito da Auris
  3. Verifica — Auris controlla il record DNS e provisiona un certificato SSL
  4. Attiva — imposta il dominio come dominio primario per il tuo tenant

Una volta attivo, tutti i redirect OAuth, le pagine di login ospitate, i link nelle email e le configurazioni SDK utilizzano il tuo dominio personalizzato.

Tutti gli endpoint richiedono l’intestazione x-tenant e un token Bearer valido. La gestione dei domini personalizzati richiede accesso a livello amministratore.

Elenca Domini Personalizzati

GET/api/custom-domainsRequires: manage:custom_domains

Elenca tutti i domini personalizzati configurati per il tenant, incluso lo stato di verifica e SSL. Restituisce i domini in ordine di creazione.

Risposta di successo

{ "ok": true, "data": [ { "id": "cd_abc123", "domain": "auth.acme-corp.com", "status": "ACTIVE", "sslStatus": "ACTIVE", "verificationMethod": "CNAME", "verificationToken": "auris-verify-abc123def456", "primaryDomain": true, "createdAt": "2025-01-15T10:00:00Z", "verifiedAt": "2025-01-15T10:45:00Z" }, { "id": "cd_def456", "domain": "login.acme.io", "status": "PENDING", "sslStatus": "PENDING", "verificationMethod": "TXT", "verificationToken": "auris-verify-ghi789jkl012", "primaryDomain": false, "createdAt": "2025-02-10T08:00:00Z", "verifiedAt": null } ] }

Ciclo di Vita dello Stato del Dominio

StatoDescrizione
PENDINGDominio aggiunto, verifica DNS non ancora tentata
VERIFYINGVerifica DNS in corso
ACTIVEDominio verificato, certificato SSL provisioned, pronto all’uso
FAILEDVerifica DNS fallita — il record atteso non è stato trovato
DELETEDDominio eliminato in modalità soft-delete

Stato SSL

Stato SSLDescrizione
PENDINGCertificato SSL non ancora provisioned (in attesa della verifica del dominio)
ACTIVECertificato SSL attivo e valido
EXPIREDCertificato SSL scaduto e da rinnovare

I certificati SSL vengono provisioned automaticamente dopo la verifica del dominio. Auris gestisce l’emissione e il rinnovo dei certificati — non è richiesta alcuna gestione manuale dei certificati.

Aggiungi un Dominio Personalizzato

POST/api/custom-domainsRequires: manage:custom_domains

Aggiunge un nuovo dominio personalizzato al tenant. Auris genera un token di verifica univoco e restituisce il record DNS da creare per dimostrare la proprietà del dominio.

Corpo della richiesta

{ "domain": "auth.acme-corp.com" }
CampoObbligatorioDescrizione
domainSìIl nome di dominio completamente qualificato. Deve essere un dominio o sottodominio valido.

Risposta di successo

{ "ok": true, "data": { "id": "cd_ghi789", "domain": "auth.acme-corp.com", "status": "PENDING", "sslStatus": "PENDING", "verificationMethod": "CNAME", "verificationToken": "auris-verify-mno345pqr678", "primaryDomain": false, "dnsRecord": { "type": "CNAME", "host": "auth.acme-corp.com", "value": "your-auris-domain.com" }, "createdAt": "2025-02-18T10:00:00Z" } }

Dopo aver creato il dominio, aggiungi il record DNS mostrato in dnsRecord presso il tuo registrar di dominio. Il tipo di record dipende dalla configurazione del dominio:

Verifica CNAME (per sottodomini come auth.acme-corp.com):

CNAME auth.acme-corp.com → your-auris-domain.com

Verifica TXT (metodo alternativo):

TXT _auris-verify.auth.acme-corp.com → auris-verify-mno345pqr678

Una volta propagato il record DNS, chiama l’endpoint di verifica.

Codici di errore

CodiceHTTPDescrizione
DOMAIN_TAKEN409Questo dominio è già registrato per un altro tenant
DOMAIN_EXISTS409Questo dominio è già aggiunto a questo tenant
VALIDATION_ERROR400Formato dominio non valido (es. indirizzo IP nudo, localhost)
APEX_DOMAIN_NOT_SUPPORTED400I domini apex (es. acme-corp.com senza sottodominio) non sono supportati per la verifica CNAME. Usa un sottodominio come auth.acme-corp.com.

I domini apex (root) non possono utilizzare record CNAME senza entrare in conflitto con altri record DNS. Si consiglia fortemente di usare un sottodominio come auth.tuodominio.com, login.tuodominio.com o id.tuodominio.com.

Verifica un Dominio

POST/api/custom-domains/[id]/verifyRequires: manage:custom_domains

Avvia la verifica DNS per il dominio. Auris esegue una ricerca DNS in tempo reale per controllare il record CNAME o TXT. Dopo una verifica riuscita, il provisioning del certificato SSL inizia automaticamente.

Richiesta: nessun corpo richiesto.

Risposta di successo — verificato

{ "ok": true, "data": { "id": "cd_ghi789", "domain": "auth.acme-corp.com", "status": "ACTIVE", "sslStatus": "PENDING", "verifiedAt": "2025-02-18T10:45:00Z" } }

Dopo il successo della verifica, lo stato SSL passa da PENDING ad ACTIVE entro pochi minuti durante il provisioning del certificato.

Risposta di successo — non ancora propagato

{ "ok": true, "data": { "id": "cd_ghi789", "domain": "auth.acme-corp.com", "status": "PENDING", "message": "DNS record not found yet. DNS propagation can take up to 48 hours." } }

Risposta di successo — verifica fallita

{ "ok": true, "data": { "id": "cd_ghi789", "domain": "auth.acme-corp.com", "status": "FAILED", "message": "CNAME record found but points to an incorrect target. Expected: your-auris-domain.com, Found: other-service.com" } }

Codici di errore

CodiceHTTPDescrizione
DOMAIN_NOT_FOUND404L’ID del dominio personalizzato non esiste
ALREADY_VERIFIED400Il dominio è già verificato e attivo

La propagazione DNS di solito si completa in pochi minuti ma può richiedere fino a 48 ore. Lo stato FAILED non è permanente — correggi il record DNS e chiama nuovamente la verifica. Puoi chiamare l’endpoint di verifica tutte le volte necessarie.

Elimina un Dominio Personalizzato

DELETE/api/custom-domains/[id]Requires: manage:custom_domains

Elimina un dominio personalizzato. Il certificato SSL viene revocato e il dominio non può più essere utilizzato per i servizi Auris. Se il dominio eliminato era il dominio primario, il tenant torna al dominio Auris predefinito.

Risposta di successo

{ "ok": true, "data": { "deleted": true } }

Codici di errore

CodiceHTTPDescrizione
DOMAIN_NOT_FOUND404L’ID del dominio personalizzato non esiste

L’eliminazione del dominio primario personalizzato influisce immediatamente su tutti i flussi OAuth, le pagine di login ospitate, i link nelle email e le configurazioni SDK che lo referenziano. Gli utenti verranno reindirizzati al dominio Auris predefinito. Aggiorna la configurazione SDK della tua applicazione e gli URI di redirect prima di eliminare un dominio primario.

Imposta Dominio Primario

PATCH/api/custom-domains/[id]Requires: manage:custom_domains

Aggiorna le impostazioni di un dominio personalizzato. Attualmente, l’unico aggiornamento supportato è impostare o rimuovere il dominio come dominio primario.

Impostare un dominio come primario fa sì che tutti gli URL generati da Auris (base redirect OAuth, link email, issuer OIDC Discovery) utilizzino questo dominio invece del dominio Auris predefinito.

Corpo della richiesta

{ "primaryDomain": true }
CampoObbligatorioDescrizione
primaryDomainSìImpostare a true per rendere questo il dominio primario. Impostare a false ripristina il dominio Auris predefinito. Solo un dominio può essere primario alla volta — impostarne uno nuovo rimuove automaticamente il precedente.

Risposta di successo

{ "ok": true, "data": { "id": "cd_abc123", "domain": "auth.acme-corp.com", "primaryDomain": true, "updatedAt": "2025-02-18T12:00:00Z" } }

Codici di errore

CodiceHTTPDescrizione
DOMAIN_NOT_VERIFIED400Impossibile impostare come primario — il dominio non è ancora verificato (lo stato deve essere ACTIVE)
SSL_NOT_ACTIVE400Impossibile impostare come primario — il certificato SSL non è ancora provisioned
DOMAIN_NOT_FOUND404L’ID del dominio personalizzato non esiste

Come Funzionano i Domini Personalizzati

Quando un dominio personalizzato viene impostato come primario, cambiano i seguenti comportamenti di Auris:

FunzionalitàPrimaDopo
URL pagina di login ospitatayour-auris-domain.com/hosted/loginauth.tuodominio.com/hosted/login
Endpoint authorize OAuthyour-auris-domain.com/api/oauth/authorizeauth.tuodominio.com/api/oauth/authorize
Issuer OIDC Discoveryyour-auris-domain.comauth.tuodominio.com
JWKS URIyour-auris-domain.com/.well-known/jwks.jsonauth.tuodominio.com/.well-known/jwks.json
Link email (magic link, verifica)your-auris-domain.com/...auth.tuodominio.com/...
Configurazione SDKyour-auris-domain.comauth.tuodominio.com

Dopo aver impostato un dominio primario personalizzato, aggiorna l’inizializzazione del tuo SDK per usare il nuovo dominio. Ad esempio, in @auris/js: new AurisClient({ domain: 'auth.tuodominio.com', clientId: '...' }). L’endpoint OIDC Discovery rifletterà automaticamente il nuovo issuer.

Metodi di Verifica DNS

Auris supporta due metodi di verifica DNS:

Verifica CNAME (Consigliata)

Usata per sottodomini. Il record CNAME svolge un duplice scopo — verifica la proprietà e instrada il traffico verso Auris.

Tipo: CNAME Host: auth.acme-corp.com Valore: your-auris-domain.com TTL: 3600 (o Auto)

Verifica TXT

Metodo alternativo quando CNAME non è adatto. Un record TXT separato viene aggiunto sotto il sottodominio _auris-verify.

Tipo: TXT Host: _auris-verify.auth.acme-corp.com Valore: auris-verify-mno345pqr678 TTL: 3600 (o Auto)

Con la verifica TXT, è necessario configurare separatamente un record CNAME o A per instradare il traffico verso Auris.

Riferimento Permessi

PermessoDescrizione
manage:custom_domainsAccesso completo alla gestione dei domini personalizzati — aggiunta, verifica, impostazione primario, eliminazione

La gestione dei domini personalizzati è tipicamente riservata agli amministratori del tenant. Il permesso è incluso nel ruolo admin predefinito.


Correlati