一部のアプリケーションや API でアカウント オブジェクトの承認情報に対するアクセス許可が必要になる

文書翻訳 文書翻訳
文書番号: 331951 - 対象製品
すべて展開する | すべて折りたたむ

目次

概要

一部のアプリケーションには、Microsoft Active Directory ディレクトリ サービスのユーザー アカウント オブジェクトまたはコンピュータ アカウント オブジェクトの Token-Groups-Global-And-Universal (TGGAU) 属性を読み取る機能があります。いくつかの Win32 関数を使用すると、TGGAU 属性を簡単に読み取ることができます。この属性を読み取るアプリケーションや、この属性を読み取る API (以下、関数と呼びます) を呼び出すアプリケーションでは、呼び出し時のセキュリティ コンテキストにこの属性に対するアクセス許可がない場合、処理が失敗します。

デフォルトでは、TGGAU 属性に対するアクセス許可が "アクセス許可の互換性" の判断によって決められます (これは、ドメインの作成時に DCPromo.exe の処理で行われます)。新しい Windows Server 2003 ドメインのデフォルトのアクセス許可の互換性では、TGGAU 属性に対する幅広いアクセス許可は付与されません。TGGAU 属性を読み取るためのアクセス許可は、Windows Server 2003 の新しい "Windows Authorization Access Group" (WAA) グループで必要な権限として与えることができます。

詳細

Token-Groups-Global-And-Universal (TGGAU) 属性は、Active Directory のコンピュータ アカウント オブジェクトまたはユーザー アカウント オブジェクトに対して動的に計算される値です。この属性により、該当するユーザー アカウントやコンピュータ アカウントのグローバル グループのメンバシップとユニバーサル グループのメンバシップが列挙されます。アプリケーションでは、TGGAU 属性によって提供されるグループ情報を使用して、ログオンしていない特定のユーザーに関するさまざまな判断を行うことができます。

たとえば、アプリケーションでこの情報を使用して、アプリケーションがアクセスを制御しているリソースに対するアクセス許可がユーザーに付与されているかどうかを確認できます。この情報が必要なアプリケーションは、LDAP (Lightweight Directory Access Protocol) インターフェイスまたは Active Directory サービス インターフェイス (ADSI) のいずれかを使用することで TGGAU 属性を直接読み取ることができます。ただし、Microsoft Windows Server 2003 では、TGGAU 属性の読み取りと解釈を簡単にするいくつかの関数 (AuthzInitializeContextFromSid 関数や LsaLogonUser 関数など) が導入されています。そのため、これらの関数を使用するアプリケーションでは、知らないうちに TGGAU 属性を読み取っている可能性があります。

アプリケーションでこの属性を直接読み取る必要がある場合や、(API を使用して) この属性を間接的に読み取る必要がある場合は、アプリケーション実行時のセキュリティ コンテキストにユーザー オブジェクトとコンピュータ オブジェクトの TGGAU オブジェクトに対して読み取りのアクセス許可が付与されている必要があります。アプリケーションで TGGAU にアクセスできることが想定されているかどうかはわかりませんが、アクセスが拒否されたときにはアプリケーションの処理が失敗する可能性があります。この場合、この情報の読み取り時にアクセスが拒否されたことや (この資料の後半に記載されているような) アクセス許可の取得方法について説明する、エラー メッセージまたはログが出力されることがあります。

既存のアプリケーションの中には、TGGAU によって提供される情報に依存するものがあります。これは、Microsoft Windows NT 4.0 およびそれ以前のオペレーティング システムでは、この情報がデフォルトで利用できるためです。そのため、Microsoft Windows 2000 および Windows Server 2003 オペレーティング システムでは、TGGAU 属性に対する読み取りのアクセス許可が Pre-Windows 2000 Compatible Access グループに付与されています。

既存のアプリケーションを使用するドメインでは、それらのアプリケーションが Pre-Windows 2000 Compatible Access グループとして実行されるセキュリティ コンテキストを追加することで、これらのアプリケーションを使用できます。または、ドメインの作成時に DCPromo の処理で [Windows 2000 以前のサーバーと互換性があるアクセス許可] オプションを選択することもできます (Windows Server 2003 では、このオプションは [Windows 2000 以前のサーバー OS と互換性があるアクセス許可] と表示されます)。このオプションを選択すると、Everyone グループが Pre-Windows 2000 Compatible Access グループに追加されるため、Everyone グループには TGGAU 属性や他の多くのドメイン オブジェクトに対する読み取りのアクセス許可が与えられます。

Pre-Windows 2000 Compatibility Access グループの関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
257988 Dcpromo におけるアクセス許可の選択について


