xxtakuzaxx
Goto Top

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

Content-Key: 357730

Url: https://administrator.de/contentid/357730

Ausgedruckt am: 19.03.2024 um 05:03 Uhr

Mitglied: 134464
134464 11.12.2017 um 08:44:58 Uhr
Goto Top
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
Mitglied: xXTaKuZaXx
xXTaKuZaXx 11.12.2017 um 09:56:51 Uhr
Goto Top
Es sollen keine GPOs benutzt werden, die Trusted Sites sollen über Powershell eingetragen werden.
Mitglied: 134464
134464 11.12.2017 aktualisiert um 10:02:13 Uhr
Goto Top
Dann schau dir die Policy genau an und welche Einträge sie wie in der Registry setzt und stell das mit PS genauso nach.
Mitglied: xXTaKuZaXx
xXTaKuZaXx 11.12.2017 um 10:12:53 Uhr
Goto Top
Der Eintrag in HKLM also auf die Local Machine wird gemacht. Nur es wird nicht im IE auf Trusted Sites übernommen.
Macht man den gleichen Eintrag auf den Schlüssel HKCU für Current User funktioniert es. 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
für alle User diese Trusted SItes übernommen werden. Ich habe das ganze auch unter Shell Scripting geschrieben, weil
hier GPOs nicht genutzt werden können und der Weg nicht benutzbar ist. Daher bitte nur Script-Lösungen. Oder Änderungsvorschläge.

Nochmal Aufgabe ist, ich führe einmal per Powershell das Script durch, somit werden die Trusted Sites eingepflegt und sollen dann für alle
gültig sein. Kann mir jemand hierbei helfen ?
Mitglied: xXTaKuZaXx
xXTaKuZaXx 11.12.2017 um 10:17:21 Uhr
Goto Top
"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?
Mitglied: 134464
134464 11.12.2017 aktualisiert um 10:33:55 Uhr
Goto Top
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 face-wink
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?!
Mitglied: 7Gizmo7
7Gizmo7 11.12.2017 um 10:22:06 Uhr
Goto Top
Hallo,

Warum können keine GPO‘s genutzt werden? Wir tragen dynamisch per GPO Einträge ein und der User kann persönliche hinzufügen.

MfG
Mitglied: Penny.Cilin
Penny.Cilin 11.12.2017 um 11:20:05 Uhr
Goto Top
Hallo,

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?
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
Mitglied: xXTaKuZaXx
xXTaKuZaXx 11.12.2017 um 15:32:22 Uhr
Goto Top
Es sind Kleinunternehmen die keine GPOs nutzen. Ich soll jetzt ein Script
von Powershell tippen und per Powershell Script Trusted SItes eintragen
und wieder von dem Rechner gehen ohne den User zu stören.
Trusted Sites sollen für alle User dann aktiv sein. WIe kann ich das Problem lösen ?
Mitglied: falscher-sperrstatus
falscher-sperrstatus 11.12.2017 um 15:33:43 Uhr
Goto Top
...seit wann dürfen kleinunternehmen keine GPO nutzen? face-smile Seid Ihr Frickler?

Oder ist der "Server" ein Windows 7 PC?
Mitglied: xXTaKuZaXx
xXTaKuZaXx 11.12.2017 um 17:37:24 Uhr
Goto Top
Jep Windows 7 PCs face-smile
Mitglied: Penny.Cilin
Penny.Cilin 11.12.2017 um 17:48:14 Uhr
Goto Top
Zitat von @xXTaKuZaXx:

Jep Windows 7 PCs face-smile
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.