Web Service API
Der Web Service stellt eine direkte Schnittstelle zu SCCM dar und kann von Fremdanwendungen genutzt werden.
Weitere Informationen zur Verwendung der Schnittstelle sind in der API-Referenz unter https://www.smcteam.de/help/sccmmanager/3/api-reference/ zu finden.
Wenn die SOAP-Header-Security eingeschaltet ist, kann der Webservice nur mit einem spezifischen SOAP-Header aufgerufen werden. Dieser wird mittels beiliegender .NET-Klassenbibliothek generiert. Außerdem muss ein passender Token erstellt werden. Im folgenden wird diese Konfiguration anhand eines Beispiels erläutert.
Einbindung in Visual Studio
Dieses Video zeigt die hier beschriebenen Schritte:
Video fehlt: "WebService-API-Anbindung"
- Konfiguration in der Konfigurationsdatei „web.config“ des Webservices (alternativ über die Anwendung "SCCM Manager Web Config" auf dem Server, über das Startmenü öffnen):
Der „AssemblyName“ ist frei wählbar und wird später im Webservice-Log neben dem aufrufenden Benutzer angezeigt. - Generierung einer zufälligen GUID und Erweiterung der Datei „Tokens.xml“ im Verzeichnis „Ressources“ des Webservices:
- Einbinden der Webservicereferenz in Visual Studio:
- Einbinden der Datei „SCCMWebService.Token.dll“ in Visual Studio:
Die SCCMWebService.Token.dll von Server-Installationspfad\API in das eigene Projektverzeichnis kopieren, dann referenzieren. - Instanziierung des Webservices mit dem Soap Header, die übergebene GUID entspricht der zuvor Definierten aus der Datei „Token.xml“:
SCCMWebService.SCCMWebService sccmWebService = new SCCMWebService.SCCMWebService(); sccmWebService.Credentials = CredentialCache.DefaultCredentials; sccmWebService.CookieContainer = new CookieContainer(); string sessionID = sccmWebService.GetSessionID(); string token = WebServiceToken.Create(sessionID, "7d9ac659-a113-4ad1-846f-da64ac42ca7f"); sccmWebService.SCCMSoapHeaderValue = new SCCMSoapHeader(); sccmWebService.SCCMSoapHeaderValue.Token = token; //Test: ServiceVersion version = sccmWebService.GetVersion();
- Der Webservice kann nun benutzt werden.