新しい Windows Server 2003 ドメインが作成されたときに、デフォルトで選択されるアクセス許可の互換性は [Windows 2000 または Windows Server 2003 OS とのみ互換性があるアクセス許可] です。このデフォルトのオプションでは、Pre-Windows 2000 Compatibility Access グループには何も登録されず、オブジェクトについての TGGAU 属性に対する読み取りのアクセス許可が制限されます。この場合、TGGAU グループに対するアクセス許可が必要なアプリケーションがドメイン管理者またはそれに類似した権限のあるアカウントで実行されていない場合には、処理が失敗します。

アプリケーションで TGGAU 属性を読み取ることができるようにする

Token-Groups-Global-And-Universal (TGGAU) 属性を読み取る必要があるユーザーに、この属性に対する読み取りのアクセス許可を簡単に付与できるようにするため、Windows Server 2003 で Windows Authorization Access Group (WAA) グループが導入されました。

新しく作成された Windows Server 2003 ドメインでは、ユーザー オブジェクトおよびグループ オブジェクトの TGGAU 属性に対する読み取りのアクセス許可が WAA グループに付与されます。

Windows 2000 ドメインの場合

ドメインが Pre-Windows 2000 Compatibility Access モードの場合、Everyone グループには、ユーザー アカウント オブジェクトおよびコンピュータ アカウント オブジェクトの TGGAU 属性に対する読み取りのアクセス許可があります。このモードでは、アプリケーションや関数から TGGAU にアクセスできます。

ドメインが Pre-Windows 2000 Compatibility Access モードでない場合、特定のアプリケーションで TGGAU を読み取れるようにすることが必要な場合があります。Windows 2000 には Windows Authorization Access Group グループがないため、同じ目的のドメイン ローカル グループを作成し、TGGAU 属性にアクセスできる必要があるユーザー アカウントやコンピュータ アカウントをそのグループに追加することをお勧めします。このグループには、ユーザー オブジェクト、コンピュータ オブジェクト、および iNetOrgPerson オブジェクトの tokenGroupsGlobalAndUniversal 属性に対するアクセス許可を与える必要があります。

サンプル スクリプトを使用してこれを行う方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
331947 Active Directory ディレクトリ サービスの Windows Server 2003 ビルトイン グループにプログラムからアクセス許可を適用する方法

混在モードのドメインとアップグレードされたドメイン

Windows 2000 ドメインに Windows Server 2003 ドメイン コントローラが追加された場合、以前に選択されたアクセス許可の互換性は変更されません。したがって、混在モードのドメインおよび Pre-Windows 2000 Compatibility Access モードの Windows Server 2003 にアップグレードされたドメインでは、以前と同様に Pre-Windows 2000 Compatibility Access グループに Everyone グループが存在します。また、Everyone グループには依然として TGGAU 属性に対するアクセス許可があります。このモードでは、アプリケーションや関数から TGGAU にアクセスできます。

混在モードのドメインが Pre-Windows 2000 Compatibility Access モードでない場合は、WAA グループを使用してアクセス許可を付与できます。
  • Windows Server 2003 ドメイン コントローラが FSMO (Floating Single Master Operations) サーバーに昇格されると、WAA グループが自動的に作成されます。
  • WAA グループには、混在モードのドメインおよびアップグレードされたドメインの TGGAU 属性に対するアクセス許可が自動的に付与されることはありません。
これらのアクセス許可の適用方法を示すスクリプトの関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
331947 Active Directory ディレクトリ サービスの Windows Server 2003 ビルトイン グループにプログラムからアクセス許可を適用する方法
Windows Authorization Access Group (WAA) グループに TGGAU 属性に対するアクセス許可が付与されたら、アクセス許可が必要なアカウントを WAA グループに追加できます。

新しい Windows Server 2003 ドメイン

ドメインが Pre-Windows 2000 Compatibility Access モードの場合、Everyone グループには、ユーザー アカウント オブジェクトおよびコンピュータ アカウント オブジェクトの TGGAU 属性に対する読み取りのアクセス許可があります。このモードでは、アプリケーションや関数から TGGAU にアクセスできます。

ドメインが Pre-Windows 2000 Compatibility Access モードでない場合は、TGGAU に対するアクセス許可が必要なアカウントを WAA グループに追加します。新しくインストールされた Windows Server 2003 では、ユーザー オブジェクトおよびコンピュータ オブジェクトの TGGAU 属性に対する読み取りのアクセス許可が既に WAA グループに付与されています。

プロパティ

文書番号: 331951 - 最終更新日: 2007年5月29日 - リビジョン: 4.1
この資料は以下の製品について記述したものです。
  • Microsoft Windows XP 64-Bit Edition Version 2003
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
キーワード:?
kbinfo kbsecurity KB331951
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com