Ich musste bei einem Kunden NPS f. MFA über Azure aktivieren. Dazu muss ein Script der «NPS Extension for Azure MFA» ausgeführt werden:
.\AzureMfaNpsExtnConfigSetup.ps1
Dieses Script brach aber in meinem Fall ab:
AUSFÜHRLICH: Der NuGet-Anbieter wird installiert. AUSFÜHRLICH: Der Anbieter "Bootstrap" wird für die Paketsuche verwendet. AUSFÜHRLICH: Finding the package 'Bootstrap::FindPackage' 'NuGet','','2.8.5.201','''. WARNUNG: Es kann kein Download von URI "https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409" nach "" durchgeführt werden. AUSFÜHRLICH: Cannot download link 'https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409', retrying for '2' more times. AUSFÜHRLICH: Cannot download link 'https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409', retrying for '1' more times. AUSFÜHRLICH: Cannot download link 'https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409', retrying for '0' more times. WARNUNG: Die Liste der verfügbaren Anbieter kann nicht heruntergeladen werden. Überprüfen Sie Ihre Internetverbindung. PackageManagement\Install-PackageProvider : Für die angegebenen Suchkriterien für Anbieter "NuGet" wurde keine Übereinstimmung gefunden. Der Paketanbieter erfordert das PackageManagement- und Provider-Tag. Überprüfen Sie, ob das angegebene Paket über die Tags verfügt. In C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:7405 Zeichen:21 … $null = PackageManagement\Install-PackageProvider -Name $script:N …~~~~~~~~~~~~~ CategoryInfo : InvalidArgument: (Microsoft.Power…PackageProvider:InstallPackageProvider) [Install-Pac kageProvider], Exception FullyQualifiedErrorId : NoMatchFoundForProvider,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackagePro vider
Eine kurze Recherche brachte folgendes Problem zutage:
Powershell verwendet verschiedene Protokolle. Welche verwendet werden dürfen, kann konfiguriert werden. Mit dem folgenden Befehl kann die aktuelle Einstellung abgefragt werden:
[Net.ServicePointManager]::SecurityProtocol
Bei mir war der Output folgender:
Ssl3, Tls
Für die Installation, bzw. die Verbindung zum Repository wird aber TLS 1.2 benötigt. Dies kann wie folgt :
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::TLS12
Der Befehl kann auch wie folgt lauten:
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::TLS12
Das Ergebnis ist dasselbe.
Diese Einstellung gilt aber nur für die aktuelle Session. Sobald PowerShell neu gestartet wird, gilt wieder die alte Einstellung.
Dies könnte über folgende Registry Keys angepasst werden:
.NET 4.x Set-ItemProperty -Path ‘HKLM:\SOFTWARE\Microsoft.NetFramework\v4.0.30319’ -Name ‘SchUseStrongCrypto’ -Value ‘1’ -Type DWord Set-ItemProperty -Path ‘HKLM:\SOFTWARE\Wow6432Node\Microsoft.NetFramework\v4.0.30319’ -Name ‘SchUseStrongCrypto’ -Value ‘1’ -Type DWord .NET 3.5 Set-ItemProperty -Path ‘HKLM:\SOFTWARE\Microsoft.NetFramework\v2.0.50727’ -Name ‘SchUseStrongCrypto’ -Value ‘1’ -Type DWord Set-ItemProperty -Path ‘HKLM:\SOFTWARE\Wow6432Node\Microsoft.NetFramework\v2.0.50727’ -Name ‘SchUseStrongCrypto’ -Value ‘1’ -Type DWord
Ich habe dies aber nicht ausgeführt.