Microsoft Edge – vorkonfigurieren der Startseite und Suchanbieter mittels lokaler Gruppenrichtlinie

Fake-MDM (Mobile-Device-Management) Konfiguration

Microsoft unterstützt grundsätzlich die Konfiguration des in Windows 10 enthaltenen Browsers “Microsoft Edge” mittels Gruppenrichtlinien (lokal oder per Active Directory). Einige Einstellungen – wie z.B. die SearchProvider oder die Startseite – lassen sich jedoch ausschließlich dann mittels Gruppenrichtlinien vorkonfigurieren, wenn das Gerät entweder Domain-joined ist, oder mittels MDM (Mobile Device Management, z.B. Intune / Azure AD) “verwaltet” wird.

Nachfolgend zeige ich, wie – entgegen Microsofts Willen – auch eine Konfiguration von Startseite und Suchanbieter mittels lokaler Policies möglich ist, ohne dass die Maschine hierfür Domain-joined oder MDM-gemanaged werden muss. => Too long? => Dann gleich zur Lösung ans Ende des Artikels springen 🙂

Die Gruppenrichtlinien finden sich unter “gpedit.msc” -> Computerkonfiguration -> Administrative Vorlagen -> Windows Komponenten -> Microsoft Edge:

Gruppenrichtlinien Konfiguration von Microsoft Edge
Gruppenrichtlinien Konfiguration von Microsoft Edge

Die Einstellung der Startseite findet sich unter “Startseite konfigurieren“.

Gruppenrichtlinien: Microsoft Edge Startseite
Gruppenrichtlinien: Microsoft Edge Startseite

Hinweis im Abschnitt “Hilfe”: Diese Konfiguration wirkt nur dann, wenn das Gerät in eine Domäne eingebunden ist:

Mit dieser Richtlinieneinstellung können Sie eine oder mehrere Startseiten für Geräte konfigurieren, die in die Domäne eingebunden sind. Ihre Mitarbeiter können die Einstellung nicht ändern, nachdem Sie sie festgelegt haben.

In der Gruppenrichtlinie zur Änderung der Standardsuchanbieter (z.B. Google statt Bing) findet sich weiters der Hinweis:

Diese Einstellung kann nur bei Geräten verwendet werden, die in die Domäne eingebunden oder bei MDM registriert sind. Weitere Informationen finden Sie unter der Richtlinie für Microsoft-Browsererweiterungen (aka.ms/browserpolicy).

Und tatsächlich wirken die so gekennzeichneten Einstellungen auch nicht, ohne dass das Gerät per MDM verwaltet wird, oder in einer Domäne eingebunden ist.

Versuch: Konfiguration mittels MDM-WMI-Bridge-Provider

Um es vorwegzunehmen: Ja, man kann die gleichen Settings, die man mittels Gruppenrichtlinien konfigurieren kann, auch mittels PowerShell unter Verwendung des MDM WMI Bridge Providers konfigurieren. Allerdings klappt auch das nur mit jenen Einstellungen, die für die lokale Administration ohne MDM bzw. Domain-Join vorgesehen sind. Bei allen anderen Settings (z.B. der Homepage) erhält man beim Versuch diese zu konfigurieren lediglich eine nichtssagende generische Fehlermeldung.

Dokumentation hierzu, siehe:

Die Nutzung ist nur als LocalSystem möglich, die Powershell muss daher als Administrator mittels psexec wie folgt gestartet werden:

psexec.exe -sid powershell.exe

Demo-PowerShell-Script

$namespaceName = "root\cimv2\mdm\dmmap"
$ClassName = "MDM_Policy_Config01_Browser02"

# Falls es noch keine Konfiguration gibt:
$browser = new-CimInstance -Namespace $namespaceName -ClassName $ClassName -Property @{ParentID="./Vendor/MSFT/Policy/Config";InstanceID="Browser"}

# Falls es bereits eine Konfiguration gibt, diese öffnen:
$browser = get-CimInstance -Namespace $namespaceName -ClassName $ClassName


# Verändern eines Settings, z.B.:
$browser.AllowDoNotTrack = $true

# Speichern
Set-CimInstance -CimInstance $browser

# Klappt wie oben demonstriert, jedoch NICHT mit dem Setting HomePages:
# In diesem Fall wird nur ein sehr unspezifischer Fehler geworfen:
$browser.HomePages = "<https://www.google.at>"
Set-CimInstance -CimInstance $browser
Edge Konfiguration: Powershell MDM-WMI-Bridge-Provider
Edge Konfiguration: Powershell MDM-WMI-Bridge-Provider

