Active Directoryユーザーアカウントが自動的にKerberos AES認証をサポートしないのはなぜですか?


8

Windows Server 2012 R2のテストドメインで遊んでいます。私は可能な限り最高の機能レベルで運用しており、小規模なテスト環境で下位互換性の問題はありません。ただし、私はKerberos AES認証をサポートしているにもかかわらず、どのユーザーに対してもデフォルトで有効になっていないことに気付きました。実際にユーザーのプロパティに移動し、「このアカウントはKerberos AES 128ビット暗号化をサポートしています」または「このアカウントはKerberos AES 256ビット暗号化をサポートしています」をチェックして有効にする必要があります。

(AESを要求するポリシーを設定する「保護されたユーザー」グループにテストアカウントを追加したときに、最初にこれに気付きました。その後、これらのボックスをオンにするまで、すべてのネットワークログインが失敗し始めました。)

一部のシステムの下位互換性を確保するために、これはデフォルトで無効になっている可能性があると思いますが、すべてのユーザーに対してこれを有効にする方法、または現在の動作の説明すら見つかりません。

何か案は?

回答:


10

ユーザーのKerberos AESチェックボックスをチェックすると、Vista以前のクライアントで認証エラーが発生します。これがおそらくデフォルトで設定されていない理由です。

Kerberos AESサポートのチェックボックスは、呼び出された属性に設定された値に対応します msDS-SupportedEncryptionTypes

これを複数のユーザーに対して変更するには、PowerShellとActiveDirectoryモジュールを利用できます。

# The numerical values for Kerberos AES encryption types to support
$AES128 = 0x8
$AES256 = 0x10

# Fetch all users from an OU with their current support encryption types attribute
$Users = Get-ADUser -Filter * -SearchBase "OU=SecureUsers,OU=Users,DC=domain,DC=tld" -Properties "msDS-SupportedEncryptionTypes"
foreach($User in $Users)
{
    # If none are currently supported, enable AES256
    $encTypes = $User."msDS-SupportedEncryptionType"
    if(($encTypes -band $AES128) -ne $AES128 -and ($encTypes -band $AES256) -ne $AES256)
    {
        Set-ADUser $User -Replace @{"msDS-SupportedEncryptionTypes"=($encTypes -bor $AES256)}
    }
}

新しいユーザーのデフォルトでこれを設定する方法はありますか?
リードランキン2014

2
ADスキーマを変更することで、これを新しいユーザーのデフォルトにすることができます。ただし、より詳細な回答が必要な場合は、別の質問として質問する必要があります。
Ryan Bolger、2015年

Vistaより前のクライアントは何年もの間サポートされていなかったため、msDS-SupportedEncryptionType属性を持たないすべてのユーザーに対して、Microsoftが最終的にAES暗号化タイプをデフォルトで有効にしたのは素晴らしいことです。
Markus Kuhn
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.