Skip to content

KundenWebservice - Authentifizierung

Allgemein

Die Authentifizierung wird durch einen TokenService verwaltet. Die Parameter werden Ausschließlich über HTTP-Header ausgetauscht. Der Service bietet die Möglichkeit:

  • Sich als Client zu Registrieren createClient
  • Sich anhand der Zugangsdaten des Kunden einen Token zu erzeugen createToken
  • Einen Erzeugten Token inkl. des dazugehörigen Client's zu löschen deleteToken
  • Eine E-Mail zur Erzeugung eines neuen Passwortes anzufordern passwordMail

URL

https://www.maklerinfo.biz/service/customer/${version}/rest

Funktionsübersicht

Funktion HTTP Beschreibung
createClient POST ${pfad-sts}/STS/clients Erzeugt eine neue Client-ID
createToken POST ${pfad-sts}/STS/tokens Erzeugt einen Authentifizierungstoken
deleteToken DELETE ${pfad-sts}/STS/tokens
passwordMail POST ${pfad-sts}/STS/password/mail Versendet eine E-Mail zum Anfordern eines neuen Passwortes

createClient

Eingabe

Name Datentyp Beschreibung
Timestamp DateTime Der Zeitstempel zu dem die Anfrage erzeugt wurde. Falls dieser mehr als 30 Sekunden in der Vergangenheit liegt wird die Anfrage abgelehnt.
☛ Sollte sich das Gerät in einer anderen Zeitzone befinden, geben Sie diese an!
Uid string Falls der Consumer sich direkt beim Kunden ausgeführt (zB. PC, Smartphone..) ist hier die Geräte UID anzugeben, falls es sich um einen Webauftritt handelt, die Domain von welcher sich der Kunde anmelden möchte
User-Agent string Falls es sich einen Webauftritt handelt, ist hier der vom Browser übersendete User-Agent-Header anzugeben, sonst ein JSON-Kodiertes Objekt mit den Eigenschaften wie weiter unten Beschrieben
Nonce string SHA-1 Hash aus Uid & Timestamp. Falls der Hash nicht nachgebildet werden kann wird die Anfrage abgewiesen sha1(uid + timestamp)
Ip string Die IP des Clients
☛ Nur bei einem Webauftritt

Rückgabe

Name Datentyp Beschreibung
Id string Die Id des Clients welche bei jedem Aufruf mitzusenden ist
Random string Eine kleine zufällige Zeichenkette welche bei weiteren Anfrage benötigt wird um die Nonce zu erzeugen
Session string Die Session-Id
☛ Nur bei einem Webauftritt

Beispiel App

Request:

POST ${pfad-sts}/STS/clients HTTP/1.1
Host: www.maklerinfo.biz
X-Dio-User-Agent: {"type":"app","plattform":"Android","name":"Meine App"}
X-Dio-Timestamp: 2015-09-10T15:51:00
X-Dio-Uid: 9796E69A-5FC7-7E91-8CBC-8B7E49A9526A
X-Dio-Nonce: f5a9a1626fe842ef473caf015d85261262945843
Content-Length: 0
Connection: close

Response:

HTTP/1.1 200 OK
X-Dio-Id: d9d6e78652c8c6519d ... dcbae89884821683d20
X-Dio-Random: 5ssi1
Connection: close

Beispiel Webauftritt

Request:
POST ${pfad-sts}/STS/clients HTTP/1.1
Host: www.maklerinfo.biz
X-Dio-Timestamp: 2016-01-11T16:51:10
X-Dio-Uid: kundenlogin.blaumakler.de
X-Dio-User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:41.0) Gecko/20100101 Firefox/41
X-Dio-Ip: 127.0.0.1
X-Dio-Nonce: f108c409bd86276d953c7071341cf284c261609f
Connection: close

Response:

HTTP/1.1 200 OK
X-Dio-Id: 1cca67bd9c6d3237186 ... d91b7ada36fa7100459bec6e0d69d4eb7
X-Dio-Random: 481B2
X-Dio-Session: 63D5B80B-E674-BEC8-3AD5-9E69F45907A5
Connection: close

createToken

Eingabe

