WP R3

Neue Funktionen und Features in ScriptRunner 2015R3

Unser Team hat in den letzten Monaten intensiv an der neuen Version von ScriptRunner gearbeitet. Das Feedback von Administratoren und Teams, welche intensiver mit PowerShell arbeiten, auf unser Produkt ist überwältigend. Wir haben die Rückmeldungen und Ideen unserer Kunden gesammelt und in die vielen neuen Funktionen einfließen lassen.

Wir wollten dabei vor allem Administratoren unterstützen, welche im IT Betrieb mit PowerShell Skripten vor allem zentrale Systeme wie Exchange, SharePoint, Office365, Azure, Windows Server, Hyper-V und auch Citrix XenApp managen und verwalten.

Zudem haben wir uns neben der Unterstützung für Administratoren auch denen zugewandt, welche Skripte mit der PowerShell ISE entwickeln. Im Ergebnis können wir nun alle wesentlichen Prozessschritte beim Umgang mit PowerShell abdecken. Entwickeln – Verwalten – Ausführen – Überwachen – Delegieren von PowerShell Skripten. So kommen wir unserer Vision Collaboration und Automation für PowerShell wieder einen Schritt näher.

Hier nun die neuen Features und Verbesserungen im Einzelnen.

Produkt

  • Neue Produkt-Hauptversion 2.6; offizielle Versionsbezeichnung „ScriptRunner 2015R3“
  • Handbücher wurden um die neuen Funktionen erweitert und aktualisiert
  • Neues Benutzer-Handbuch zur ISE App; siehe auch Abschnitt „Entwickeln“
  • Hilfetexte und Texte in den Infoboxen wurden ergänzt und aktualisiert
  • Aktualisierte technische FAQs
  • Verbessertes Setup im Zuge der Microsoft Zertifizierungstests
  • Verbessertes Herunterfahren und verbesserte Sicherung der Konfiguration im Falle eines OS System Crash
  • Zertifizierungstest von Microsoft vollständig durchgeführt und bestanden

Testen Sie die neue Version von ScriptRunner!

Entdecken Sie das Entwickeln, Verwalten, Ausführen, Überwachen und Delegieren von PowerShell-Skripten mit ScriptRunner – einfach, zuverlässig und nachvollziehbar.

Zur unverbindlichen 30 Tage-Testversion.

NEU: Entwickeln von PowerShell Skripten mit der ScriptRunner ISE App

ScriptRunner unterstützt nun neu den kompletten Prozessschritt zur Entwicklung von Skripten. Dadurch wird es PowerShell-Entwicklern und DevOps (entwickelnde Administratoren) direkt in Verbindung mit der zentralen ScriptRunner Skriptbibliothek ermöglicht, die zentral verwalteten Skripte mit der Microsoft PowerShell ISE zu sichten, zu ändern und direkt zurück zu speichern.

