Vertrauenswuerdige Repository in PowerShell hinzufuegen

Vertrauenswürdige Repository in PowerShell hinzufügen

Kein blindes Vertrauen

Ein Repository ist ein Aufbewahrungsort, eine zentrale Ablage für Daten, Programme, Dokumente usw. Man kann darunter auch ein Archiv mit Versionsverwaltung verstehen.

Vertrauenswürdige Repository in PowerShell hinzufügen

In diesem Artikel möchte ich auf die Installation eines Moduls eingehen, welches zur Verwaltung von Exchange Online eingsetzt wird.

Im Grunde verschmelze ich hier bereits 2 vorhandene Artikel miteinander.

Das besondere hierbei ist, das ich davor warnen möchte, nicht jedes Repository als vertrauenswürdig einzustufen. Ich finde es vom Grundsatz her besser, immer daran erninnert zu werden, woher man seine Powershell-Module bezieht. Auch sollte nicht jedes Modul welches man in die Finger bekommt, installiert werden.

Warnhinweise sind Pointer, die auf eine schlechte Erfahrung hindeuten. 😉

Angenommen wir möchten das EXO V2-Modul namens “ExchangeOnlineManagement” installieren und wissen nicht, aus welcher Repository wir das Modul beziehen können, dann gehen wir wie folgt vor. Dieser Befehl gibt das Repository “PSGallery” aus.

Find-Module ExchangeOnlineManagement

Vertrauenswürdige Repository in PowerShell hinzufügen

So lange ein Repository nicht als vertrauenswürdig eingestuft ist, wird bei der Installation immer ein Warnhinweis angezeigt.

nicht vertrauenwürdiges Repository

Um ein bekanntes Repository als vertrauenswürdig zu erklären, setzen wir in der Richtlinie das Flag “Trusted”.

Set-PSRepository -Name “PSGallery” -InstallationPolicy Trusted
Set-PSRepository -Name “PSGallery” -InstallationPolicy UnTrusted

Set Repository Trusted

Wenn wir jetzt versuchen das EXO V2-Modul names “ExchangeOnlineManagement” zu installieren, erscheint die Warnung nicht mehr.

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.5

Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.5

Troubleshooting

Wenn jemand diese Fehlermeldung angezeigt bekommt, der sollte zuerst das Default Repository “PSGallery” installieren.

PackageManagement\Find-Package : Für die angegebenen Suchkriterien und den Paketnamen “ExchangeOnlineManagement” wurde keine Übereinstimmung gefunden. Verwenden Sie Get-PSRepository, um alle verfügbaren, registrierten Paketquellen anzuzeigen.

Für die angegebenen Suchkriterien und den Paketnamen ExchangeOnlineManagement wurde keine Übereinstimmung gefunden

Dieser Befehl installiert das Default Repository welches unter normalen Umständen vorhanden sein sollte.

Register-PSRepository -Default

Register-PSRepository -Default

Sollte der Nuget Provider noch nicht installiert sein, so drängt er sich dir quasi auf.

Sollte der Download eines Pakets nicht klappen und es erscheint folgende Meldung, dann liegt es wohl daran, das TLS 1.2 nicht konfiguriert ist.

Install-Package : An error occurred while loading packages from ‘https://nuget.org/api/v2/’: The underlying connection was closed

Mit diesem Befehl setzen wir den .NET Protokoll Typ auf TLS 1.2 fest.

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