Diese Konfigurationsvariante mittels PowerShell und MDM-WMI-Bridge-Provider bringt uns daher für diese Aufgabenstellung auch nicht weiter.

Konfigurations-Versuch per HKCU-Registry

Die Startseite kann also ohne MDM bzw. Domain-Join nicht per Gruppenrichtlinie vorgegeben werden. Für meinen Anwendungszweck wäre es eventuell auch ausreichend, die Konfiguration für den Benutzer mittels HKCU-Registry-Eintrag vorzunehmen. Das Problem hierbei: Microsoft schiebt diesem Vorhaben ebenfalls einen Riegel vor:

Die Edge-Startseite wird in folgendem Registry-Zweig abgelegt:

HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\Protected - It is a violation of Windows Policy to modify. See aka.ms/browserpolicy
Edge HKCU-Registry-Key ProtectedHomepages
Edge HKCU-Registry-Key ProtectedHomepages

Wer nun glaubt es handelt sich hier um einen Copy+Paste Fehler: NEIN – der Registry-Zweig heißt wirklich “Protected – It is a violation of Windows Policy to modify. See aka.ms/browserpolicy“. Und unterhalb dieses Zweiges befindet sich der Key “ProtectedHomepages” sowie “ProtectedSearchScopes”. Diese Registry-Keys sind vom Typ REG_BINARY und offenkundig verschlüsselt, können daher – ohne aufwändiges Reverse Engineering – nicht selbst gesetzt werden. Auch in den Tiefen des Web wird man hier derzeit nicht fündig, es gibt zwar Ansätze / Versuche einer  Disassemblierung, jedoch keinen einfachen Weg diese Registry-Keys aktuell selbst sinnvoll vorzukonfigurieren.

MDM – Mobile Device Management

Es gibt zahlreiche Anbieter für Mobile Device Management Lösungen. Vom Funktionsumfang her sicherlich nicht herausragend, aber dafür in einer kostenfreien Variante verfügbar ist Miradore Online. Für einen kurzen Versuch, ob mittels MDM-Enrollment die Policies tatsächlich wirksam werden ist der Funktionsumfang jedoch völlig irrelevant. Tatsächlich ist in der kostenlosen Variante von Miradore kaum eine Konfiguration möglich (es wird lediglich ein sehr einfach gehaltenes System-Inventory angeboten). Es reicht für den von mir benötigten Bedarf jedoch völlig aus, dass das Gerät sich “verwaltet fühlt” (also das Mobile Device Enrollment Protokoll durchgeführt wurde). Ich habe kurzerhand daher den Versuch gemacht, und eine Test-VM für die Verwaltung mittels MDM konfiguriert.

Ergebnis: Ja, nun lässt sich auch die Edge Startseite mittels der oben erläuterten lokalen Gruppenrichtlinie wirksam konfigurieren.

“Fake MDM” – Konfiguration

Woran erkennt Edge, ob das Gerät mittels MDM verwaltet wird?

Mittels ProcMon habe ich ermittelt, welche Änderungen bei einem MDM Enrollment durchgeführt werden, und welche Einträge davon anschließend offenkundig zur Erkennung genutzt werden. Eine vollständige MDM-Enrollment-Konfiguration ist umfangreich (beinhaltet gepinnte Zertifikate, URLs, etc…). Tatsächlich ist für die positive Erkennung des MDM-Enrollment-Status um die Policies wirken zu lassen jedoch nur sehr wenig nötig, nämlich konkret:

MDM-Enrollment-Fake-Konfiguration.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Enrollments\FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF]
"EnrollmentState"=dword:00000001
"EnrollmentType"=dword:00000000
"IsFederated"=dword:00000000
Fake-MDM (Mobile-Device-Management) Konfiguration
Fake-MDM (Mobile-Device-Management) Konfiguration

Positives Fazit – Lösung / Zusammenfassung

Ein Import dieser drei Werte reicht aus -> danach erkennt Edge das Vorliegen eines per MDM verwalteten Gerätes und akzeptiert auch die nur im Domain-joined Betrieb anwendbaren Gruppenrichtlinien. Die oben verwendete GUID FFFFF…. wurde von mir willkürlich gewählt, und soll eine Verwechslung mit den zahlreichen anderen (vorhandenen) ConfigurationProvidern ausschließen.

Insgesamt sind also folgende Konfigurationen nötig – vollständig umgesetzt, als reg-File wie folgt:

Windows Registry Editor Version 5.00

; # Fake MDM-Enrollment, damit die Maschine sich "managed" fühlt
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Enrollments\FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF] 
"EnrollmentState"=dword:00000001 
"EnrollmentType"=dword:00000000 
"IsFederated"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\MicrosoftEdge\Internet Settings]
; # Startseite als Policy konfigurieren
"ProvisionedHomePages"="<https://hitco.at>"
; # Oder: Mehrere Startseiten als Tabs als Policy konfigurieren
; "ProvisionedHomePages"="<https://hitco.at/blog><https://orf.at>"
; # (Optional) dem Anwender erlauben, sich die vorkonfigurierte Startseite selbst abzuändern
; "DisableLockdownOfStartPages"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\MicrosoftEdge\OpenSearch]
; # Suchanbieter vorkonfigurieren
"SetDefaultSearchEngine"="<https://www.google.at/searchdomaincheck?format=opensearch>"
; # Weitere Suchanbieter zur Auswahl anbieten:
"ConfigureAdditionalSearchEngines"="<https://www.google.at/searchdomaincheck?format=opensearch><https://duckduckgo.com/opensearch.xml>"

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\MicrosoftEdge\Protected - It is a violation of Windows Policy to modify. See aka.ms/browserpolicy]
; # Dem Anwender (optional) erlauben, sich auch selbst Suchanbieter hinzuzufügen
; "AllowSearchEngineCustomization"=dword:00000001

 

Ergänzung: Home-Button mit definierter Site belegen

Ergänzend zur Startseite gibt es noch den “Home-Button”. Diesen zu belegen bedarf einer User-spezifischen HKCU Registry-Konfiguration, hier daher (da im Kommentar danach gefragt wurde) ein paar von mir verwendete Konfigurations-Ergänzungen:

Windows Registry Editor Version 5.00

; Den HomeButton links neben der URL-Eingabezeile belegen. Hat nichts mit der StartPage zu tun
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\Main]
"HomeButtonPage"="https://hitco.at"

; Neues Tab soll leer sein, nicht Vorschläge anzeigen
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\ServiceUI]
"NewTabPageDisplayOption"=dword:00000002

; Seitenvorhersage deaktivieren
[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\FlipAhead]
"FPEnabled"=dword:00000000

You May Also Like

7 Comments

  1. Tolle Anleitung, es funktioniert.
    Wenn ich dann jedoch noch die URL hinter dem Homebuttom verändern möchte ?

    “HomeButtonEnabled”=dword:00000001
    “HomeButtonPage”=””

    funktioniert leider nicht…..

    Gruss
    Tom

  2. Hallo Gunnar

    Klappt TipTop.
    Interessant ist der Nebeneffekt, beim ersten Start vom EDGE nach dem einfügen (verteilen) des Regkey sieht man noch die MS Seite.
    Dann den EDGE schliessen und wieder öffnen und ok ist es.

    Wenn ich nun noch ein 2. Tag mit einer anderen Seite Standard geöffnet haben möchte …… ?
    Beim IE geht mit dem “SecondHomePage”.

    Danke und Gruss
    Tom

    1. Betreffend “Edge schließen” -> das bedeutet nicht zwingend, dass kein Edge mehr läuft. Die Settings werden bei einem Neustart der Edge UniversalApp eingelesen, wenn man Edge lediglich “kurz schließt” dann beendet sich dabei jedoch nicht zwingend die UniversalApp sondern diese läuft erfahrungsgemäß (wohl aus Performancegründen) noch weiter und wird bei einem Start des Edge lediglich erneut in den Vordergrund geholt.

      Betreffend mehrere Startseiten (Tabs): Habe das als Beispiel jetzt oben im Reg-File als Kommentar ergänzt, als ProvisionedHomePages mehrere angeben:

      < https://hitco.at>< https://orf.at>

  3. Die Anleitung hat mir sehr effektiv weitergeholfen. Meine daraufhin an support@startpage.com gerichtete Anfrage nach deren Syntax für Microsoft Edge wurde Heute wie folgt beantwortet:

    Please use “https://www.startpage.com/en/opensearch.xml” instead of “https://www.google.com/searchdomaincheck?format=opensearch” to set default search engine as Startpage.com.

    Gruß
    tom2

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.