Domino 9 und frühere Versionen > ND8: Entwicklung
Webservice vom IIS konsumieren
(1/1)
marschul:
Hallo,
ich versuche, mit R8.5 einen Webservice zu konsumieren (siehe auch http://atnotes.de/index.php/topic,49308.0.html).
Das klappt auch, allerdings nur, wenn mein Admin-Kollege auf dem IIS, auf dem der Service läuft, die Benutzerauthentifizierung deaktiviert. D.h. der IIS lässt nur Anfragen von Usern zu, deren Benutzeranmeldung er kennt (Prüfung gegen das AD, es handelt sich wohl um die MS-eigene Authentifizierungsmethode - kenne mich da leider nicht so aus). Kann ich Notes beibringen, dies zu unterstützen, d.h. die Anmeldeinformationen von Windows zu übergeben?
Der Designer scheitert ansonsten schon beim Anlegen des Webservices und dem Verarbeiten der WSDL, die ich per URL übergebe. Bei deaktivierter Anmeldung werden die Klassen sauber erstellt und alles funktioniert wie gewünscht.
Danke & Gruß
Marco
gossifu:
Hallo Marco,
lade Dir am besten die WSDL lokal runter.
Einfach die URL in den Browser und das XML als Datei speichern.
Dann gibt es zwei Möglichkeiten:
Authentifizierung mit NT-Token: Dazu sollte der Domino-Server als Service-Account und nicht als System-Account laufen.
Damit wäre die Authentifizierung gegeben
oder
Es geht nur um das Webkennwort, dann kann man dieses dem Webservice mitgeben. Die Methode
--- Code: ---Setcredentials(uName, pw)
--- Ende Code ---
bietet diese Möglichkeit.
mfg
Kjeld
marschul:
Hallo Kjeld,
vielen Dank, werde mir das morgen genauer anschauen.
Hab das bislang mit dem LN-Client auf meinem XP-Client getestet (das mit der lokalen WSDL ist eine gute Idee, nur leider bekomme ich dann bei der späteren Ausführung eines Agents, der den WS nutzt, ebenfalls den 401-Fehler vom IIS), später soll's auch auf dem Server funktionieren.
Viele Grüße
Marco
m3:
--- Zitat ---We can secure a Web Service by using one of the following Windows authentication schemes:
* Integrated Windows authentication
* Basic and basic with SSL authentication
* Digest authentication
* Client Certificate authentication
--- Ende Zitat ---
http://www.15seconds.com/issue/020312.htm
When you import the provider WSDL into Domino's Script Library, it is automatically created into a class that is extending PortTypeBase class of the lsxsd.lss. PortTypeBase class uses another class called "NotesWebServiceEngine" that has a method call "SetCredentials" takes two params (username, password).
--- Code: ---Class ListUpdates As PortTypeBase
Sub NEW
Call Service.Initialize ("UrnDefaultNamespaceListUpdatesService", _
"ListUpdatesService.Domino", "http://somewebservice?OpenWebService", _
"ListUpdates")
Call Service.setCredentials( "myid", "mypassword" )
End Sub
......
End Class
--- Ende Code ---
via Domino Web Service Consumer and Passing credential
marschul:
Hallo Kjeld & Martin,
danke für Eure Antworten. Nachdem mein Kollege auch noch am IIS nachkonfiguriert hat, funktioniert jetzt alles, soger mit HTTPS :)
SetCredentials war das, was mir fehlte.
Gruß
Marco
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln