ユーザーが多数のグループに属している場合に Kerberos 認証に関する問題

Windows XP のサポートは終了しました

マイクロソフトでは、2014 年 4 月 8 日に Windows XP のサポートを終了しました。この変更は、ソフトウェアの更新プログラムおよびセキュリティ オプションに影響しています。 この変更の意味および保護された状態を維持する方法について説明します。

Windows Server 2003 のサポートは 2015 年 7 月 14 日で終了しています

Windows Server 2003 のサポートは 2015 年 7 月 14 日で終了しています。この変更は、ソフトウェアの更新プログラムおよびセキュリティ オプションに影響します。 この変更の意味および保護された状態を維持する方法について説明します。

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:327825
2011 年 7 月 12 日で Windows Vista Service Pack 1 (SP1) のサポートは終了しました。Windows のセキュリティ更新プログラムの受信を続行するには、Windows Vista を Service Pack 2 (SP2) で 実行していることを確認してください。詳細については、このマイクロソフトの web ページを参照してください。 いくつかのバージョンの Windows のサポートが終了します。.
現象
ユーザーは、多数のグループに属している、そのユーザーは認証やグループ ポリシーの設定に問題があります。次のマイクロソフト サポート技術情報では、これらの現象の詳細について説明します。

269643 IIS への接続が不足しているバッファーがある Internet Explorer の Kerberos 認証が動作しません。
280380 バッファー オーバーフローの脆弱性が拡張ストアド プロシージャで実行できます。
2020943 "HTTP 400 - 不正な要求 (要求ヘッダーが長すぎます)」のエラーでは、インターネット インフォメーション サービス (IIS)
これらの資料に記載されている解像度では、MaxTokenSize レジストリ値を変更するように指示します。この解像度が向上しました。この資料に記載されている修正プログラムを使用する場合は、デフォルトの MaxTokenSize 値を編集するのには必要がありますされません。

この資料に記載されている修正プログラムには、このセクションに記載されているマイクロソフト サポート技術情報資料に記載されている修正プログラムよりも優先されます。
原因
認証の試行中に生成される Kerberos トークンの最大サイズは固定のため、ユーザーを認証できません。リモート プロシージャ コール (RPC) の転送バッファーを割り当て、認証の場合、MaxTokenSize 値を HTTP が依存しているとします。Windows 2000 (オリジナル リリース) の場合、MaxTokenSize 値は 8,000 バイトです。Windows 2000 Service Pack 2 (SP2) および Windows Server 2003 の場合は、MaxTokenSize 値が 12,000 バイトです。

Kerberos では、Kerberos パケット転送 Active Directory グループのメンバーシップの特権属性証明書 (PAC) フィールドを使用します。Windows Server 2012 以降では、Active Directory 要求情報 (ダイナミック アクセス制御)のフィールドについても、これが適用されます。そのユーザーに対しての多くのグループのメンバーシップがある場合、さらにそのユーザーまたは使用されているデバイスに多くの要求がある場合、これらのフィールドはパケットのスペースの多くを占有する可能性があります。

ユーザーが 120 を超えるグループのメンバーである場合、MaxTokenSize 値で決定されるバッファーの大きさが不十分です。したがって、ユーザーを認証できないと、"メモリ不足"エラー メッセージが表示される場合があります。この資料に記載されている修正プログラムを適用する前に、ユーザー アカウントに追加されるすべてのグループは 40 バイトがこのバッファーを増加します。

注: <b>多くのシナリオで Windows NTLM 認証は、期待どおりに動作します。分析しなくても、Kerberos 認証の問題が表示されない場合があります。ただし、シナリオのグループ ポリシー設定が適用されている可能性があります期待どおりに動作しません。
解決方法
重要: この問題を解決するには、Kerberos 認証プロセスに関与しているすべてのコンピューターで、MaxTokenSize レジストリ値を設定する必要があります。これには、SQL Server クライアントが含まれます。(レジストリ キーは、要求/応答フローに関連する各コンピューターに設定します。したがって、web アプリケーションが依存している、SQL Server クライアントがある場合、またはユーザーのトークンは、バックエンド SQL Server データベースに渡す必要がある場合は、レジストリ キーは、SQL Server データベース コンピューターで、SQL Server クライアント コンピューターに設定するのにはも、Internet Explorer を実行しているクライアント コンピューターを実行している web サーバーは IIS を実行します。、というようにします。)

