Suche in diesem Bereich
Einführung
Die Domainrobot-API bietet verschiedene Möglichkeiten der Authentifizierung. Abhängig von der gewählten API stehen dir folgende Authentifizierung-Möglichkeiten zur Verfügung:
JSON und XML:
- Credentials (Benutzer/Kontext/Passwort)
- SessionID
- TrustedApp
Nur XML:
- Zwei-Faktor-Authentifizierung
- SingleSignOn-Authentifizierung
JSON-API
Authentifizierung über Credentials (Benutzername/Context/Passwort)
Authentifizierung mit dem AutoDNS Benutzernamen und deinem AutoDNS Kontext. Das Passwort musst du selber festlegen.
Benutzer ($user) und Passwort ($password) werden als Basic Auth angegeben. Der Kontext wird hier über den Header X-Domainrobot-Context angegeben.
Beachte die Kontextnummern. Kontext "1" bezeichnet das Demo-System, Kontext "4" bzw. die PersonalAutoDNS Kontextnummer, das Live-System.
Beispiel Http-Header :
Für den Benutzernamen "user", dem Passwort "password" und dem Context "4" müssen folgende Http-Header angegeben werden :
- Authorization: Basic dXNlcjpwYXNzd29yZA==
- X-Domainrobot-Context: 4
Weiterführende Hinweise zu Basic Auth sind unter folgenden Link zu finden : https://de.wikipedia.org/wiki/HTTP-Authentifizierung
Authentifizierung über Trusted Application
Für diese Art der Authentifizierung müssen die Daten der Trusted App ($uuid:$password) als Basic Auth angegeben werden.
Authentifizierung über die SessionID
Die Authentifizierung über eine Session wird nur empfohlen sofern für die Anbindung der API ein "Automatisches Timeout" der Session notwendig ist. Wir empfehlen immer Authentifizierung über Credentials (Benutzername/Context/Passwort) zu verwenden.
Login
Die Session, die für die Authentifizierung genutzt werden soll, muss mit einem AuthSessionCreate Auftrag angelegt werden.
Bei erfolgreichen Login gibt das System in der Antwort die Benutzerdaten zurück. Abhängig von den gewählten Abfrageparametern, werden zusätzliche Daten des Benutzers ausgegeben. Die SessionID wird bei JSON im Header zurückgeliefert.
Set-Cookie: domainrobot_session=$sessionID; Path=/;Max-Age=599;secure;httponly
SessionID als Cookie/Header
Die beim Login zurückgelieferte SessionID steht nun für weitere Aufträge zur Verfügung. Sie kann in den Aufträgen im Header (X-Domainrobot-SessionId) oder als Cookie verwendet werden.
X-Domainrobot-SessionId: $sessionID
Logout
Über die Route GET /logout kann die aktuelle Arbeitssitzung beendet werden.
XML-API
Authentifizierung über Credentials (Benutzername/Context/Passwort)
Beachte die Kontextnummern. Kontext "1" bezeichnet das Demo-System, Kontext "4" bzw. die PersonalAutoDNS Kontextnummer, das Live-System.
Bei der Authentifizierung mit dem AutoDNS Benutzernamen und deinem AutoDNS Kontext musst du das Passwort selber festlegen. Es wird im auth-Block im Tag <password> eingegeben.
<auth> <user>USER</user> <context>CONTEXT</context> <password>PASSWORD</password> </auth>
Authentifizierung über Trusted Application
Eine "Trusted Application" ist eine Applikation, die du im AutoDNS als vertrauenswürdig angelegt hast. Der Name der App wird im Tag <name> im application-Block eingegeben.
<request> <authentication> <trusted_application> <uuid>USER</uuid> <password>PASSWORD</password> <application> <name>TRUSTED_APP_NAME</name> </application> </trusted_application> </authentication> <task> </task> </request>
Authentifizierung über die SessionID
Die Authentifizierung über eine Session wird nur empfohlen sofern für die Anbindung der API ein "Automatisches Timeout" der Session notwendig ist. Wir empfehlen immer Authentifizierung über Credentials (Benutzername/Context/Passwort) zu verwenden.
Starten der Arbeitssitzung - Login
Du erzeugst die AutoDNS SessionID mit dem XML-Auftragstyp AuthSession Create. Sie wird im Tag <hash> zurückgegeben.
Die AutoDNS SessionID ist eine UUID (Universally Unique Identifier), mit der du dich für die Dauer einer Arbeitssitzung authentifizierst. Sie wird im auth_session-Block im Tag <hash> eingegeben.
<request> <auth_session> <hash>9b4b36ff-2bed-41c8-8471-6ede5d2873dd</hash> </auth_session> <task> <!-- .... --> </task> </request>
Beenden der Arbeitssitzung - Logout
Die Arbeitssitzung beendest du mit dem XML-Auftragstyp AuthSessionDelete.
Authentifizierung über Zwei-Faktor-Authentifizierung (2FA)
Bei der Zwei-Faktor-Authentifizierung muß zusätzlich zu Benutzernamen und Passwort ein sechsstelliger Zahlencode, der sogenannte Token, eingegeben werden.
Token erzeugen
Der Token wird mit dem Time-based One-time Password Algorithmus (RFC 6238) erzeugt.
Token verwenden
Der Token wird im auth-Block im Tag <token> eingegeben.
<auth> <user>USER</user> <context>CONTEXT</context> <password>PASSWORD</password> <token>TOKEN</token> </auth>