Skip to Content

Benutzerdefinierte Domains API

Benutzerdefinierte Domains ermöglichen es dir, gehostete Auris-Login-Seiten und OAuth-Flows unter deiner eigenen Marken-Domain bereitzustellen (z. B. auth.ihredomain.com) anstelle der Standard-Auris-Domain. Dies bietet ein nahtloses White-Label-Erlebnis, bei dem deine Benutzer nie die Auris-Marke sehen.

Der Lebenszyklus einer benutzerdefinierten Domain umfasst folgende Schritte:

  1. Hinzufügen der Domain über die API
  2. DNS konfigurieren — den von Auris bereitgestellten CNAME- oder TXT-Eintrag hinzufügen
  3. Verifizieren — Auris prüft den DNS-Eintrag und provisioniert ein SSL-Zertifikat
  4. Aktivieren — die Domain als primäre Domain für deinen Tenant festlegen

Nach der Aktivierung verwenden alle OAuth-Weiterleitungen, gehostete Login-Seiten, E-Mail-Links und SDK-Konfigurationen deine benutzerdefinierte Domain.

Alle Endpunkte erfordern den x-tenant-Header und ein gültiges Bearer-Token. Die Verwaltung benutzerdefinierter Domains erfordert Administrator-Zugriff.

Benutzerdefinierte Domains auflisten

GET/api/custom-domainsRequires: manage:custom_domains

Listet alle für den Tenant konfigurierten benutzerdefinierten Domains auf, einschließlich ihres Verifizierungs- und SSL-Status. Gibt Domains in der Reihenfolge ihrer Erstellung zurück.

Erfolgsantwort

{ "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 } ] }

Lebenszyklus des Domain-Status

StatusBeschreibung
PENDINGDomain hinzugefügt, DNS-Verifizierung noch nicht versucht
VERIFYINGVerifizierungsprüfung läuft
ACTIVEDomain verifiziert, SSL-Zertifikat provisioniert, einsatzbereit
FAILEDDNS-Verifizierung fehlgeschlagen — der erwartete Eintrag wurde nicht gefunden
DELETEDDomain wurde soft-gelöscht

SSL-Status

SSL-StatusBeschreibung
PENDINGSSL-Zertifikat wurde noch nicht provisioniert (wartet auf Domain-Verifizierung)
ACTIVESSL-Zertifikat ist aktiv und gültig
EXPIREDSSL-Zertifikat ist abgelaufen und muss erneuert werden

SSL-Zertifikate werden nach erfolgreicher Domain-Verifizierung automatisch provisioniert. Auris übernimmt die Ausstellung und Erneuerung von Zertifikaten — keine manuelle Zertifikatverwaltung erforderlich.

Benutzerdefinierte Domain hinzufügen

POST/api/custom-domainsRequires: manage:custom_domains

Fügt dem Tenant eine neue benutzerdefinierte Domain hinzu. Auris generiert ein eindeutiges Verifizierungstoken und gibt den DNS-Eintrag zurück, der zur Nachweisführung des Domain-Besitzes erstellt werden muss.

Anfrage-Body

{ "domain": "auth.acme-corp.com" }
FeldErforderlichBeschreibung
domainJaDer vollqualifizierte Domainname. Muss eine gültige Domain oder Subdomain sein.

Erfolgsantwort

{ "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" } }

Füge nach dem Erstellen der Domain den in dnsRecord angezeigten DNS-Eintrag bei deinem Domain-Registrar hinzu. Der Eintragstyp hängt von der Domain-Konfiguration ab:

CNAME-Verifizierung (für Subdomains wie auth.acme-corp.com):

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

TXT-Verifizierung (alternative Methode):

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

Sobald der DNS-Eintrag propagiert wurde, rufe den Verifizierungs-Endpunkt auf.

Fehlercodes

CodeHTTPBeschreibung
DOMAIN_TAKEN409Diese Domain ist bereits bei einem anderen Tenant registriert
DOMAIN_EXISTS409Diese Domain wurde diesem Tenant bereits hinzugefügt
VALIDATION_ERROR400Ungültiges Domain-Format (z. B. bare IP-Adresse, localhost)
APEX_DOMAIN_NOT_SUPPORTED400Apex-Domains (z. B. acme-corp.com ohne Subdomain) werden für die CNAME-Verifizierung nicht unterstützt. Verwende eine Subdomain wie auth.acme-corp.com.

Apex-(Root-)Domains können keine CNAME-Einträge verwenden, ohne mit anderen DNS-Einträgen zu kollidieren. Es wird dringend empfohlen, eine Subdomain wie auth.ihredomain.com, login.ihredomain.com oder id.ihredomain.com zu verwenden.

Domain verifizieren

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

Löst die DNS-Verifizierung für die Domain aus. Auris führt eine Live-DNS-Abfrage durch, um den CNAME- oder TXT-Eintrag zu prüfen. Bei erfolgreicher Verifizierung beginnt die SSL-Zertifikat-Provisionierung automatisch.

Anfrage: Kein Body erforderlich.

Erfolgsantwort — verifiziert

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

Nach erfolgreicher Verifizierung wechselt der SSL-Status innerhalb weniger Minuten von PENDING zu ACTIVE, während das Zertifikat provisioniert wird.

Erfolgsantwort — noch nicht propagiert

{ "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." } }

Erfolgsantwort — Verifizierung fehlgeschlagen

{ "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" } }

Fehlercodes

