Vorstellung API-Lansweeper

Vorstellung API-Lansweeper

Read this article in english: Vorstellung API-Lansweeper

Vor einigen Tagen habe ich für ein Projekt einen Microservice schreiben müssen der Daten aus Lansweeper als JSON Format bereitstellt. Der Code ist überschaubar das es nur eine Funktion gibt. Die API könnte jedoch auch für andere Interessant sein da sich diese Daten über die API leicht weiterverarbeiten lassen (z.B. mit PowerShell, Python, JavaScript etc.). Ein Datenbank Zugriff oder Authentifizierung bleibt einem damit erspart. Der Microservice liefert nur Daten, das schreiben von Daten in Lansweeper ist damit nicht möglich (Und auch nicht vorgesehen).

Die API ist Open Source und kann über GitHub bezogen werden.

Die API-Lansweeper findet aktuell bei mir Verwendung für

  • Patch Management Dashboard
  • PowerShell Script zum abgleich von Active Directory, WSUS und Lansweeper

Beispiel-Script

Dieses Beispiel-Script liefert Informationen zu allen Computer inkl. Installierter Software, OS, Benutzer und CPU

$response = Invoke-WebRequest -Uri "http://localhost:85/api/Values"  # Hier URL zu API-Lansweeper hinterlegen
$data = ConvertFrom-Json $([String]::new($response.Content))
$data | Out-GridView

Lansweeper Web API Beispiel Ausgabe

Installation

  1. Die Installation von API-Lansweeper ist recht einfach. Sie benötigen lediglich einen Windows Server (Empfohlen 2016 / 2019). Installieren Sie auf diesem die IIS Rolle inkl. aller Anwendungsentwicklungsfeatures (ASP.Net / .Net 4.5 etc.). Laden Sie sich von Microsoft das Web Deploy 3.6 herunter und installieren dieses.

  2. Öffnen Sie Ihren IIS und stellen Sie sicher das Ihrere Standard Website “Default Web Site” heißt. Wenn dies nicht der Fall ist, benennen Sie diese bitte um. Welchen Port Sie verwenden ist egal.

  3. Auf meinem GitHub Repository finden Sie einen Ordner mit Releases. Laden Sie sich hier das aktuelle API-LS-WebDeploy.7z Paket herunter und entpacken dies auf Ihrem Server auf dem Sie die API Installieren möchten. In dem entpackten Ordner befindet sich eine CMD Datei. Öffnen Sie eine administrative CMD und navigieren Sie mit “cd” in den Pfad in dem Sie die Zip-Datei entpackt haben. Führen Sie dann die .cmd Datei mit dem Parameter /Y aus um die API zu installieren.

  4. Nach der Installation wechseln Sie in das Web-Root Verzeichnis der Seite (C:/inetpub/wwwroot). Dort finden Sie die soeben installierte Anwendung und eine web.config Datei. Ersetzten Sie in dieser Datei den Schlüssel “ConnectionString” mit den Verbindungsdaten zur lansweeper Datenbank (Diese muss mindestens auf einem SQLExpress laufen). Speichern Sie die Änderung ab.

  5. Wenn Sie nun mit Ihrem Browser zur Website navigieren und /api/Values dahinter schreiben sollten Sie Daten im JSON Format geliefert bekommen. Beispiel http://meinServer:Port/api/Values

In der Praxis könnte dies so aussehen: http://Lansweeper.intranet.int:80/api/Values

Lansweeper Web API Beispiel Ausgabe