Es wurde eine ISE AddOn App entwickelt, die sich nahtlos in die ISE integriert und über die Rechte im ScriptRunner gesteuert wird. Der ScriptRunner Backend Service stellt der ISE App eine Reihe von Funktionen zur Verfügung:

  • ScriptRunner ISE App direkt in der ISE über das Kommando „start-ISEScriptRunner“ starten. Alle Funktionen stehen berechtigten Administratoren zur Verfügung. Der verwendete Account wird im Plug-In angezeigt.
  • Permanentes Einschalten der ISE App. Mit dem Kommando „enable-ISEScriptRunner“ kann die App eingeschaltet werden. Dadurch wird sie automatisch bei nächsten Start der PowerShell ISE mitgestartet.
  • Ausschalten der ISE App. Die ISE App kann über die integrierte Menuerweiterung (ScriptRunner Button) temporär ausgeschaltet werden. Mit dem Kommando „disable-ISEScriptRunner“ wird der automatische Start der die App ausgeschaltet.
  • Zentrale Freigabe von Skripten zur Änderung in der Admin App. Administratoren müssen Skripte für Änderungen mit der ISE explizit freigeben. Die freigegebenen Skripte werden mit dem System-Tag „_DEV_“ gekennzeichnet. Freigegebene Skripte können von Entwicklern ausgecheckt, geändert und eingecheckt werden. Die Freigabe für Änderungen am Skript kann mit der gegenteiligen Funktion auch wieder entzogen werden. Diese Funktionen ermöglicht die Kontrolle darüber, ob und welche Skripte in der zentralen Bibliothek geändert werden dürfen.
  • Automatische Prüfung nach ausgecheckten Skripten beim Starten der ISE App. Ausgecheckte Skripte werden farbig markiert. Eine grüne Markierung bedeutet, das ausgecheckte Skript ist lokal verfügbar und durch den angemeldeten Benutzer ausgecheckt. Eine rote Markierung signalisiert, dass das Skript durch einen anderen Benutzer oder auf einen anderen Maschine ausgecheckt wurde. Durch diese Funktionen gehen Änderungen an aus- und noch nicht wieder eingecheckten Skripten beim Schließen der ISE nicht verloren und ermöglichen die bessere Kontrolle der ausgecheckten lokalen Skriptdatei.
  • Anzeige aller Skripte aus der zentralen Skriptbibliothek als Liste in der ISE App. Die für Änderungen freigegeben Skripte sind mit einem Symbol gekennzeichnet. Ein separater Anzeigefilter-Schalter reduziert die angezeigte Liste auf die freigegebenen Skripte.
  • Skripte suchen und finden. Über ein Suchfeld in der ISE App können Skripte einfach gesucht und gefiltert werden. Die Volltextsuche erstreckt sich dabei auf den Dateinamen des Skriptes sowie die in der zentralen Bibliothek mit dem Skript verbundenen Tags.
  • Skripte anzeigen. Mit dieser Funktion wird der Inhalt (Quellcode) eines Skriptes aus der zentralen Bibliothek geladen und in einem Tab der ISE angezeigt. Entwickler und Administratoren können nun die Funktionen des Skriptes kontrollieren oder Teile kopieren, um sie in einem anderen Skript zu verwenden.
  • Skripte auschecken. Der Quellcode des Skriptes wird aus der zentralen Bibliothek geladen und in einem Tab der ISE angezeigt. Dazu muss das Skript zentral zur Bearbeitung freigegeben worden sein. Nach dem Laden können nun Änderungen am Quellcode vorgenommen werden. Wurde ein Skript ausgecheckt, wird die weitere Nutzung für andere Entwickler und Administratoren in der zentralen Bibliothek gesperrt. Konfigurierte Aktionen, welche für das Skript konfiguriert wurden, verwenden weiterhin die letzte gültige Version in der zentralen Bibliothek. Diese Funktionen unterstützen die gesteuerte Änderung an Skripten durch genau einen Benutzer und verhindert Änderungskollisionen.
  • Ausgecheckte Skripte ohne Änderungen wieder freigeben. Diese Funktion steht sowohl in der ISE App zur Verfügung als auch über die Admin App. Mittels der ISE App gibt der Entwickler bzw. Administrator seine selbst ausgecheckten Skripte wieder frei. Das Skript kann anschließend nochmals oder von einem anderen Benutzer ausgecheckt werden. Die zentrale Freigabe mittels Admin App kann für jedes der ausgecheckten Skripte erfolgen, unabhängig welcher Benutzer diese ausgescheckt hat. Änderungen am Quellcode werden in beiden Vorgehensweisen verworfen, die letzte gültige Version in der zentralen Bibliothek bleibt erhalten.
  • Skripte nach Änderung wieder einchecken. Der veränderte Quellcode des Skriptes wird in der zentralen Bibliothek gespeichert und die Sperrung in der zentralen Bibliothek aufgehoben. Konfigurierte Aktionen, welche für das Skript konfiguriert wurden, verwenden nun die letzte neue eingecheckte Version. Diese wird zur letzten gültigen Version in der zentralen Bibliothek. Diese Funktionen unterstützen die gesteuerte Änderung an Skripten durch Entwickler und Administratoren.
  • Synchronisierte Navigation zwischen Quellcode-Tabs der ISE und der Anzeige in der Liste der ISE App. Wird zwischen den Tabs navigiert, so folgt die Auswahlposition in der Liste. Wird in der Liste eine Position ausgewählt, dessen Skript in einem Tab geöffnet ist, so wird auf das aktuelle Tab gewechselt. Dies vereinfacht die Navigation in einer großen Liste.
  • Erweiterte Listendarstellung der Skripte in der Admin App. Eine zusätzliche Symbolspalte zeigt an, ob ein Skript für die Bearbeitung mit der ISE freigegeben wurde (schwarzes Symbol). Von Entwicklern oder Administratoren ausgecheckte Skripte sind farbig markiert. Eine grüne Markierung bedeutet, das ausgecheckte Skript ist durch den in der Admin App angemeldeten Benutzer ausgecheckt worden. Eine rote Markierung signalisiert, dass das Skript durch einen anderen Benutzer ausgecheckt wurde. Diese Erweiterung dient der schnellen Identifizierung von Skripten, welche für die Bearbeitung freigegeben bzw. ausgecheckt wurden.
  • Funktion zur Freigabe und zum Entzug einer Bearbeitung von Skripten mittels ISE in der Admin App. Hierfür gibt es in der Action Bar im Kontext der Skripte neue Buttons. Diese Funktionen sichern eine kontrollierte Änderung von Skripten.

Verwalten von PowerShell Skripten und Richtlinien in einer zentralen Bibliothek

Das zentrale Verwalten von Skripten, Targets, Credentials etc. sowie das konfigurieren von Ausführungsrichtlinien sind wesentliche Bestandteile von ScriptRunner. Die damit zusammen hängenden Funktionen und Darstellungen wurden weiter deutlich verbessert:

  • Durchgängige Spaltensortiermöglichkeiten in allen Listen aufsteigend/absteigend und in Kombination von Spaltensortierungen sowie auf gefilterte Elemente. Hierdurch wird eine schnelle Umsortierung der Listeneinträge nach unterschiedlichen Kriterien ermöglicht. Diese Funktionen verbessern insbesondere die schnelle Kontrolle und die Übersichtlichkeit.
  • Verbessertes Refresh-Verhalten in den Listendarstellung nach dem Auftreten von Konfigurationsfehlern, weitere Tooltipps in den Listen sowie optimierte Autosortierung in den Listen.
  • Verbesserte Filterdarstellung in Listen. Es werden nun sowohl die Anzahl der Gesamteinträge der Liste als auch die Anzahl der gefilterten Elemente angezeigt.
  • Bulk-Operationen für mehrere ausgewählte Elemente einer Liste. Für die Elemente können in einem Arbeitsgang Tags geändert oder die Elemente gelöscht werden. Mehrere Skriptelemente können für die Bearbeitung in der ISE freigegeben werden. Skriptelemente für vorhandene Skripte können nicht gelöscht werden. Delegation von mehreren Aktionen gleichzeitig im Konfigurationsassistenten für Rollen.
    Alle Bulk-Operationen dienen einer einfachen und effizienten Konfiguration und Verwaltung betreffender Elemente.
  • Durchgängige Spaltensortiermöglichkeiten in allen Listen der Konfigurationsassistenten aufsteigend/absteigend und in Kombination von Spaltensortierungen sowie auf gefilterte Elemente. Hierdurch wird eine schnelle Umsortierung der Listeneinträge nach unterschiedlichen Kriterien ermöglicht. Diese Funktionen verbessern insbesondere die schnelle Elementauswahl bei der Konfiguration.
  • Verbesserte Filterdarstellung in allen Listen der Konfigurationsassistenten. Es werden nun sowohl die Anzahl der Gesamteinträge der Liste als auch die Anzahl der gefilterten Elemente angezeigt.
  • Anzeige von nicht mehr vorhandenen Parametern für zuvor hinterlegte Parameterwerte im Konfigurationsassistenten für Aktionen. Werden die Parameter in Skripten verändert bzw. entfernt, jedoch sind aus der bisherigen Konfiguration einer Aktion noch vorbelegte Werte vorhanden, so werden die Abweichungen erkannt und angezeigt. Das verhindert Fehler beim späteren Ausführen der Aktion. Erkannte Fehler werden in der Realtime-Status-Anzeige signalisiert und eine Kurzmitteilung angezeigt.
  • Verbesserte Zuweisung von Tags bei der Konfiguration und beim Filtern.

Kontrolliertes und sicheres Ausführen von PowerShell Skripten mit Richtlinien

Das kontrollierte Ausführen von Skripten auf der Grundlage konfigurierter Richtlinien ist eine Kernaufgabe von ScriptRunner. Die Verbesserungen ermöglichen nun die völlig gleichwertige Ausführung von PowerShell Skripten auf dem Zielsystem mittels PowerShell Remote Execution oder PowerShell Local Execution. Administratoren können so die Vorteile der jeweiligen Methode vollumfänglich nutzen. Die zugehörige Funktionen wurden im Detail verbessert und aufgewertet:

  • Die lokale Ausführung erfolgt nun analog dem Powershell Remoting mit dem hinterlegten administrativen Konto (Credential) und damit in dessen Berechtigungskontext. Somit können nun alle Möglichkeiten einer lokalen Ausführung inkl. von PowerShell Modulen mit definierten administrativen Rechten und Einschränkungen genutzt werden. Für die lokale Ausführung müssen die notwendigen PowerShell Module (bspw. Für Exchange Server) auf dem ScriptRunner Backend Service System installiert sein. Der Vorteil dieser Lösung liegt u.a. in der zentralen Verfügbarkeit und Maintenance der PowerShell Module an einem Installationsort statt auf jedem Zielsystem bei PowerShell Remoting. Außerdem müssen im Zusammenhang mit einer Delegation der Skriptausführung im Gegensatz zur Standardvorgehensweise ohne ScriptRunner keine PowerShell Module mehr bei Skriptanwendern lokal installiert werden.
  • Verbessertes PowerShell Remoting mit Umstellung auf SkriptBlock-Methodik. Durch die Umstellung können nun Parameter-Sets und Parameter auch mit leeren Werten verwendet werden.
  • Verbesserte Eingabe für verschiedene Parametertypen über die Admin App und die Delegate App. Mandatory Parameter verlangen nun eine zwingende Eingabe, falls keine Vorbelegung in der Aktion erfolgt ist. Validate-Sets und Bool werden als Dropdown dargestellt. Switch-Parameter werden als Checkboxen in einer kompakten Form dargestellt.
  • CHOICE Type und Funktion. Inhalte für Dropdown-Listen können mittels Skript erzeugt und aktualisiert werden. In der Admin App wird dazu der Name der Listen-Datei angegeben, ScriptRunner speichert die Listen-Dateien als TXT selbständig in seinen Arbeitsverzeichnissen ab. Im Skript, welches die Dropdown-Liste verwenden soll, ist ein Verweis in der Form #ASR Parameter:parametername Type:Choice(Listendatei ohne TXT-Endung) anzugeben.
    Dieser Typ und diese Funktion eignet sich sehr gut für die Darstellung und Verwendung von dynamischen Dropdowns.

Überwachen der Ausführung von PowerShell Skripten