Name Datentyp Beschreibung
Timestamp DateTime Der Zeitstempel zu dem die Anfrage erzeugt wurde. Falls dieser mehr als 30 Sekunden in der Vergangenheit liegt wird die Anfrage abgelehnt.
☛ Sollte sich das Gerät in einer anderen Zeitzone befinden, geben Sie diese an!
Uid string Falls der Consumer direkt vom Kunden ausgeführt wird (zB. PC, Smartphone..), ist hier die Geräte UID anzugeben, falls es sich um einen Webauftritt handelt, die Domain von welcher sich der Kunde anmelden möchte
Client string Die von createClient zurückgelieferte Id
Nonce string SHA-1 Hash aus Uid & Timestamp & Random. Falls der Hash nicht nachgebildet werden kann wird die Anfrage abgewiesen sha1(uid + timestamp + client.random)
Username string Benutzername oder Kundennummer
Password string Das Passwort des Kunden
User-Agent string User-Agent des Browser s. createClient
☛ Nur bei einem Webauftritt
Session string die von createClient zurückgelieferte Session-Id
☛ Nur bei einem Webauftritt
Ip string Ip des Clients.
☛ Nur bei einem Webauftritt

Rückgabe

Name Datentyp Beschreibung
Token string Der Token welcher fortan zu Authentifizierung gilt
Uri string Der Pfad zum Kundenverzeichnis
Session string Die Session-Id, diese kann sich von der von createClient gelieferten Id unterscheiden und ist durch diese zu ersetzten
☛ Nur bei einem Webauftritt

Beispiel App

Request:

POST ${pfad-sts}/STS/tokens HTTP/1.1
Host: www.maklerinfo.biz
X-Dio-Client: d9d6e78652c8c6519d ... dcbae89884821683d20
X-Dio-Timestamp: 2015-09-10T15:51:00
X-Dio-Uid: 9796E69A-5FC7-7E91-8CBC-8B7E49A9526A
X-Dio-Nonce: 595a9753dda9a4cd3088fb26d8a3c38d140b8c42
X-Dio-Username: Benutzername
X-Dio-Password: Passwort
Content-Length: 0
Connection: close

Response:

HTTP/1.1 200 OK
X-Dio-Token: bf1aac20a080dd2...1f91ccfdcdebc061a29d
X-Dio-Uri: ${pfad}/${knr}
Connection: close

Beispiel Webauftritt

Request:

POST ${pfad-sts}/STS/tokens HTTP/1.1
Host: www.maklerinfo.biz
X-Dio-Client: 1cca67bd9c6d3237186 ... d91b7ada36fa7100459bec6e0d69d4eb7
X-Dio-Timestamp: 2016-01-11T16:51:11
X-Dio-Uid: kundenlogin.blaumakler.de
X-Dio-Nonce: 595a9753dda9a4cd3088fb26d8a3c38d140b8c42
X-Dio-Username: Benutzername
X-Dio-Password: Passwort
X-Dio-User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:41.0) Gecko/20100101 Firefox/41
X-Dio-Session: 63D5B80B-E674-BEC8-3AD5-9E69F45907A5
X-Dio-Ip: 127.0.0.1
Content-Length: 0
Connection: close

Response:

HTTP/1.1 200 OK
X-Dio-Token: bf1aac20a080dd2...1f91ccfdcdebc061a29d
X-Dio-Uri: ${pfad}/${knr}
X-Dio-Session: 63D5B80B-E674-BEC8-3AD5-9E69F45907A5
Connection: close

deleteToken

Beispiel

Request:

DELETE ${pfad-sts}/STS/tokens HTTP/1.1
Host: www.maklerinfo.biz
${Auth}
Content-Length: 0
Connection: close

Response:

HTTP/1.1 200 OK
Connection: close

mailPassword

Mit dieser Funktion starten Sie einen Vorgang zur Vergabe eines neuen Passwortes. Hierzu wird eine E-Mail an den Kunden versendet (E-Mail-Adresse des Kunden muss vorliegen), welche einen Bestätigungs-Link enthält, mit dem der Kunde ein neues Passwort generiert und per SMS oder E-Mail zugesandt bekommt. Für den Versandt der Bestätigungs-E-Mail muss zunächst eine Client-ID erzeugt werden. Siehe hierzu auch den Abschnitt createClient.

Eingabe

Name Datentyp Beschreibung
Timestamp DateTime Der Zeitstempel zu dem die Anfrage erzeugt wurde. Falls dieser mehr als 30 Sekunden in der Vergangenheit liegt wird die Anfrage abgelehnt.
☛ Sollte sich das Gerät in einer anderen Zeitzone befinden, geben Sie diese an!
Uid string Falls der Consumer sich direkt beim Kunden ausgeführt (zB. PC, Smartphone..) ist hier die Geräte UID anzugeben, falls es sich um einen Webauftritt handelt, die Domain von welcher sich der Kunde anmelden möchte
User-Agent string Falls es sich einen Webauftritt handelt, ist hier der vom Browser übersendete User-Agent-Header anzugeben, sonst ein JSON-Kodiertes Objekt mit den Eigenschaften wie weiter oben beschrieben
Id string Die ID des Clients
Username string Der Benutzername bzw. die Kundennummer
Ip string Die IP des Clients
☛ Nur bei einem Webauftritt
Session string Die Session-ID des Clients
☛ Nur bei einem Webauftritt
Nonce string SHA-1 Hash aus Uid & Timestamp. Falls der Hash nicht nachgebildet werden kann wird die Anfrage abgewiesen sha1(uid + timestamp)

