Die Kosten für Saas-Lizenzen sind direkt proportional zum Wachstum, und je mehr Umgebungen auf verschiedene Tools umgestellt werden, desto schwieriger wird die Nachverfolgung. Administrator:innen können RMM-Plattformen einsetzen, um einen klaren Überblick über die Verwendungsdaten zu erhalten, Nutzungstrends zu überwachen und ungenutzte Lizenzen zu erkennen. In diesem Leitfaden wird erörtert, wie Skripting und Automatisierung für proaktive, effiziente und überprüfbare SaaS-Lizenzverfolgungs-Praktiken eingesetzt werden können.
Benutzerdefinierte RMM-Skripte zur Automatisierung der SaaS-Lizenzverfolgung
Effektive Strategien zur Verwaltung von Softwarelizenzen ermöglichen es Unternehmen, auf nicht ausgelastete SaaS-Lizenzen zu verzichten und sie neu zuzuordnen, um die Kosten- und Budgetkontrolle zu optimieren. Aus der Sicht des Managements hilft die optimierte Ansicht der Lizenzen bei der Erkennung von Trends und dem Entscheiden, welche Lizenzen verlängert oder entfernt werden sollen. Die Automatisierung der SaaS-Lizenzverwaltung mithilfe von RMM-Tools sorgt für eine konsistente Durchsetzung und Transparenz und spart so Zeit, reduziert die manuelle Arbeit und minimiert die Kosten.
📌 Voraussetzungen:
- RMM-Plattform mit Skripting-, Berichts- und Automatisierungsfunktionen
- API-Anmeldeinformationen für SaaS-Plattformen
- Administratorrechte
- Unterstützung von PowerShell-, Bash- und CMD-Endpunkten
📌 Empfohlene Einsatzstrategien:
| Wählen Sie eine Methode | 💻 Am besten für Einzelanwender:innen | 💻💻💻 Am besten für Unternehmen |
| Methode 1: PowerShell-Skripts zur Abfrage von Microsoft 365 für Lizenznutzungsberichte | ✓ | |
| Methode 2: Überwachung und Korrelation von RMM-Agentendaten für SaaS-Signale | ✓ | |
| Methode 3: Erstellung von Längsschnittberichten über die SaaS-Nutzung | ✓ |
💡 Hinweis: In diesem Leitfaden werden PowerShell-, Batch- und Bash-Skripte beschrieben, die Sie auf RMM-Plattformen bereitstellen können, die diese Sprachen unterstützen. Der Einfachheit und Konsistenz halber verwenden wir in diesem Leitfaden NinjaOne RMM als primäre Plattform.
💡 Hinzufügen von benutzerdefinierten Skripten zur NinjaOne RMM-Konsole:
NinjaOne unterstützt PowerShell-, Batch- sowie Bash-Skripte und eignet sich damit für die Ausführung der in diesem Guide beschriebenen Skripte. Hier erfahren Sie, wie Sie eigene Automatisierungsskripte in die Skriptbibliothek von NinjaOne einfügen können:
- Starten Sie die NinjaOne RMM-Konsole und gehen Sie dann zu:
Verwaltung > Bibliothek > Automatisierung.
- Drücken Sie im Menü Automatisierung auf Hinzufügen und wählen Sie Neues Skript.
- Füllen Sie die erforderlichen Felder und Parameter für Ihr benutzerdefiniertes Skript aus.
- Geben Sie das Skript Ihrer Wahl ein, um es als Automatisierungsskript zu speichern.
- Stellen Sie sicher, dass die gewählte Sprache mit der Sprache des Skripts übereinstimmt.
- Nach dem Speichern können Sie die in NinjaOne integrierten Tools verwenden, um die Zielgeräte für die Automatisierung auszuwählen, indem Sie das Kontrollkästchen daneben aktivieren.
Automatisieren Sie Routineaufgaben und verwalten Sie Skripte zentral.
Methode 1: PowerShell-Skripts zur Abfrage von Microsoft 365 für Lizenznutzungsberichte
📌 Anwendungsfall: Administrator:innen können PowerShell-Skripte verwenden, um SaaS-Lizenz-Audits mithilfe einer RMM-Plattform zu automatisieren.
📌 Voraussetzung: PowerShell Version 5.1 oder höher.
A. Herstellung einer Verbindung zu Microsoft 365 für den Abruf von Lizenzvereinbarungen:
Das folgende PowerShell-Skript verbindet Administrator:innen mit der Microsoft Graph API mit der Berechtigung zum Lesen von Benutzer- und Lizenzdaten. Dieses Skript ruft alle Benutzer:innen mit mindestens einer zugewiesenen Lizenz ab und eignet sich somit ideal für die Erstellung eines Lizenzverteilungsinventars.
Connect-MgGraph -Scopes "User.Read.All","Directory.Read.All"Get-MgUser -All | Where-Object {$_.AssignedLicenses.Count -gt 0} | Select DisplayName, UserPrincipalName, AssignedLicenses
B. Export von Lizenznutzungsdaten:
Dieses Skript exportiert alle Benutzerdaten in eine CSV-Datei und ist damit ideal für die Dokumentation und Aufzeichnung der Lizenznutzung. Über ein RMM können Administrator:innen die Ausführung des Skripts planen, um regelmäßig Lizenzberichte zu erstellen.
Connect-MgGraph -Scopes "User.Read.All","Directory.Read.All"New-Item -ItemType Directory -Path "C:\Reports" -Force | Out-NullGet-MgUser | Export-Csv -Path "C:\Reports\LicenseUsage.csv" -NoTypeInformation
💡 TIPP: Sie können C:\Reports durch einen beliebigen Pfad ersetzen, den Sie als Exportpfad angeben möchten.
Methode 2: Überwachung und Korrelation von RMM-Agentendaten für SaaS-Signale
📌 Anwendungsfälle: Administrator:innen können die von ihren RMM-Plattformen angebotenen Dienste verwenden, um SaaS-App-Aktivitäten auf verwalteten Endpunkten zu ermitteln.
Erkennung von SaaS-App-Prozessen für eine effektive Lizenzverfolgung:
Administrator:innen können Software-Inventarisierungsberichte über eine RMM-Plattform verwenden, wodurch die Notwendigkeit der Skripterstellung und der manuellen Bestandsverfolgung entfällt. NinjaOne zeigt zum Beispiel Software-Nutzungsmuster, Updates und Lizenzen an und hilft einer Umgebung, Software effizient zu verwalten und zuzuweisen.
Eine effektive Überwachung des Softwarebestands kann bei der Verfolgung der Installation oder Entfernung von Anwendungen helfen, und gibt Aufschluss über ungenutzte Lizenzen, die neu zugewiesen werden können.
Planmäßige Berichterstattung über den Softwarebestand
RMMs wie NinjaOne können umfassende Daten über Software-Installationen und -Deinstallationen von mehreren Geräten sammeln. Sie helfen auch bei der Identifizierung nicht autorisierter und nicht lizenzierter Software und sind damit ideal für die lückenlose Einhaltung von Lizenzbestimmungen.
Administrator:innen können diese Erkenntnisse in geplanten Berichten zusammenfassen und so eine klarere Software-Inventarisierung für proaktives IT-Asset-Management und Planung bereitstellen.
Methode 3: Erstellung von Längsschnittberichten über die SaaS-Nutzung
📌 Anwendungsfälle: Verwenden Sie PowerShell-Skripte über RMM-Plattformen, um Einblicke in die Nutzung von SaaS-Lizenzen in verschiedenen Umgebungen über einen längeren Zeitraum zu erhalten. Administrator:innen können dann die erstellten Berichte vergleichen, um Trends bei der Lizenznutzung im Laufe der Zeit zu erkennen.
📌 Voraussetzung:
- Microsoft 365 oder Azure AD-verbundene Geräte
- Administratorrolle
- Installieren Sie das PowerShell-Modul Microsoft Graph
💡 Hinweis: Im folgenden Beispiel werden Microsoft 365-Benutzer:innen innerhalb eines Unternehmens verfolgt und als wöchentlicher Bericht gespeichert. Sie können das nachstehende Skript jedoch an die von Ihnen gewünschten Parameter anpassen.
A. Skript zur periodischen Erstellung von Nutzungsdaten-Snapshots:
Das folgende Skript ruft alle Benutzerkonten von Microsoft 365 ab, einschließlich ihrer Benutzernamen, E-Mails, Kontostatus und zugewiesenen Lizenzen. Das Skript exportiert diese dann als CSV-Datei zu C:\SaaSReports und die Datei ist entsprechend dem Erstellungsdatum beschriftet.
$date = Get-Date -Format "yyyy-MM-dd"$path = "C:\SaaSReports"if (!(Test-Path $path)) { mkdir $path | Out-Null }Get-MgUser | Export-Csv "$path\LicenseUsage-$date.csv" -NoTypeInformation
B. Beispielskript zum Vergleich früherer Berichte:
Nachdem genügend Daten über die Lizenznutzung gesammelt wurden, können Administrator:innen mithilfe von Skripten verschiedene Berichte vergleichen, um die Lizenznutzung im Zeitverlauf darzustellen. Darüber hinaus kann dies dabei helfen, inaktive Konten zu identifizieren, um Lizenzen zurückzugewinnen und eine Erhöhung oder Verringerung der Lizenzanzahl für eine Umgebung zu begründen.
Compare-Object `-ReferenceObject (Import-Csv "C:\SaaSReports\LicenseUsage-2025-08-01.csv") `-DifferenceObject (Import-Csv "C:\SaaSReports\LicenseUsage-2025-08-08.csv") `-Property UserPrincipalName
⚠️ Wichtige Hinweise
| Risiken | Mögliche Konsequenzen | Korrekturen |
| Einsatz von Skripten ohne ausführliche Tests | Nicht alle Umgebungen sind gleich konfiguriert. Skripte können sich in verschiedenen Unternehmen unterschiedlich verhalten. | Testen Sie Skripte lokal in einer kontrollierten Umgebung, um ihre Wirksamkeit vor dem Einsatz zu überprüfen. |
| Ungenaue Skriptsyntax und Fehler | Eine ungenaue Skriptsyntax und typografische Fehler können zu Problemen führen, die Skripte zum Scheitern bringen. | Überprüfen Sie Skripte doppelt auf korrekte Syntax, insbesondere Variablen, Pfade und Cmdlets. Stellen Sie sicher, dass die erforderlichen PowerShell-Module und Ihre Zielordner vorhanden sind, bevor Sie Dateien schreiben. |
| Plattforminkompatibilität | Cmdlets wie Get-MgUser und Microsoft Graph-Module funktionieren nicht auf macOS- und Linux-Geräten. | Vergewissern Sie sich, dass die Logik Ihres Skripts mit dem Betriebssystem und der Befehlszeilenschnittstelle, die Sie verwenden, kompatibel ist. |
Behebung von Problemen im Zusammenhang mit SaaS-Lizenznutzungsberichten
Problem Nr. 1: Fehlende Lizenzdaten
Die Ausführung eines Scripts zur Abfrage des Lizenzverwendungs-Berichts kann manchmal unvollständige Lizenzzuweisungen und Benutzerlisten zurückgeben. Einige häufige Ursachen für dieses Problem sind abgelaufene API-Tokens oder fehlende Berechtigungsumfänge. Eine Umgehung dieses Problems besteht darin, die Verbindung zu Microsoft Graph neu zu initialisieren, indem das folgende PowerShell-Skript ausgeführt wird:
Connect-MgGraph -Scopes "User.Read.All","Directory.Read.All"
Neben dem richtigen Token und den richtigen Berechtigungsumfängen ist es wichtig, dass Sie über ausreichende Administratorrechte für den Zugriff auf Lizenzdaten verfügen. Um dies zu überprüfen, öffnen Sie das Microsoft 365 Admin Center und das Benutzerkonto, in dem das Skript ausgeführt wird, und gehen Sie dann zu den zugewiesenen Rollen. Hier sollte mindestens Reports Reader oder User Administrator angezeigt werden.
Problem Nr. 2: Skripte werden nicht über RMM ausgeführt
Überprüfen Sie, ob Ihr PowerShell-Ziel das Skript über die Ausführungsrichtlinien-Funktion blockiert, indem Sie Folgendes eingeben:
powershell.exe -ExecutionPolicy Bypass -File "C:\Path\To\YourScript.ps1"
💡 HINWEIS: Ersetzen Sie C:\Path\To\YourScript.ps1 durch den tatsächlichen Pfad Ihres Skripts.
Prüfen Sie außerdem, ob Sie die Skripte als BENUTZER oder SYSTEM ausführen, indem Sie Folgendes ausführen:
Write-Output "Running as: $env:USERNAME"
Bei der Überwachung von SaaS-Lizenzen ermöglicht die Ausführung als BENUTZER den Zugriff auf benutzerspezifische Daten und andere Variablen, die an einen angemeldeten Benutzer gebunden sind.
Problem Nr. 3: Unvollständige Endpunktprotokolle
Konfigurieren Sie das GPO, um sicherzustellen, dass Audit-Richtlinien auf den Zielendpunkten aktiviert sind. Öffnen Sie dazu gpmc.msc und gehen Sie dann zu Computerkonfiguration > Windows-Einstellungen > Sicherheitseinstellungen > Erweiterte Überprüfungsrichtlinie. Stellen Sie sicher, dass Audit Logon, Audit Logoff, Audit Special Logon und Audit Other Logon/Logoff in einem mit Ihrer Ziel-Organisationseinheit verbundenen GPO aktiviert sind.
Überlegungen bei der Verwendung von RMM für die SaaS-Lizenzverfolgung
Neben der Erstellung von Lizenznutzungsberichten bieten RMM-Plattformen weitere Funktionen, die die Effizienz Ihrer Lizenzverwaltung und -überwachung maximieren. Im Folgenden werden einige wichtige Überlegungen zum Einsatz von RMM-Automatisierung zur Verfolgung von SaaS-Lizenzen aufgeführt.
Verfolgung inaktiver SaaS-Lizenzen durch Lizenznutzungsberichte
RMM-Plattformen können dabei helfen, ungenutzte Lizenzen zu identifizieren, um sie freizugeben oder anderen Benutzer:innen neu zuzuweisen. Da SaaS-Lizenzen in der Regel über Abonnements bezahlt werden, verschwenden nicht ausgelastete Lizenzen mit der Zeit Ihr Budget. Durch die Möglichkeit, inaktive Lizenzen schnell zu identifizieren und zurückzufordern, können Unternehmen die langfristigen SaaS-Kosten senken.
Datenspeicherung zur Unterstützung der Trendanalyse
Administrator:innen können RMM-Plattformen verwenden, um regelmäßig Langzeitberichte über die SaaS-Nutzung zu erstellen, sei es wöchentlich oder monatlich. Die Aufbewahrung von SaaS-Nutzungs-Snapshots für 6 bis 12 Monate kann die Trendanalyse innerhalb einer Umgebung verbessern. Längere Datenaufbewahrungszeiten bieten tiefere Einblicke in die Lizenznutzungsmuster und helfen, Lizenzierungsentscheidungen zu rechtfertigen.
Überlegungen zur Sicherheit
Auch wenn RMMs unglaubliche Überwachungsmöglichkeiten bieten, sollten Administrator:innen vermeiden, zu viele sensible Daten zu sammeln, die die Privatsphäre der Endbenutzer:innen verletzen könnten. Die übermäßige Sammlung personenbezogener Daten, wie zum Beispiel des Browserverlaufs, kann beispielsweise die Einhaltung der Datenschutz-Grundverordnung (DSGVO) verletzen.
Umgehen von API-Grenzen
APIs können nur eine bestimmte Menge an Nutzungsdaten innerhalb eines bestimmten Zeitrahmens erfassen, der von Minuten bis zu einem Tag reicht. Das Überschreiten dieser Grenzwerte kann dazu führen, dass Skripte fehlschlagen und die Berichte über die Lizenznutzung unvollständig sind. Zum Umgehen können Sie Batch-Abfragen verwenden oder Jobs außerhalb der Hauptgeschäftsstunden planen, um den Durchsatz zu maximieren und Massen-API-Abfragen zu beschleunigen.
NinjaOne-Dienste für SaaS-Lizenzverfolgung und Nutzungsberichte
Administrator:innen können die folgenden NinjaOne-Services einsetzen, um die Verfolgung und Inventarisierung von SaaS-Lizenzen zu erleichtern:
| NinjaOne-Dienstleistung | Definition | Wie es bei der SaaS-Lizenzverfolgung hilft |
| Skript-Planung | NinjaOne unterstützt die Aufgabenplanung für die automatische Skriptausführung. | Planen Sie Skriptbereitstellungen, um regelmäßig Daten zur Endpunktlizenznutzung und -aktivität zu sammeln. |
| Warnmeldungen | Benachrichtigt Administrator:innen schnell, wenn ein Endpunkt eine bestimmte Bedingung erfüllt. | Legen Sie Benachrichtigungen zur automatisierten Erkennung fest, wenn SaaS-Lizenzen nach einem bestimmten Zeitraum nicht mehr verwendet werden. |
| Benutzerdefinierte Berichte | Diese Funktion ermöglicht die Erstellung von anpassbaren Berichten mit Hilfe von Vorlagen und rationalisiert gleichzeitig die Berichtserstellung durch die geplante Bereitstellung. | Erstellen Sie automatisch wiederkehrende Berichte über die Lizenznutzung für M365, Zoom, Adobe und andere SaaS-Anwendungen, um die Verfolgung und Überwachung zu erleichtern. |
| Asset-Inventar | Bietet einen detaillierten Überblick über die installierte Endpunktsoftware, alles in einer einheitlichen Benutzeroberfläche. | Ein umfassender Überblick über die IT-Assets hilft bei der strategischen Zuweisung von Lizenzen an Endbenutzer:innen und verbessert die Kostenmanagement-Praktiken. |
| Plattformübergreifender Support | Vereinfacht die Überwachung und Verwaltung von Endpunkten mit unterschiedlichen Betriebssystemen, sodass mehrere separate Plattformen nicht mehr erforderlich sind. | Plattformübergreifende Endpunktüberwachung und Skripting erleichtern die Verfolgung von SaaS-Lizenzen in gemischten Umgebungen. |
| PSA-Integration | Die PSA-Software verfolgt die Geschäftsprozesse, einschließlich der Assets wie SaaS-Lizenzzuweisungen und -kosten. | NinjaOnes eigenständige PSA-Lösung und die Integration mit verschiedenen PSA-Systemen bieten umfassende Möglichkeiten zur Lizenzverfolgung. |
Verwendung von RMM-Plattformen zur Rationalisierung der SaaS-Lizenzverfolgung
Die Verfolgung der SaaS-Lizenznutzung hilft MSPs und internen IT-Teams, Kosten aufgrund von Überbeanspruchung zu reduzieren. Administrator:innen können auch Skripte mit RMMs planen, um Audits zu automatisieren, die ihnen helfen, nicht ausgelastete Lizenzen zu erkennen und verschwenderische Zuweisungen zu minimieren. Durch Längsschnittberichte lassen sich im Laufe der Zeit datengestützte Trends erkennen, die Strategien für die Lizenzzuweisung, wie zum Beispiel Verlängerung oder Aufhebung, rechtfertigen.
Verwandte Themen:
