Erste Schritte mit dem PowerShell-Katalog

Der PowerShell-Katalog ist ein Paketrepository mit Skripts, Modulen und DSC-Ressourcen, die Sie herunterladen und nutzen können. Sie verwenden die Cmdlets im PowerShellGet-Modul, um Pakete aus dem PowerShell-Katalog zu installieren. Um diese Elemente aus dem PowerShell-Katalog herunterzuladen, müssen Sie sich nicht anmelden.

Hinweis

Obgleich es möglich ist, ein Paket direkt aus dem PowerShell-Katalog herunterzuladen, wird diese Vorgehensweise nicht empfohlen. Weitere Informationen finden Sie unter Manual Package Download (Paket manuell herunterladen).

Sie können Pakete im PowerShell-Katalog über das Steuerelement Suchen auf der Homepage des PowerShell-Katalogs finden oder die Module und Skripts auf der Seite Pakete durchsuchen. Sie können auch nach Paketen im PowerShell-Katalog suchen, indem Sie je nach Pakettyp die Cmdlets Find-Module, Find-DscResource oder Find-Script mit -Repository PSGallery ausführen.

Mithilfe der folgenden Parameter können Sie Ergebnisse aus dem Katalog filtern:

  • Name
  • AllVersions
  • MinimumVersion
  • RequiredVersion
  • Tag
  • Includes
  • DscResource
  • RoleCapability
  • Get-Help
  • Filter

Wenn Sie nur spezifische DSC-Ressourcen im Katalog suchen, können Sie das Cmdlet Find-DscResource ausführen. „Find-DscResource“ gibt Daten zu DSC-Ressourcen zurück, die im Katalog enthalten sind. Weil DSC-Ressourcen immer als Teil eines Moduls bereitgestellt werden, müssen Sie Install-Module ausführen, um diese DSC-Ressourcen zu installieren.

Wenn Sie ein Paket ermittelt haben, an dem Sie interessiert sind, möchten Sie möglicherweise weitere Informationen dazu erhalten. Sehen Sie sich zu diesem Zweck die Katalogseite dieses bestimmten Pakets an. Dort finden Sie alle Metadaten, die mit dem Paket hochgeladen wurden. Diese Metadaten werden vom Autor des Pakets bereitgestellt und nicht von Microsoft überprüft. Der Besitzer des Pakets ist eng an das Katalog-Konto gebunden, das für die Veröffentlichung des Pakets verwendet wurde, und ist vertrauenswürdiger als das Feld „Autor“.

Wenn Sie ein Paket entdecken, das Ihrer Meinung nach nicht mit guten Absichten veröffentlicht wurde, klicken Sie auf der betreffenden Seite auf Missbrauch melden.

Wenn Sie Find-Module oder Find-Script ausführen, können Sie diese Daten im zurückgegebenen PSGetModuleInfo-Objekt anzeigen. Im folgenden Beispiel werden Daten für das PSReadLine-Modul im Katalog zurückgegeben.

Find-Module -Name PSReadLine -Repository PSGallery | Get-Member

Wir empfehlen den folgenden Prozess für das Herunterladen von Paketen aus dem PowerShell-Katalog:

Überprüfen

Um ein Paket zur Überprüfung aus dem Katalog herunterzuladen, führen Sie je nach Pakettyp entweder das Cmdlet Save-Module oder das Cmdlet Save-Script aus. Dadurch können Sie das Paket lokal speichern, ohne es zu installieren, und den Paketinhalt überprüfen. Denken Sie daran, das gespeicherte Paket später manuell zu löschen.

Einige dieser Pakete wurden von Microsoft erstellt, andere stammen aus der PowerShell-Community. Microsoft empfiehlt, den Inhalt und den Code der Pakete in diesem Katalog vor der Installation zu überprüfen.

Wenn Sie ein Paket entdecken, das Ihrer Meinung nach nicht mit guten Absichten veröffentlicht wurde, klicken Sie auf der betreffenden Seite auf Missbrauch melden.

Installieren

Um ein Paket aus dem Katalog für die Verwendung zu installieren, führen Sie je nach Pakettyp das Cmdlet Install-Module oder das Cmdlet Install-Script aus.