注: <b>次のバージョン Windows にはには、この問題の修正プログラムが含まれます。
  • Windows 8
  • Windows Server 2012
  • Windows 7 の場合
  • Windows Server 2008 R2
  • Windows Server 2003
  • Windows Vista の場合
  • Windows サーバー 2008
  • Windows XP Professional

Service Pack 情報

この問題を解決するには、Microsoft Windows 2000 の最新の service pack を入手します。詳細については、以下のサポート技術情報番号をクリックしてください。
260910 Windows 2000 service pack の入手方法

修正プログラムの情報

サポートされている修正プログラムはマイクロソフトから現在入手可能です。ただし、この資料に記載されている問題のみを修正するものです。この特定の問題が発生したシステムにのみ適用してください。この修正プログラムは、今後さらにテストを行うことがあります。この問題で深刻な影響を受けていない場合は、この修正プログラムが含まれる次の Windows 2000 service pack のリリースを待つことを勧めします。

この問題を解決するには、修正プログラムを入手するのには、Microsoft カスタマー サポート サービスに問い合わせてください。マイクロソフト カスタマー サポート サービスの電話番号とサポートのコストに関する情報の一覧については、次のマイクロソフト web サイトを参照してください。注: <b>特別な場合では、まれに通常サポート コールの発生に料金 Microsoft Support 担当者は、特定の更新で問題が解決されると判断した。追加の質問および問題の特定のアップデートの対象にはなりませんが、通常のサポート料金が適用されます。修正プログラム (英語版) のファイル属性は次表のとおりです。ただし、これより新しい修正プログラムがリリースされている可能性もあります。各ファイルの日付および時刻は、世界協定時刻 (UTC) で示されています。ファイル情報に表示される時刻は、ローカル時刻に変換されています。UTC とローカル時間の時差を確認するには、コントロール パネルの [日付と時刻] で、[タイム ゾーン] タブを使用します。
状況
マイクロソフトでは、この問題を対象製品として記載されているマイクロソフト製品の問題として認識しています。 この問題は、Microsoft Windows 2000 Service Pack 4 で最初に修正されました。
詳細

トークンを Windows Server 2008 R2 の計算方法 Windows 2000 のサイズ

この資料に記載されている修正プログラムを使用する場合、ほとんどの場合、MaxTokenSize レジストリ値を変更する必要はありません。ただし、この修正プログラムを適用した後で、MaxTokenSize レジストリ値を変更する必要があるいくつかのシナリオがあります。すべてのドメイン コント ローラーにこの修正プログラムを適用した後は、MaxTokenSize 値を修正する必要があるかどうか確認するのには次の数式を使用します。
します = 1200 + 40 d + 8
この数式は、次の値を使用します。
  • d: ドメインのローカル グループのメンバーであるユーザーの数と、ユーザーがのメンバーであるユーザーのアカウント ドメインの外側のユニバーサル グループ数とグループの数には、ID (SID) 履歴のセキュリティで表されます。
  • s: ユーザーがのメンバーになっているセキュリティ グローバル グループ数 + ユーザーのメンバーであるユーザーのアカウント ドメインのユニバーサル グループの数。
  • 1200: チケット オーバーヘッドの推定値です。この値は、DNS ドメイン名の長さ、クライアント名、およびその他の要因などの要因によって異なります。
(たとえば、ユーザーは、ドメイン コント ローラーに認証) と委任を使用する場合、トークンのサイズを 2 倍することをお勧めします。

レジストリ エントリを設定します。

この数式を使用して計算したトークン サイズが 12,000 バイト (デフォルトのサイズ) 未満の場合は、ドメイン クライアント上で、MaxTokenSize レジストリ値を変更する必要はありません。値が 12,000 バイトを超える場合、MaxTokenSize レジストリ値を調整する方法の詳細については、次のマイクロソフト サポート技術情報資料を参照してください。

263693 多数のグループに属するユーザーに、グループ ポリシーを適用しない場合があります。

注:
  • MaxTokenSize 値を変更するときは、変更が有効にできるように、コンピューターを再起動する必要があります。
MaxTokenSizeレジストリ エントリの推奨値は 65535 の 10 進数または 16 進の FFFF です。MaxTokenSize 値では、固定の Kerberos チケットに表示されるアカウントがメンバーであるグループを表す Sid を格納するバッファーを指定します。

安全なサイズを使用するには、ことができます48000MaxTokenSizeに設定する次の HTTP ヘッダーのサイズをこの資料の後半で導入された制限事項について説明します。によってどのような値を使用している、Kerberos のエラー イベント、または IIS の HTTP 400 エラーに問題が発生した最初です。

発生する可能性がある既知の問題

アクセス トークンのサイズの既知の問題:

ローカル セキュリティ機関 (LSA) サービスでは、この SID のバッファーからユーザーのアクセス トークンを生成します。ハードコーディングされた上限の顧客のこのトークンの Sid が定義可能な 1,015 は、この KB 資料を参照してください。
1,015 以上のグループのメンバーである 328889 のユーザーのログオン認証が失敗します。
http://support.microsoft.com/kb/328889/EN-US

したがって、1015 が複数の有効な Sid の MaxTokenSize 値は便利です。次の数式は次の
MaxTokenSize = 1200 + 40 d + 8
40 d は、ドメイン ローカル グループの SID の 40 バイトがあることを意味します。8 では、ドメイン グローバル/ユニバーサル グループの SID の 8 バイトを意味します。

したがって、MaxTokenSize 値が 0x0000FFFF (64 K) の場合に、約 1,600年個のドメイン ローカル グループの Sid または 8,000 個のドメイン グローバル/ユニバーサル グループの Sid をバッファーする必要があります。「委任に対して信頼されている」アカウントを使用する場合、SID ごとに必要なバッファーが 2 倍に可能性があります。これらのシナリオでは、64 K の MaxTokenSize 値を使用すると、約 800 のドメイン ローカル グループの Sid をのみ格納できます。ただし、のみのドメイン ローカル グループの Sid を持つは、一般的なシナリオではありません。64 K の値は、委任のシナリオについても十分なはずです。

既知の問題MaxTokenSize 65535 より大きい値を使用する場合

この資料の以前のバージョンでは、 MaxTokenSizeの最大の 100000 バイトの値を説明します。あるバージョンの SMS 管理に問題がある場合、 MaxTokenSize100000を発見しましたかそれ以上です。IPSEC IKE プロトコルはセキュリティ 66536 のバイト数よりもサイズが大きくなるに BLOB を許可しない、 MaxTokenSize値を大きく設定すると失敗もわかりましたがも。

インターネット インフォメーション サーバーの HTTP の既知の問題には、バッファーが表示されます。

インターネット インフォメーション サービス (IIS) は、64 KB の攻撃ベクトルをサービス拒否攻撃を軽減するために、削減の要求バッファーのサイズを使用します。ただし、HTTP 要求内の Kerberos チケットが Base64 としてエンコードされた (6 ビットが 8 ビットに拡張する)。さらに、Kerberos チケットを使用して元のサイズの 133% とします。したがって、最大バッファー サイズが IIS での 64 KB の場合は、48 KB の Kerberos チケットを使用できます。

レジストリ エントリMaxTokenSize 48000 より大きい値に設定すると、Sid のバッファー領域が使用される、IIS エラーが表示される場合があります。ただし、48000 にMaxTokenSizeレジストリ エントリを設定する、Kerberos エラーが発生します。

IIS のバッファー サイズの詳細については、マイクロソフト サポート技術情報の記事を表示するのには次の資料番号をクリックします。
310156 IIS を Windows 2000 クライアントから受け付ける HTTP 送信のヘッダー サイズを制限する方法

920862 Outlook Web Access ユーザーは、Exchange Server 2003年でメールボックスにアクセスしようとするときにエラー メッセージ:"HTTP 400 不正な要求 (要求ヘッダーが長すぎます)」

Windows Server 2012 の変更

Windows Server 2012 では、このバッファーに関する考慮事項を次の変更が導入されています。
  • MaxTokenSize の既定値は、48,000 バイトに変更されます。
  • PAC 内の sid を圧縮するための新しいパターンがあります。
  • ダイナミック アクセス制御では、チケットに作業中のディレクトリ要求を追加します。したがって、予想されるチケットのサイズを計算する簡単ではありません。想定は、Windows Server 2012 のドメイン コント ローラーによって発行されるチケットが古いバージョンのオペレーティング システムから発行される同じチケットよりも小さいことです。クレームは、サイズのチケットに追加します。ただし、Windows Server 2012 のファイル ・ サーバを使用しているクレームにした後、非常に多くのチケットのサイズをトリミングするのにはファイルへのアクセスを制御するグループを段階的にことができます。

Windows Server 2012 の変更の詳細については、次のマイクロソフト TechNet web サイトを参照してください。

チケットのサイズを超えた場合の問題の例

詳細については、マイクロソフトサポート技術記事を表示する次の資料番号をクリックしてください。
277741 Kerberos のバッファーが不足のため、Internet Explorer のログオンに失敗した場合します。
313661 エラー メッセージ: TCP/IP 経由で SQL Server に接続して、Kerberos MaxTokenSize が 0 xffff より大きい場合に発生する「タイムアウト」

クロス ドメインへのログオンのシナリオは、フォレスト内でする必要があります、ために、すべての Windows ベースのシステムでフォレスト全体が値に設定します。したがって、MaxTokenSize 値の最大値が 64 K にすることをお勧めします。

重要: SQL Server のクライアントでは、この問題が発生したとき、次のエラー メッセージが表示される場合があります。
SSPI コンテキストを生成できません。
この問題を解決するには、Kerberos 認証プロセスに関与しているすべてのコンピューターで、MaxTokenSize レジストリ値を設定する必要があります。これには、SQL Server クライアントが含まれます。

警告: この記事は自動翻訳されています

プロパティ

文書番号:327825 - 最終更新日: 06/11/2016 19:12:00 - リビジョン: 8.0

Microsoft Windows XP Professional, Microsoft Windows XP Professional x64 Edition, Microsoft Windows Server 2003 Service Pack 2, Windows Vista Business, Windows Vista Enterprise, Windows Vista Ultimate, Windows Server 2008 Datacenter, Windows Server 2008 Enterprise, Windows Server 2008 Standard, Windows Web Server 2008, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Foundation, Windows Server 2008 R2 Standard, Windows 7 Enterprise, Windows 7 Professional, Windows 7 Ultimate, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows Server 2012 Foundation, Windows Server 2012 Standard, Windows 8 Enterprise, Windows 8 Pro, Microsoft Windows Server 2003 R2 Datacenter Edition (32-Bit x86), Microsoft Windows Server 2003 R2 Datacenter x64 Edition, Microsoft Windows Server 2003 R2 Enterprise Edition (32-Bit x86), Microsoft Windows Server 2003 R2 Enterprise x64 Edition, Microsoft Windows Server 2003 R2 Standard Edition (32-bit x86), Microsoft Windows Server 2003 R2 Standard x64 Edition, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 Foundation, Windows Server 2012 R2 Standard

  • kbqfe kbHotfixServer kbsecurity kbwin2ksp4fix kbbug kbfix kbwin2000presp3fix kbwin2000presp4fix kbmt KB327825 KbMtja
フィードバック