パッチjoeqwertyリンクも確認してください。
重要な詳細があります:
既知の問題点
MS16-072は、ユーザーグループポリシーを取得するセキュリティコンテキストを変更します。この設計上の動作の変更により、お客様のコンピューターはセキュリティの脆弱性から保護されます。MS16-072をインストールする前に、ユーザーのセキュリティコンテキストを使用してユーザーグループポリシーが取得されました。MS16-072のインストール後、マシンのセキュリティコンテキストを使用してユーザーグループポリシーが取得されます。この問題は、次のKB記事に適用されます。
- 3159398 MS16-072:グループポリシーのセキュリティ更新プログラムの説明:2016年6月14日
- 3163017 Windows 10の累積的な更新:2016年6月14日
- 3163018 Windows 10バージョン1511およびWindows Server 2016テクニカルプレビュー4:2016年6月14日の累積的な更新
- 3163016 Windows Server 2016 Technical Preview 5の累積的な更新:2016年6月14日
症状
ユーザーアカウントまたはセキュリティグループ、あるいはその両方でセキュリティがフィルター処理されたものを含むすべてのユーザーグループポリシーは、ドメインに参加しているコンピューターに適用できない場合があります。
原因
この問題は、グループポリシーオブジェクトにAuthenticated Usersグループの読み取りアクセス許可がない場合、またはセキュリティフィルターを使用していてドメインコンピューターグループの読み取りアクセス許可がない場合に発生する可能性があります。
解決
この問題を解決するには、グループポリシー管理コンソール(GPMC.MSC)を使用して、次のいずれかの手順を実行します。
-グループポリシーオブジェクト(GPO)の読み取りアクセス許可を持つAuthenticated Usersグループを追加します。
-セキュリティフィルタリングを使用している場合は、読み取り権限を持つDomain Computersグループを追加します。
このリンクMS16-072の展開を参照してください。これは、すべてを説明し、影響を受けるGPOを修復するスクリプトを提供します。このスクリプトは、認証されたユーザーのアクセス許可を持たないすべてのGPOに、認証されたユーザーの読み取りアクセス許可を追加します。
# 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
}
}
認証されたユーザーではなく、ドメインコンピューターの読み取りアクセス許可を設定する場合(私が行うように)、これ0 {$appliedgroup = "Authenticated Users"}
をこれに変更します。0 {$appliedgroup = "Domain Computers"}