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:
- Hinzufügen der Domain über die API
- DNS konfigurieren — den von Auris bereitgestellten CNAME- oder TXT-Eintrag hinzufügen
- Verifizieren — Auris prüft den DNS-Eintrag und provisioniert ein SSL-Zertifikat
- 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
/api/custom-domainsRequires: manage:custom_domainsListet 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
| Status | Beschreibung |
|---|---|
PENDING | Domain hinzugefügt, DNS-Verifizierung noch nicht versucht |
VERIFYING | Verifizierungsprüfung läuft |
ACTIVE | Domain verifiziert, SSL-Zertifikat provisioniert, einsatzbereit |
FAILED | DNS-Verifizierung fehlgeschlagen — der erwartete Eintrag wurde nicht gefunden |
DELETED | Domain wurde soft-gelöscht |
SSL-Status
| SSL-Status | Beschreibung |
|---|---|
PENDING | SSL-Zertifikat wurde noch nicht provisioniert (wartet auf Domain-Verifizierung) |
ACTIVE | SSL-Zertifikat ist aktiv und gültig |
EXPIRED | SSL-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
/api/custom-domainsRequires: manage:custom_domainsFü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"
}| Feld | Erforderlich | Beschreibung |
|---|---|---|
domain | Ja | Der 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.comTXT-Verifizierung (alternative Methode):
TXT _auris-verify.auth.acme-corp.com → auris-verify-mno345pqr678Sobald der DNS-Eintrag propagiert wurde, rufe den Verifizierungs-Endpunkt auf.
Fehlercodes
| Code | HTTP | Beschreibung |
|---|---|---|
DOMAIN_TAKEN | 409 | Diese Domain ist bereits bei einem anderen Tenant registriert |
DOMAIN_EXISTS | 409 | Diese Domain wurde diesem Tenant bereits hinzugefügt |
VALIDATION_ERROR | 400 | Ungültiges Domain-Format (z. B. bare IP-Adresse, localhost) |
APEX_DOMAIN_NOT_SUPPORTED | 400 | Apex-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
/api/custom-domains/[id]/verifyRequires: manage:custom_domainsLö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
| Code | HTTP | Beschreibung |
|---|---|---|
DOMAIN_NOT_FOUND | 404 | Benutzerdefinierte Domain-ID existiert nicht |
ALREADY_VERIFIED | 400 | Domain 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
/api/custom-domains/[id]Requires: manage:custom_domainsLö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
| Code | HTTP | Beschreibung |
|---|---|---|
DOMAIN_NOT_FOUND | 404 | Benutzerdefinierte 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
/api/custom-domains/[id]Requires: manage:custom_domainsAktualisiert 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
}| Feld | Erforderlich | Beschreibung |
|---|---|---|
primaryDomain | Ja | Auf 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
| Code | HTTP | Beschreibung |
|---|---|---|
DOMAIN_NOT_VERIFIED | 400 | Kann nicht als primär festgelegt werden — Domain ist noch nicht verifiziert (Status muss ACTIVE sein) |
SSL_NOT_ACTIVE | 400 | Kann nicht als primär festgelegt werden — SSL-Zertifikat ist noch nicht provisioniert |
DOMAIN_NOT_FOUND | 404 | Benutzerdefinierte Domain-ID existiert nicht |
Funktionsweise benutzerdefinierter Domains
Wenn eine benutzerdefinierte Domain als primär festgelegt wird, ändern sich folgende Auris-Verhaltensweisen:
| Funktion | Vorher | Nachher |
|---|---|---|
| URL der gehosteten Login-Seite | your-auris-domain.com/hosted/login | auth.ihredomain.com/hosted/login |
| OAuth-Autorisierungs-Endpunkt | your-auris-domain.com/api/oauth/authorize | auth.ihredomain.com/api/oauth/authorize |
| OIDC-Discovery-Issuer | your-auris-domain.com | auth.ihredomain.com |
| JWKS-URI | your-auris-domain.com/.well-known/jwks.json | auth.ihredomain.com/.well-known/jwks.json |
| E-Mail-Links (Magic Links, Verifizierung) | your-auris-domain.com/... | auth.ihredomain.com/... |
| SDK-Domain-Konfiguration | your-auris-domain.com | auth.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
| Berechtigung | Beschreibung |
|---|---|
manage:custom_domains | Vollzugriff 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
- Leitfaden für benutzerdefinierte Domains — Schritt-für-Schritt-Anleitung zur Domain-Einrichtung und Verifizierung
- Benutzerdefinierte Domains — Domains über die Konsole hinzufügen und verifizieren