Die Ausführung von Skripten auf Zielsystemen wird mit ScriptRunner nachvollziehbar und transparent. Das Speichern der Ausführungsergebnisse sowie die Darstellung und Auswertung sind wichtige Funktionen in ScriptRunner, welche weiter verbessert und ausgebaut wurden:

  • Ausbau der Filtermöglichkeiten für Reports durch weitere Kacheln im Dashboard. Neben dem kombinierten Filtern von Aktion, Zielsystem, Skript und administrativem Konto können die Report nun auch nach Datum und Ausführungsberechtigten gefiltert werden.
  • Reports filtern nach Datum in der Kachel mit der Farbe blaugrau. Der Zeitraum für die Reports im Dashboard und in der verfügbaren Detailanzeige kann nun genau bestimmt werden. Die Auswertung für weiter zurück liegende Zeiträume wird damit vereinfacht.
  • Reports filtern nach Ausführungsberechtigten in der Kachel mit der Farbe orange. Die Auswahl für die Reports im Dashboard und in der verfügbaren Detailanzeige wird nach dem Benutzer gefiltert, welcher eine konfigurierte Aktion gestartet hat. Ergebnisse von Aktionen, welche durch Operatoren oder Administratoren gestartet wurden, können nun einfacher nachvollzogen werden.
  • Nur Reports mit Fehlern anzeigen. Im Dashboard kann durch einen Schalter zum Filtern nach Reports mit Fehlern in Kombination mit den Filtern erfolgen. Das verbessert die Auswertung und die Suche nach bestimmten Reports.
  • Optimierungen in der Dashboard-Darstellung. Die Standardeinstellung ist nun „Einzel“.
  • Darstellung im Dashboard in der Auswahl „Einzel“: Es werden die letzten 100 Reports jeweils als farbige Säule angezeigt, die letzten 1.000 Reports werden in den Speicher geladen. Beim Anklicken einer Säule wird der Report in die Detailanzeige geladen. Über die vorwärts/rückwärts-Funktion kann der Zugriff auf alle weiteren Reports erfolgen.
  • Darstellung im Dashboard in der Auswahl „Hourly“ und „Daily“: Es werden alle Reports einer Stunde oder eines Tages jeweils als als Summary-Säule dargestellt. Beim Klicken auf eine Säule/Report wird der neuste bzw. letzte Report des Zeitfensters angezeigt und der Zugriff auf die anderen Reports über die vorwärts/rückwärts-Funktion auf das betreffende Zeitfensters eingeschränkt. Dadurch wird eine verbesserte Orientierung bei der Durchsicht und Vorhandensein einer Vielzahl von Reports ermöglicht.
  • Reload-Button zum schnellen Aktualisieren der Dashboard-Anzeige im laufenden Betrieb.
  • Verbesserte Nachvollziehbarkeit in den Reports. Der Benutzer, welcher die Ausführung der Aktion gestartet hat sowie die Referenz auf das verwendete administrative Konto werden als filterbare Metadaten gespeichert. Im Kopf des jeweiligen Reports werden die auf dem Zielsystem verwendeten Berechtigungen vermerkt.
  • Reports einer Aktion, welche parallel auf mehreren Zielsystemen ausgeführt wird, haben alle den gleichen Startzeitpunkt. Für jedes Zielsystem wird ein separater Report erzeugt.
  • Performanceoptimierung für die Realtime-Ausführungs- und Reportanzeige in der Liste der konfigurierten Aktionen durch reduzierten Umfang von in den Hauptspeicher geladenen Reports.
  • Verbesserungen beim Datenhandling für Reports und der Arbeits-Datenbank. Implementierung einer Auto-Shrink-Funktion für die Datenbank und Reduzierung der Datenbank beim Überschreiten von Maximalgrößen wie 20.000 Einträgen in 100 Tagen oder der maximalen Datenbankgröße von 512 MB. Die Einstellungen erfolgen über dokumentierte Registry-Parameter.
  • Sicherungsfunktionen für die Arbeits-Datenbank bei übergroßer Datenbank-Datei durch sichern der bisherigen Datenbank, Anlage einer neuen Datenbank-Datei und wenn möglich Kopieren der letzten Reportdaten in die neue Datenbank, ansonsten verwenden der neuen leeren Datenbank.
  • Support für das parallele Speichern der Metadaten für die Ausführungsdaten und der Ergebnisreports in einer externen Microsoft SQL Datenbank. Toleranz und Wiederaufsetzen der Verbindung bei Abbrüchen und Ausfällen der Datenbank oder des Netzwerkes. Funktionen zur Sicherstellung der Vollständigkeit der Reports in der externen Datenbank. Diese Funktionen unterstützen die separate Auswertung, die Nachvollziehbarkeit über längere Zeiträume sowie interne und externe IT Audits.
  • Erweiterung des ScriptRunner Status Monitors um Überwachungskenngrößen für die ScriptRunner Datenbanken.
  • Erweiterte Fehlermeldungen und verbessertes Windows Event Logging für die Datenbankfunktionen.
  • Optimierung der Arbeitsspeicherbelegung des SrciptRunner Backend Service.

 

Einfache und abgesicherte Delegation der PowerShell Skriptausführung an HelpDesk

  • Performanceoptimierung durch Limitierung der Berichtsanzeige in der Delegate App auf die eigenen Berichte auch für Administratoren sowie maximal 500 Berichte in jeder Berichtsansicht sowie Server-Side Filtering.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *