GPO tidak berlaku untuk Windows 7 dan lebih tinggi

2

Ada dua pengontrol domain. Primer berfungsi pada Windows Server 2008 R2 dan sekunder pada Windows Server 2012.

Ketika saya membuat GPO pada kontroler utama, itu segera disalin ke kontroler domain sekunder dengan semua file dan skrip.

Di GPO di bagian Konfigurasi Pengguna, saya mengatur variabel lingkungan sistem, serta membuat folder di desktop dan pintasan di dalamnya.

Pemfilteran lingkup keamanan GPO berisi grup pengguna, yang ada di folder Pengguna dari pengontrol domain. Anggota yang masuk ke dalamnya terletak di unit organisasi yang berbeda.

http://i.stack.imgur.com/MBZez.png

http://i.stack.imgur.com/QTIIP.png

Jika saya masuk di komputer yang menjalankan Windows XP SP3, kebijakan tersebut segera dijalankan atau setelah dijalankan gpupdate /force. Pada komputer dengan versi sistem operasi Windows 7 dan lebih tinggi (Windows 8.1, Windows 10) - kebijakan tidak berhasil, dan tidak berlaku untuk pengguna.

Dalam gpresult /scope user /z > c:\gpo_dump.logSaya melihat bahwa Pengguna adalah anggota dari kelompok yang diperlukan, tetapi tidak menemukan GPO di bagian GPO yang diterapkan dan di bagian GPO tidak diterima. Mengapa? Jalankan gpupdate /forcedan beberapa kali reboot tidak membantu.

Vladimir Z.
sumber

Jawaban:

3

Berdasarkan pada tanggal pertanyaan Anda, saya yakin saya tahu jawaban untuk masalah Anda.

Telah ada pembaruan MS Security yang dirilis pada 14/6/2016 yang mengubah perilaku GPO dengan pengaturan pengguna! Banyak

Hingga sekarang semua GPO dengan pengaturan pengguna apa pun diterapkan dalam konteks keamanan pengguna. Oleh karena itu, kebijakan diterapkan selama pengguna terdaftar dalam pemfilteran keamanan (seperti yang Anda miliki).

Tetapi dengan perilaku setelah pembaruan MS mereka diterapkan di bawah konteks komputer. Jadi, jika Anda memiliki pengguna atau grup dalam pemfilteran keamanan, itu tidak cukup untuk pengaturan pengguna dalam kebijakan untuk diterapkan. Anda juga harus memiliki izin baca untuk komputer dari mana pengguna mengakses GPO. Anda tidak perlu mencantumkannya dalam pemfilteran keamanan tetapi Anda harus menambahkan setidaknya izin BACA (pada tab delegasi GPO) ke komputer atau grup yang menjadi anggota komputer ini.

Jadi pada dasarnya, jika userA terhubung dari komputerB, Anda akan memiliki userA terdaftar di pemfilteran keamanan dan komputerB perlu memiliki izin BACA pada GPO (bukan izin kebijakan yang berlaku). Lihat tautan ini Menyebarkan MS16-072 yang menjelaskan segalanya dan juga menawarkan skrip untuk memperbaiki GPO yang terpengaruh. MS menyarankan untuk menambahkan izin BACA untuk Pengguna yang Diotentikasi ke semua GPO (itulah script yang mereka sediakan untuk), tetapi saya pikir Domain Computers sedikit lebih aman.

Ini telah menggangguku selama berminggu-minggu. Saya tidak tahu mengapa beberapa GPO tiba-tiba berhenti bekerja. Ini semua karena ini. Saya akan menghargai jika perubahan besar seperti itu memiliki lebih banyak publisitas karena saya menjalankan lingkungan yang benar-benar tidak aman untuk waktu yang sangat lama karena non-pembatasan GPO diterapkan. Saya tahu saya harus tetapi saya tidak benar-benar membaca tentang semua Pembaruan MS yang saya terapkan. Saya harap ini membantu kasus Anda.

Berikut ini adalah skrip untuk menambahkan izin baca pengguna terotentikasi ke semua GPO yang tidak memiliki izin untuk pengguna terotentikasi.

    # Copyright (C) Microsoft Corporation. All rights reserved.

$osver = [System.Environment]::OSVersion.Version
$win7 = New-Object System.Version 6, 1, 7601, 0

if($osver -lt $win7)
{
    Write-Error "OS Version is not compatible for this script. Please run on Windows 7 or above"
    return
}

Try
{
    Import-Module GroupPolicy
}
Catch
{
    Write-Error "GP Management tools may not be installed on this machine. Script cannot run"
    return
}

$arrgpo = New-Object System.Collections.ArrayList

foreach ($loopGPO in Get-GPO -All)
{
    if ($loopGPO.User.Enabled)
    {
        $AuthPermissionsExists = Get-GPPermissions -Guid $loopGPO.Id -All | Select-Object -ExpandProperty Trustee | ? {$_.Name -eq "Authenticated Users"}
        If (!$AuthPermissionsExists)
        {
            $arrgpo.Add($loopGPO) | Out-Null
        }
    }
}

if($arrgpo.Count -eq 0)
{
    echo "All Group Policy Objects grant access to 'Authenticated Users'"
    return
}
else
{
    Write-Warning  "The following Group Policy Objects do not grant any permissions to the 'Authenticated Users' group:"
    foreach ($loopGPO in $arrgpo)
    {
        write-host "'$($loopgpo.DisplayName)'"
    }
}

$title = "Adjust GPO Permissions"
$message = "The Group Policy Objects (GPOs) listed above do not have the Authenticated Users group added with any permissions. Group policies may fail to apply if the computer attempting to list the GPOs required to download does not have Read Permissions. Would you like to adjust the GPO permissions by adding Authenticated Users group Read permissions?"

$yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes", `
    "Adds Authenticated Users group to all user GPOs which don't have 'Read' permissions"
$no = New-Object System.Management.Automation.Host.ChoiceDescription "&No", `
    "No Action will be taken. Some Group Policies may fail to apply"
$options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)
$result = $host.ui.PromptForChoice($title, $message, $options, 0)  
$appliedgroup = $null
switch ($result)
{
    0 {$appliedgroup = "Authenticated Users"}
    1 {$appliedgroup = $null}
}
If($appliedgroup)
{
    foreach($loopgpo in $arrgpo)
    {
        write-host "Adding 'Read' permissions for '$appliedgroup' to the GPO '$($loopgpo.DisplayName)'."
        Set-GPPermissions -Guid $loopgpo.Id -TargetName $appliedgroup -TargetType group -PermissionLevel GpoRead | Out-Null
    }
}

Jika Anda lebih suka mengatur izin baca untuk Domain Computers daripada Auth. Pengguna cukup mengubah ini 0 {$appliedgroup = "Authenticated Users"}menjadi itu0 {$appliedgroup = "Domain Computers"}

Menambahkan untuk klarifikasi:

Komputer, pengguna, atau grup mana pun yang ingin Anda BERLAKU, pengaturan GPO harus terdaftar dalam pemfilteran keamanan. Mendaftar pengguna komputer atau grup dalam pemfilteran keamanan secara efektif berarti, bahwa Anda memberi komputer, pengguna atau grup dua izin atas GPO - satu izin BACA dan yang lainnya BERLAKU KEBIJAKAN KELOMPOK. Tab delegasi memberi Anda opsi untuk menetapkan izin ke GPO secara lebih terperinci, tetapi Anda dapat memeriksa bahwa jika Anda menambahkan komputer, pengguna atau grup di tab pemfilteran keamanan, ia akan muncul di tab delegasi dengan dua izin ini BACA dan BERLAKU.

Dengan menambahkan komputer, pengguna atau grup ke tab delegasi dan memberinya izin BACA Anda TIDAK menerapkan GPO padanya. Anda hanya mengizinkannya membaca GPO.

Jadi mari kita simpulkan -

  • agar PENGATURAN KOMPUTER GPO diterapkan, Anda harus memiliki komputer (atau grup yang ada di dalamnya) terdaftar dalam pemfilteran keamanan.
  • Agar PENGATURAN PENGGUNA GPO diterapkan, Anda harus memiliki pengguna (atau grup yang ada di dalamnya) terdaftar dalam pemfilteran keamanan DAN Anda harus memberikan komputer (atau grup yang ada di dalamnya) dari mana pengguna mengakses GPO dan BACA izin di GPO.

Saya harap ini menjelaskannya untuk Anda.

Vita
sumber
sayangnya tidak berfungsi, saya mencoba membuat kebijakan yang membuat variabel lingkungan - satu di bagian komputer, yang lain di bagian pengguna. Ditambahkan ke filter domain keamanan pengguna, dan delegasi telah memberikan izin untuk membaca komputer domain. Belum menambahkan komputer di filter keamanan - bagian komputer tidak berlaku sama sekali.
Vladimir Z.
Bukan seperti itu (berfungsi. Anda harus memiliki komputer yang ingin Anda terapkan pengaturan komputer) dalam pemfilteran keamanan. Biarkan saya menguraikan sebentar
Vita
Saya menambahkan penjelasan di akhir jawaban saya. Itu harus mengklarifikasi
Vita