Trusted Sites für alle User auf dem PC einpflegen
Aufgabestellung:
Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User auf dem PC gültig sind.
Problem: Eintrag wird auf HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains gemacht funktioniert es nicht.
Wird es nur für den Current User auf HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains ausgeführt, sind die Einträge da.
Bitte um Abhilfe
Powershell Script:
Set-Location "HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set-Location ZoneMap
New-Item Domains
Set-Location Domains
$myDir = Split-Path -Parent $MyInvocation.MyCommand.Path
[xml]$xml = Get-Content "$MyDir\Office365-TrustedSites.xml"
$ComputerRegPath = "HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains"
$DWord = 2
#----------------------------------------------------------
#START FUNCTIONS
#----------------------------------------------------------
Function CreateKeyReg
{
Param
(
[String]$KeyPath,
[String]$Name
)
New-Item -Path "$KeyPath" -ItemType File -Name "$Name" -ErrorAction SilentlyContinue | Out-Null
}
#Function to set the Registry Values
Function SetRegValue
{
Param
(
[String]$RegPath
)
Set-ItemProperty -Path $RegPath -Name "http" -Value $DWord -ErrorAction SilentlyContinue | Out-Null
Set-ItemProperty -Path $RegPath -Name "https" -Value $DWord -ErrorAction SilentlyContinue | Out-Null
}
#----------------------------------------------------------
#START
#----------------------------------------------------------
foreach( $entry in $xml.trusted)
{
[array]$Trusted = $entry.site
}
for($i = 0; $i -lt $Trusted.count; $i++)
{
[string]$PrimaryDomain = $Trusted[$i].Split('.')[1..10] -join '.'
[string]$SubDomain = $Trusted[$i].Split('.')
CreateKeyReg -KeyPath $ComputerRegPath -Name $PrimaryDomain
CreateKeyReg -KeyPath "$ComputerRegPath\$PrimaryDomain" -Name $SubDomain
SetRegValue -RegPath "$ComputerRegPath\$PrimaryDomain\$SubDomain" -DWord $DWord
}
Beispiel XML:
In dem Fall XML Namen genommen: Office365-TrustedSites.xml
<trusted>
<site>*.aadrm.com</site>
<site>*.activedirectory.windowsazure.com</site>
<site>*.adhybridhealth.azure.com</site>
</trusted>
Zusatzinfo:
Nach dem das Script mit Trusted Sites Liste (XML) ausgeführt wird, funktioniert alles im Editor. Einträge sind dann auch in der Registry. Wenn ich dann im IE überprüfe, ob es übernommen wurde, sehe ich nichts. Was kann ich dagegen tun ? Oder wie müsste das Script aussehen um diese Aufgabe zu überwältigen.
Ist vielleicht Registry Eintragsstelle falsch ? Oder muss noch ein Schlüssel angepasst werden ? Sowas wie HKLM_security_only auf 0 , hat nix gebracht leider?
Bin jetzt seit 2 Tagen dran und komme nicht weiter. Kann mir jemand bei der Lösung helfen ? Danke euch . Lg
Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User auf dem PC gültig sind.
Problem: Eintrag wird auf HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains gemacht funktioniert es nicht.
Wird es nur für den Current User auf HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains ausgeführt, sind die Einträge da.
Bitte um Abhilfe
Powershell Script:
Set-Location "HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set-Location ZoneMap
New-Item Domains
Set-Location Domains
$myDir = Split-Path -Parent $MyInvocation.MyCommand.Path
[xml]$xml = Get-Content "$MyDir\Office365-TrustedSites.xml"
$ComputerRegPath = "HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains"
$DWord = 2
#----------------------------------------------------------
#START FUNCTIONS
#----------------------------------------------------------
Function CreateKeyReg
{
Param
(
[String]$KeyPath,
[String]$Name
)
New-Item -Path "$KeyPath" -ItemType File -Name "$Name" -ErrorAction SilentlyContinue | Out-Null
}
#Function to set the Registry Values
Function SetRegValue
{
Param
(
[String]$RegPath
)
Set-ItemProperty -Path $RegPath -Name "http" -Value $DWord -ErrorAction SilentlyContinue | Out-Null
Set-ItemProperty -Path $RegPath -Name "https" -Value $DWord -ErrorAction SilentlyContinue | Out-Null
}
#----------------------------------------------------------
#START
#----------------------------------------------------------
foreach( $entry in $xml.trusted)
{
[array]$Trusted = $entry.site
}
for($i = 0; $i -lt $Trusted.count; $i++)
{
[string]$PrimaryDomain = $Trusted[$i].Split('.')[1..10] -join '.'
[string]$SubDomain = $Trusted[$i].Split('.')
CreateKeyReg -KeyPath $ComputerRegPath -Name $PrimaryDomain
CreateKeyReg -KeyPath "$ComputerRegPath\$PrimaryDomain" -Name $SubDomain
SetRegValue -RegPath "$ComputerRegPath\$PrimaryDomain\$SubDomain" -DWord $DWord
}
Beispiel XML:
In dem Fall XML Namen genommen: Office365-TrustedSites.xml
<trusted>
<site>*.aadrm.com</site>
<site>*.activedirectory.windowsazure.com</site>
<site>*.adhybridhealth.azure.com</site>
</trusted>
Zusatzinfo:
Nach dem das Script mit Trusted Sites Liste (XML) ausgeführt wird, funktioniert alles im Editor. Einträge sind dann auch in der Registry. Wenn ich dann im IE überprüfe, ob es übernommen wurde, sehe ich nichts. Was kann ich dagegen tun ? Oder wie müsste das Script aussehen um diese Aufgabe zu überwältigen.
Ist vielleicht Registry Eintragsstelle falsch ? Oder muss noch ein Schlüssel angepasst werden ? Sowas wie HKLM_security_only auf 0 , hat nix gebracht leider?
Bin jetzt seit 2 Tagen dran und komme nicht weiter. Kann mir jemand bei der Lösung helfen ? Danke euch . Lg
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 357730
Url: https://administrator.de/forum/trusted-sites-fuer-alle-user-auf-dem-pc-einpflegen-357730.html
Ausgedruckt am: 22.04.2025 um 15:04 Uhr
12 Kommentare
Neuester Kommentar

GPO:
Computer Configuration --- Administrative Tools --- Windows Components --- Internet Explorer --- Internet Control Panel --- Security Page and then double click to the "Site to zone assignment list".
Enable it, click Show, add website as value name and 1, 2, 3 or 4 as value.
1. Intranet zone
2. Trusted Sites zone
3. Internet zone
4. Restricted Sites zone
Computer Configuration --- Administrative Tools --- Windows Components --- Internet Explorer --- Internet Control Panel --- Security Page and then double click to the "Site to zone assignment list".
Enable it, click Show, add website as value name and 1, 2, 3 or 4 as value.
1. Intranet zone
2. Trusted Sites zone
3. Internet zone
4. Restricted Sites zone

Dann schau dir die Policy genau an und welche Einträge sie wie in der Registry setzt und stell das mit PS genauso nach.

Zitat von @xXTaKuZaXx:
"Dann schau dir die Policy genau an und welche Einträge sie wie in der Registry setzt "
Genau das ist ja auch eins meiner Probleme, ich weiss nicht welcher Eintrag geändert werden muss.
Welcher Eintrag bzw. wo müssen die Trusted Sites in der Registry eingetragen werden?
GPO einfach Mal testweise setzen dann siehst dus "Dann schau dir die Policy genau an und welche Einträge sie wie in der Registry setzt "
Genau das ist ja auch eins meiner Probleme, ich weiss nicht welcher Eintrag geändert werden muss.
Welcher Eintrag bzw. wo müssen die Trusted Sites in der Registry eingetragen werden?
Ich kann aber nicht immer bei jedem User mich anmelden und den Script laufen lassen. Ich möchte das Script einmal ausführen und somit sollen
Anmeldeskript oder im Default-User Profil hinterlegen.
Du weißt aber schon das es Local GPOs gibt?!
Hallo,
zunächst setze Deinen Code bitte in Codetags. Dazu findest Du im Editmodes links </>, bitte nutze Sie. Damit wird Dein Code lesbarer.
Dazu sind GPOs da, für die zentrale Verwaltung und Konfiguration.
Zudem kann man GPOs so setzen, daß einige Einstellungen vom Benutzer angepasst werden können.
Das nennt man Voreinstellungen.
Einstellungen per Powershell oder direkte Registrymanipulationen sind heute nicht mehr zeitgemäß.
Gruss Penny
zunächst setze Deinen Code bitte in Codetags. Dazu findest Du im Editmodes links </>, bitte nutze Sie. Damit wird Dein Code lesbarer.
Zitat von @xXTaKuZaXx:
Es sollen keine GPOs benutzt werden, die Trusted Sites sollen über Powershell eingetragen werden.
Warum sollen KEINE GPOs genutzt werden, sondern stattdessen Powershell?Es sollen keine GPOs benutzt werden, die Trusted Sites sollen über Powershell eingetragen werden.
Dazu sind GPOs da, für die zentrale Verwaltung und Konfiguration.
Zudem kann man GPOs so setzen, daß einige Einstellungen vom Benutzer angepasst werden können.
Das nennt man Voreinstellungen.
Einstellungen per Powershell oder direkte Registrymanipulationen sind heute nicht mehr zeitgemäß.
Gruss Penny
Und Du hast die Frage von @certifiedit.net nicht beantwortet:
Ist der onimöse Server ein Windows 7 PC?
Und wenn der onimöse Server ein Windows 7 PC ist, dann stellt sich die Frage nach den Lizenzen.
Denn soweit ich informiert bin, ist Windows 7 KEIN Serverbetriebssystem.
Guss penny.
Ist der onimöse Server ein Windows 7 PC?
Und wenn der onimöse Server ein Windows 7 PC ist, dann stellt sich die Frage nach den Lizenzen.
Denn soweit ich informiert bin, ist Windows 7 KEIN Serverbetriebssystem.
Guss penny.