Das Notes Forum
Lotus Notes / Domino 10 => ND10: Administration & Userprobleme => Thema gestartet von: klauskobald am 13.05.19 - 15:35:21
-
In der Dokumentation
https://www-10.lotus.com/ldd/ddwiki.nsf/xpAPIViewer.xsp?lookupName=IBM+Domino+Access+Services+9.0.1#action=openDocument&res_title=Specifying_request_headers_das901&content=apicontent&sa=true
steht folgendes:
Im Header soll ich das schicken:
Authorization username:password (must be encoded)
Das tue ich mit der App: postman, mit der ich sonst auch API calls teste.
Als was soll das encoded werden? Ich habe UrlEncode und base64 probiert.
Beim Aufrufen von
https://********/api/core/stats
kommt aber immer eine Anmeldeseite.
Danke für Hilfe
-
Du musst auch den Typ (z.B. Basic) mit angeben im Authorization- Header und dazu dann user:pass Base64 encoded übergeben, siehe auch RFC 7617.
-
hm,
ok das heißt dann, angenommen
user:pass sei abc:def, base64 encode ergibt das: YWJjOmRlZg==
inklusive dem :, wenn ich richtig verstehe.
Dann schreibe ich als key:
Authorization
und als value:
Basic YWJjOmRlZg==
geht aber leider nicht.
wenn ich die /api/data ohne Authorization aufrufe kriege ich:
{
"code": 403,
"text": "Forbidden"
}
wenn ich authorization mitschicke kommt einen html Seite mit login usw.
Muss der Server Admin da was einstellen?
-
Du musst natürlich für den Server auch im Website-Dokument die Basic-Authorization enablen, bzw. mit einer eigenen Website-Rule nur für eine Verzeichnis bzw. eine spezifische Datenbank (ist sauberer) - sonst macht Domino keine Basic-Auth, sondern nur Session-Based-Authentication.
-
danke, ich gebe das mal weiter.