CodeHTTPBeschreibung
DOMAIN_NOT_FOUND404Benutzerdefinierte Domain-ID existiert nicht
ALREADY_VERIFIED400Domain ist bereits verifiziert und aktiv

Die DNS-Propagierung erfolgt in der Regel innerhalb von Minuten, kann aber bis zu 48 Stunden dauern. Ein FAILED-Status ist nicht permanent — korrigiere den DNS-Eintrag und rufe die Verifizierung erneut auf. Du kannst den Verifizierungs-Endpunkt beliebig oft aufrufen.

Benutzerdefinierte Domain löschen

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

Löscht eine benutzerdefinierte Domain. Das SSL-Zertifikat wird deprovisioniert und die Domain kann nicht mehr für Auris-Dienste verwendet werden. Wenn die gelöschte Domain die primäre Domain war, kehrt der Tenant zur Standard-Auris-Domain zurück.

Erfolgsantwort

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

Fehlercodes

CodeHTTPBeschreibung
DOMAIN_NOT_FOUND404Benutzerdefinierte Domain-ID existiert nicht

Das Löschen der primären benutzerdefinierten Domain betrifft sofort alle OAuth-Flows, gehosteten Login-Seiten, E-Mail-Links und SDK-Konfigurationen, die darauf verweisen. Benutzer werden zur Standard-Auris-Domain weitergeleitet. Aktualisiere die SDK-Konfiguration und Weiterleitungs-URIs deiner Anwendung, bevor du eine primäre Domain löschst.

Primäre Domain festlegen

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

Aktualisiert die Einstellungen einer benutzerdefinierten Domain. Derzeit ist die einzig unterstützte Aktualisierung das Setzen oder Aufheben der Domain als primäre Domain.

Das Festlegen einer Domain als primär bewirkt, dass alle von Auris generierten URLs (OAuth-Weiterleitungs-Basis, E-Mail-Links, OIDC-Discovery-Issuer) diese Domain anstelle der Standard-Auris-Domain verwenden.

Anfrage-Body

{ "primaryDomain": true }
FeldErforderlichBeschreibung
primaryDomainJaAuf true setzen, um dies zur primären Domain zu machen. Wenn auf false gesetzt, kehrt der Tenant zur Standard-Auris-Domain zurück. Nur eine Domain kann gleichzeitig primär sein — das Setzen einer neuen primären Domain hebt die vorherige automatisch auf.

Erfolgsantwort

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

Fehlercodes

CodeHTTPBeschreibung
DOMAIN_NOT_VERIFIED400Kann nicht als primär festgelegt werden — Domain ist noch nicht verifiziert (Status muss ACTIVE sein)
SSL_NOT_ACTIVE400Kann nicht als primär festgelegt werden — SSL-Zertifikat ist noch nicht provisioniert
DOMAIN_NOT_FOUND404Benutzerdefinierte Domain-ID existiert nicht

Funktionsweise benutzerdefinierter Domains

Wenn eine benutzerdefinierte Domain als primär festgelegt wird, ändern sich folgende Auris-Verhaltensweisen:

FunktionVorherNachher
URL der gehosteten Login-Seiteyour-auris-domain.com/hosted/loginauth.ihredomain.com/hosted/login
OAuth-Autorisierungs-Endpunktyour-auris-domain.com/api/oauth/authorizeauth.ihredomain.com/api/oauth/authorize
OIDC-Discovery-Issueryour-auris-domain.comauth.ihredomain.com
JWKS-URIyour-auris-domain.com/.well-known/jwks.jsonauth.ihredomain.com/.well-known/jwks.json
E-Mail-Links (Magic Links, Verifizierung)your-auris-domain.com/...auth.ihredomain.com/...
SDK-Domain-Konfigurationyour-auris-domain.comauth.ihredomain.com

Aktualisiere nach dem Festlegen einer primären benutzerdefinierten Domain deine SDK-Initialisierung zur Verwendung der neuen Domain. Zum Beispiel in @auris/js: new AurisClient({ domain: 'auth.ihredomain.com', clientId: '...' }). Der OIDC-Discovery-Endpunkt spiegelt den neuen Issuer automatisch wider.

DNS-Verifizierungsmethoden

Auris unterstützt zwei DNS-Verifizierungsmethoden:

CNAME-Verifizierung (empfohlen)

Wird für Subdomains verwendet. Der CNAME-Eintrag dient einem doppelten Zweck — er verifiziert den Besitz und leitet den Datenverkehr zu Auris weiter.

Typ: CNAME Host: auth.acme-corp.com Wert: your-auris-domain.com TTL: 3600 (oder Auto)

TXT-Verifizierung

Alternative Methode, wenn CNAME nicht geeignet ist. Ein separater TXT-Eintrag wird unter der _auris-verify-Subdomain hinzugefügt.

Typ: TXT Host: _auris-verify.auth.acme-corp.com Wert: auris-verify-mno345pqr678 TTL: 3600 (oder Auto)

Bei der TXT-Verifizierung musst du außerdem separat einen CNAME- oder A-Eintrag konfigurieren, um den Datenverkehr zu Auris weiterzuleiten.

Berechtigungsreferenz

BerechtigungBeschreibung
manage:custom_domainsVollzugriff auf die Verwaltung benutzerdefinierter Domains — hinzufügen, verifizieren, als primär festlegen, löschen

Die Verwaltung benutzerdefinierter Domains ist typischerweise auf Tenant-Administratoren beschränkt. Die Berechtigung ist in der Standard-admin-Rolle enthalten.


Verwandte Themen