Install-Module installiert das Modul standardmäßig in $env:ProgramFiles\WindowsPowerShell\Modules. Dafür ist ein Administratorkonto erforderlich. Wenn Sie den Parameter -Scope CurrentUser hinzufügen, wird das Modul in $HOME\Documents\WindowsPowerShell\Modules installiert.

Install-Script installiert das Skript standardmäßig in $env:ProgramFiles\WindowsPowerShell\Scripts. Dafür ist ein Administratorkonto erforderlich. Wenn Sie den Parameter -Scope CurrentUser hinzufügen, wird das Skript in $HOME\Documents\WindowsPowerShell\Scripts installiert.

Install-Module und Install-Script installieren standardmäßig die neueste Version eines Pakets. Um eine ältere Version des Pakets zu installieren, fügen Sie den Parameter -RequiredVersion hinzu.

Bereitstellen

Klicken Sie auf der Detailseite des Pakets auf Azure Automation und dann auf In Azure Automation bereitstellen, um ein Paket aus dem PowerShell-Katalog in Azure Automation bereitzustellen. Sie werden an das Azure-Verwaltungsportal umgeleitet. Dort können Sie sich mit den Anmeldeinformationen für Ihr Azure-Konto anmelden. Beachten Sie, dass das Bereitstellen von Paketen mit Abhängigkeiten alle Abhängigkeiten in Azure Automation bereitstellt. Sie können die Schaltfläche „In Azure Automation bereitstellen“ deaktivieren, indem Sie den Paketmetadaten das Tag AzureAutomationNotSupported hinzufügen.

Weitere Informationen zu Azure Automation finden Sie in der Azure Automation-Dokumentation.

Führen Sie zum Aktualisieren der aus dem PowerShell-Katalog installierten Pakete das Cmdlet Update-Module oder das Cmdlet Update-Script aus. Update-Module versucht, alle mithilfe von Install-Module installierten Module zu aktualisieren, wenn die Ausführung ohne zusätzliche Parameter erfolgt. Um Module einzeln zu aktualisieren, fügen Sie den Parameter -Name hinzu.

Analog dazu versucht Update-Script, alle durch Ausführung von Install-Script installierten Skripts zu aktualisieren, wenn die Ausführung ohne zusätzliche Parameter erfolgt. Um Skripts einzeln zu aktualisieren, fügen Sie den Parameter -Name hinzu.

Führen Sie das Cmdlet Get-InstalledModule aus, um herauszufinden, welche Module Sie aus dem PowerShell-Katalog installiert haben. Dieser Befehl listet alle Module in Ihrem System auf, die direkt aus dem PowerShell-Katalog installiert wurden.

Um herauszufinden, welche Skripts Sie aus dem PowerShell-Katalog installiert haben, führen Sie das Cmdlet Get-InstalledScript aus. Dieser Befehl listet alle Skripts auf, die direkt aus dem PowerShell-Katalog auf Ihrem System installiert wurden.

Diese Hostnamen sollten zu Zulassungslisten hinzugefügt werden, die den Zugriff über Ihr Netzwerk steuern.

Hosts, die für die Paketermittlung und den Download erforderlich sind:

  • onegetcdn.azureedge.net: CDN-Hostname

Hosts, die bei der Verwendung der Website des PowerShell-Katalogs erforderlich sind:

  • devopsgallerystorage.blob.core.windows.net: Hostname des Speicherkontos
  • *.powershellgallery.com: Website
  • go.microsoft.com: Umleitungsdienst

Wichtig

Ab April 2020 unterstützt der PowerShell-Katalog die TLS-Versionen (Transport Layer Security) 1.0 und 1.1 nicht mehr. Wenn Sie nicht TLS 1.2 oder höher verwenden, erhalten Sie beim Versuch des Zugriffs auf den PowerShell-Katalog eine Fehlermeldung. Mit dem folgenden Befehl können Sie sicherstellen, dass Sie TLS 1.2 verwenden:

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

Weitere Informationen finden Sie im PowerShell-Blog in der Ankündigung.