Beispiel App

Request:

POST ${pfad-sts}/STS/password/mail HTTP/1.1
Host: www.maklerinfo.biz
X-Dio-Timestamp: 2016-12-12T13:40:49
X-Dio-Uid: 9796E69A-5FC7-7E91-8CBC-8B7E49A9526A
X-Dio-User-Agent: {"type":"app","plattform":"Android","name":"Meine App"}
X-Dio-Nonce: e8420e1cb99...b69f8991bda1a469d
X-Dio-Username: username
X-Dio-Id: 397580e2268438db48856aed7...696d01d84406cd39f049665
Connection: close

Response:

HTTP/1.1 200 OK
Connection: close
Content-Length: 123
Content-Type: text/html; charset="UTF-8"

Beispiel Webauftritt

Request:

POST ${pfad-sts}/STS/password/mail HTTP/1.1
Host: www.maklerinfo.biz
X-Dio-Timestamp: 2016-12-12T13:45:41
X-Dio-Uid: kundenlogin.blaumakler.de
X-Dio-User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:50.0) Gecko/20100101 Firefox/50.0 
X-Dio-Ip: 127.0.0.1
X-Dio-Nonce: c80f590e618...2e4813346af76627e8
X-Dio-Username: username
X-Dio-Session: A8C863CB...893EF3838AC8
X-Dio-Id: 36807b3d50d0eef3d8...52545e9fd9c8a697fab121a8
Connection: close

Response:

HTTP/1.1 200 OK
Content-Length: 123
Connection: close
Content-Type: text/html; charset="UTF-8"

Auth-Header

Eingabe

Name Datentyp Beschreibung
Timestamp DateTime Der Zeitstempel zu dem die Anfrage erzeugt wurde. Falls dieser mehr als 30 Sekunden in der Vergangenheit liegt wird die Anfrage abgelehnt.
☛ Sollte sich das Gerät in einer anderen Zeitzone befinden, geben Sie diese an!
Uid string Falls der Consumer sich direkt beim Kunden ausgeführt (zB. PC, Smartphone..) ist hier die Geräte UID anzugeben, falls es sich um einen Webauftritt handelt, die Domain von welcher sich der Kunde anmelden möchte
Client string Die von createClient zurückgelieferte Id
Nonce string SHA-1 Hash aus Uid & Timestamp & Random, falls der Hash nicht nachgebildet werden kann wird die Anfrage abgewiesen sha1(uid + timestamp + client.random)
Token string Der beim Authentifizieren zurückgegeben Token
Session string Session-Id.
☛ Nur bei einem Webauftritt
User-Agent string User-Agent des Browsers.
☛ Nur bei einem Webauftritt
Ip string Ip des Clients.
☛ Nur bei einem Webauftritt

Rückgabe

Name Datentyp Beschreibung
Token string Token, dieser kann sich im Laufe der Sitzung ändern und ist ggf. auszutauschen.
☛ Nur bei einem Webauftritt
Session string Session-Id, diese kann sich im Laufe der Sitzung ändern.
☛ Nur bei einem Webauftritt

Beispiel App

X-Dio-Client: d9d6e78652c8c6519d ... dcbae89884821683d20
X-Dio-Timestamp: 2015-09-10T15:51:01
X-Dio-Uid: 9796E69A-5FC7-7E91-8CBC-8B7E49A9526A
X-Dio-Token: bf1aac20a080dd2...1f91ccfdcdebc061a29d
X-Dio-Nonce: 2e99627b9cac1550eb67556a0c9d7519651306e2

Beispiel Webauftritt

Request:

X-Dio-Client: 1cca67bd9c6d3237186 ... d91b7ada36fa7100459bec6e0d69d4eb7
X-Dio-Timestamp: 2016-01-11T16:51:11
X-Dio-Uid: kundenlogin.blaumakler.de
X-Dio-Token: bf1aac20a080dd2...1f91ccfdcdebc061a29d
X-Dio-Nonce: 697afd4f759475116256fa53629f00eaafa18a55
X-Dio-User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:41.0) Gecko/20100101 Firefox/41
X-Dio-Session: 63D5B80B-E674-BEC8-3AD5-9E69F45907A5

Response:

...
X-Dio-Token: bf1aac20a080dd2...1f91ccfdcdebc061a29d
X-Dio-Session: 63D5B80B-E674-BEC8-3AD5-9E69F45907A5
...