Windows Server 2003 Service Pack 1 で機密情報として属性をマークする方法

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

目次

概要

で、Active Directory ディレクトリ サービスの Windows 2000 および Microsoft Windows Server 2003 のことは、認証されたユーザーが属性を読み取るようにするのに困難です。 一般に、ユーザーは、属性やそのプロパティ セットの READ_PROPERTY のアクセス許可を要求、読み取りアクセス権が与えられます。 Active Directory 内で既定のセキュリティはように設定認証されたユーザーのすべての属性に対する読み取りアクセス。 ここでは Windows Server 2003 Service Pack 1 (SP1) 内の属性の読み取りアクセスを防ぐ方法について説明します。

概要

ここでは、Windows Server 2003 Service Pack 1 で機密情報として属性をマークする方法について説明します。

詳細

Windows Server 2003 SP1 機密として属性をマークする方法を紹介します。 これを行うには、スキーマ内の searchFlags 属性の値を変更します。 searchFlags 属性値には属性の各種プロパティを表す複数のビットが含まれます。 たとえば、ビット 1 が設定されて、いる場合は、属性インデックスは。 ビット 7 (128) は、属性を機密として指定します。

要件と制約

Windows Server 2003 SP1 またはそれ以降のバージョンを実行しているドメイン コントローラーだけ機密属性に対する読み取りアクセス チェックを適用します。 機密性の高い属性機能は、Windows Server 2003 SP1 またはそれ以降のバージョンのインストールに関連付けられます。 この機能は、ドメインまたはフォレスト機能レベルが有効かどうかに依存しません。

次の条件に該当場合を除きは、機密性の高い属性機能を使用しないでください。
  • すべての Windows Server 2003 ベースのドメイン コントローラーは Windows Server 2003 SP1 またはインストールそれ以降のバージョンがあります。
  • すべての Windows 2000 ベースのドメイン コントローラーをアップグレードまたは削除されています。
ドメインのオリジナル リリース版の Windows Server 2003 および Windows Server 2003 SP1 を Windows 2000 Server を実行しているドメイン コントローラーの混在している場合は次のような状況で問題が発生可能性がありますが生じます。
  • 承認されていないクライアントは Windows 2000 Server ベースおよび Windows Server 2003 ベースのドメイン コントローラーは、機密属性データを照会、した場合、クライアント データを読み取ることができます。
  • 場合は、承認されていないクライアント クエリ機密属性データの Windows Server 2003 SP1 ベースのドメイン コントローラー、クライアント データを読み取ることはできません。
機密情報として、基本のスキーマ属性をマークすることはできません。 従業員 ID は、基本のスキーマ属性の例です。 この属性は、 systemsFlags 属性値は 0x10 (基本のスキーマ) ため機密としてマークできません。 詳細については、属性が、基本のスキーマ属性かどうか確認する方法」と「既存の属性を使用する場合は、 searchFlags 属性値を決定する方法」セクションを参照してください。

テスト

Active Directory への変更と、スキーマ拡張をテストするは、実稼動フォレストを反映する演習では属性の変更をテスト徹底的にことをお勧めします。 テストを使用して、プロシージャがスムーズに動作する保証と問題が検出されるします。

アクセス制御のチェック

Windows Server 2003 SP1 がインストールされているし、機密性の高い属性の Active Directory をチェックする Active Directory が、読み取りのアクセス チェックを実行した後です。 機密属性が存在いて Active Directory は CONTROL_ACCESS にも必要 READ_PROPERTY アクセス許可をこれらの属性設定される場合、属性やそのプロパティ セットのアクセス許可。

メモ フル コントロール アクセス許可の設定には、CONTROL_ACCESS アクセス許可が含まれます。

Active Directory は、次のような場合、オブジェクトの読み取りのアクセス チェックを実行します。
  • ときに、オブジェクトには、検索フィルターと一致するかどうか評価します。
  • 検索フィルターに一致するオブジェクトの属性を返します。
既定では、管理者のみ CONTROL_ACCESS する権限のすべてのオブジェクト。 したがって、管理者だけに機密性の高い属性を参照できます。 管理者は、任意のユーザーまたはグループにこれらの権限を委任可能性があります。

ジェネリックとオブジェクト固有のアクセス制御エントリ

Active Directory 内のすべてのオブジェクトの関連付けられているアクセス制御情報をは。 この情報は、セキュリティ記述子と呼ばれます。 セキュリティ記述子のユーザーおよびグループを利用できるアクセスの種類を制御します。 セキュリティ記述子は、オブジェクトが作成されたときに自動的に作成されます。

一連のセキュリティ記述子のアクセス許可エントリ、随意アクセス制御リスト (DACL) と呼びます。 各アクセス許可エントリ、DACL にアクセス制御エントリ (ACE) と呼びます。

オブジェクトに許可または許可 CONTROL_ACCESS を機密属性をジェネリックまたはオブジェクトに固有のアクセス制御エントリをオブジェクトを使用してできます。 アクセス許可はそれらのオブジェクトに対して明示的にスタンプしてまたは継承を使用してに与えることができます。 継承、コンテナー階層の上位にあるコンテナーに対して継承可能なアクセス制御エントリを設定することを意味します。

ジェネリックとオブジェクト固有のアクセス制御エントリは、基本的に同じです。 コントロールのアクセス制御エントリを提供する継承を介しておよびオブジェクト アクセス上の度合いが間隔設定内容です。 汎用アクセス制御エントリは、全体オブジェクトに適用します。 オブジェクト固有のアクセス制御エントリはどのようなオブジェクトのアクセス制御エントリを継承を詳細に制御を提供します。 オブジェクト固有のアクセス制御エントリを使用して、属性またはプロパティ セットは、アクセス制御エントリを継承するオブジェクトの指定できます。

機密性の高い属性機能を使用する CONTROL_ACCESS アクセス許可は、ユーザーを汎用的なアクセス制御エントリを割り当てて与えられます。 CONTROL_ACCESS の権限が、オブジェクト固有のアクセス制御エントリを割り当てて与えられている、ユーザーへの機密属性 CONTROL_ACCESS 許可がのみ与えられます。

次のアクセス許可、汎用的なアクセス制御エントリを使用するとき与えられて。
  • すべての拡張権利
  • 認証を許可
  • パスワードの変更
  • 受信します。
  • パスワードをリセットします。
  • 送信の形式
汎用的なアクセス制御エントリを使用する場合に与えられる権限が全体のオブジェクトに対する要求よりも、複数アクセスを提供します。 問題は場合、は、アクセス制御エントリは機密属性にのみ適用されるようオブジェクトに、オブジェクト固有のアクセス制御エントリを設定できます。 オブジェクト固有のアクセス制御エントリを使用すると、プロパティまたはプロパティ アクセス制御エントリを適用する設定を制御できます。

Windows Server 2003 では、ユーザー インターフェイスは、Control_Access アクセス許可を公開されません。 Dsacls.exe ツールを使用できます、汎用的なアクセス制御エントリを割り当てることを Control_Access のアクセス許可を設定します。 ただしに、オブジェクト固有のアクセス制御エントリを割り当てるこのツールを使用することはできません。 オブジェクト固有のアクセス制御エントリを割り当てることにより Control_Access アクセス許可を設定できます唯一のツールは、Ldp.exe ツールです。

メモ アクセス制御の詳細についてはではこの資料の取り扱いません。 アクセス制御の詳細については、次のマイクロソフト Web サイトを参照してください。
http://msdn.microsoft.com/en-us/library/aa374860(VS.85).aspx
http://technet.microsoft.com/en-us/library/cc749433.aspx

継承を使用する方法

大規模なドメインでを手動でアクセス制御を割り当てるユーザーまたはグループを機密属性を持っているすべてのオブジェクトに実用的ではありません。 解決策は、継承を使用してコンテナー階層の上位にある継承可能なアクセス制御エントリを設定します。 このアクセス制御エントリ対象コンテナーのすべての子オブジェクト。

既定では、すべての組織単位 (OU) と、組み込みの管理者アカウント以外のすべてのユーザー アカウント継承が有効にします。 継承を無効にしているユーザー アカウントを作成する場合、またはビルトインの管理者アカウントをコピーして管理者アカウントを作成する場合は、これらのアカウントに対して継承有効にする必要があります。 それ以外の場合は、継承モデルは、これらのアカウントに適用されません。

機密属性を作成する方法

  1. どのような機密、としてマークする属性を決定または機密に属性を追加します。
  2. 適切なユーザーを与える Control_Access アクセス許可ユーザーが、属性データを表示できるようにします。
Ldp.exe ツールや、Adsiedit.msc ツールなどのツールを使用して機密属性を作成できます。 .ldf ファイルは、スキーマを拡張するために通常使用されます。 これらのファイルは、機密情報として属性にも使用できます。 正確に何を追加するスキーマを稼動環境にロールアウトするときがわかるように、テスト フェーズ中にファイルを作成した実装をチューニングする必要があります。 エラーを防止する.ldf ファイルに役立ちます。

次のサンプル.ldf ファイルは、次の操作を行う使用できます。
  • スキーマに属性を追加します。
  • 機密情報として、属性をマークします。
  • 属性をユーザー クラスに追加します
メモ .ldf ファイルを使用する前に確認オブジェクトと属性、スキーマを追加する方法についての重要なは、「オブジェクトの識別子"および」属性の構文"のセクションを読むことにしてください。

サンプルの.ldf ファイル

次のコードのスキーマに属性を追加し、機密情報として属性をマークします。
dn: CN=ConfidentialAttribute-LDF,CN=Schema,Cn=Configuration,DC=domain,DC=com
changetype: add
objectClass: attributeSchema
lDAPDisplayName: ConfidentialAttribute
adminDescription: This attribute stores user's confidential data
attributeID: 1.2.840.113556.1.xxxx.xxxx.1.x
attributeSyntax: 2.5.5.12
oMSyntax: 64
isSingleValued: TRUE
showInAdvancedViewOnly: TRUE
searchFlags: 128

dn:
changeType: modify
add: schemaupdatenow
schemaupdatenow: 1
-
次のコードは、ユーザー class. を新しい属性を追加
dn: CN=User,CN=Schema,CN=Configuration,DC=domain,DC=com
changetype: modify
add: mayContain
mayContain: ConfidentialAttribute

dn:
changeType: modify
add: schemaupdatenow
schemaupdatenow: 1
-

管理者以外のユーザーが属性データを表示できるようにする方法

メモ Windows Server 2003 R2 Active Directory アプリケーション モード (ADAM) に含まれている Ldp.exe ツールの使用を次の手順では、求められる場合します。 Ldp.exe ツールの他のバージョンのアクセス許可を設定できません。

ユーザー アカウントに Control_Access アクセス許可を手動で設定する方法

  1. Windows Server 2003 R2 ADAM に含まれている Ldp.exe ツールを開きます。
  2. 接続し、ディレクトリにバインドします。
  3. ユーザー アカウントを選択、アカウントを右クリックして、 [詳細設定] セキュリティ記述子 、[ OK] をクリック します。
  4. [ DACL ] ボックスに、 追加 ACE
  5. [ 受託 ] ボックスに、グループ名またはアクセス許可を付与するユーザー名を入力します。
  6. [ アクセスの制御 ボックスの手順 5 で加えた変更を確認します。

継承を使用して Control_Access アクセス許可を割り当てる方法

継承を使用するには、目的のユーザーまたはグループを機密属性を持つオブジェクトよりも上位のコンテナー階層にあるに Control_Access アクセス許可をアクセス制御エントリを作成します。 ドメイン レベルでまたは任意のポイントは、企業に適しているコンテナー階層内は、このアクセス制御エントリを設定することができます。 機密属性を持つ子オブジェクトは継承が有効になっているがあります。

Control_Access アクセス許可に割り当てるには、次の手順に従います。
  1. Windows Server 2003 R2 ADAM に含まれている Ldp.exe ファイルを開きます。
  2. 接続し、ディレクトリにバインドします。
  3. OU または、上位レベルのコンテナー階層にある OU またはコンテナー、機密属性を持つオブジェクトを右クリックしてよりも [詳細設定] セキュリティ記述子 、[ OK] をクリックして であるコンテナーを選択します。
  4. [ DACL ] ボックスに、 ACE の追加 を選択します。
  5. [ 受託 ] ボックスに、グループ名またはアクセス許可を付与するユーザー名を入力します。
  6. [ アクセスの制御 ボックスの手順 5 で加えた変更を確認します。
  7. [ オブジェクトの種類 ] ボックスに、機密属性を追加したをクリックします。
  8. ターゲット オブジェクト上で継承が有効になっていることを確認します。

既存の属性を使用すると、systemFlags 属性の値を調べる方法

既存のオブジェクトを使用している場合は、現在の searchFlags 属性値がどのようなことを確認する必要があります。 オブジェクトを追加する場合は、オブジェクトを追加すると、値を定義できます。 searchFlags 属性値を取得する方法を多くがあります。 最適の方法を使用します。

Ldp.exe ツールを使用して、 searchFlags 属性の値を取得する、次の手順を実行します。
  1. 開始 ] をクリックして 実行 ] をクリックして、 LDP と入力して [OK] をクリックします。
  2. バインド を [ 接続 ] をクリックします。
  3. エンタープライズ管理者であるアカウントとしてバインドまたは、ルート ドメインの管理者として連結します。
  4. [ 表示 ] メニューを [ ツリー ] をクリックします。
  5. をクリックして CN スキーマ、cn = = の構成、dc = rootdomain、[ OK] をクリック します。
  6. 左側のペインで展開 CN スキーマ、cn = = 構成、dc = rootdomain
  7. 機密、としてマークする属性のドメイン名前を見つけて、展開します。
  8. オブジェクトの作成は属性の一覧] で searchFlags オブジェクトの現在の searchFlags 属性値を調べますを見つけます。
メモ 新しい searchFlags 属性値を決定をするには次式を使用します。
128 + current searchFlags attribute value = new searchFlags attribute value

属性が、基本のスキーマ属性かどうか判断する方法

属性かどうかを判断は、基本のスキーマ属性を Ldp.exe ツールを使用して、 systemFlags 属性の値を確認をします。

LDP 出力の従業員 ID ? systemFlags: 0x10 = (FLAG_SCHEMA_BASE_OBJECT)

次のサンプル Ldp.exe の出力に Ldp.exe は 0x10 としてと基本のスキーマ属性として、 systemFlags 属性の値を示します。 したがって、この属性を機密としてマークすることはできません。
>> Dn: CN=Employee-ID,CN=Schema,CN=Configuration,DC=domain,DC=com
	2> objectClass: top; attributeSchema; 
	1> cn: Employee-ID; 
	1> distinguishedName: CN=Employee-ID,CN=Schema,CN=Configuration,DC=domain,DC=com; 
	1> instanceType: 0x4 = ( IT_WRITE ); 
	1> whenCreated: 08/05/2005 14:58:58 Central Standard Time; 
	1> whenChanged: 08/05/2005 14:58:58 Central Standard Time; 
	1> uSNCreated: 220; 
	1> attributeID: 1.2.840.113556.1.4.35; 
	1> attributeSyntax: 2.5.5.12 = ( SYNTAX_UNICODE_TYPE ); 
	1> isSingleValued: TRUE; 
	1> rangeLower: 0; 
	1> rangeUpper: 16; 
	1> uSNChanged: 220; 
	1> showInAdvancedViewOnly: TRUE; 
	1> adminDisplayName: Employee-ID; 
	1> adminDescription: Employee-ID; 
	1> oMSyntax: 64 = ( OM_S_UNICODE_STRING ); 
	1> searchFlags: 0x0 = (  ); 
	1> lDAPDisplayName: employeeID; 
	1> name: Employee-ID; 
	1> objectGUID: 64fb3ed1-338f-466e-a879-595bd3940ab7; 
	1> schemaIDGUID: bf967962-0de6-11d0-a285-00aa003049e2; 
	1> systemOnly: FALSE; 
	1> systemFlags: 0x10 = ( FLAG_SCHEMA_BASE_OBJECT ); 
	1> objectCategory: CN=Attribute-Schema,CN=Schema,CN=Configuration,DC=domain,DC=com;

LDP 出力の従業員番号 systemFlags: 0x0 = ()

次のサンプル Ldp.exe の出力で Ldp.exe は、 systemFlags 属性の値を 0 として識別します。 This attribute can be marked as confidential.
>> Dn: CN=Employee-Number,CN=Schema,CN=Configuration,DC=warrenw,DC=com
	2> objectClass: top; attributeSchema; 
	1> cn: Employee-Number; 
	1> distinguishedName: CN=Employee-Number,CN=Schema,CN=Configuration,DC=warrenw,DC=com; 
	1> instanceType: 0x4 = ( IT_WRITE ); 
	1> whenCreated: 08/05/2005 14:58:58 Central Standard Time; 
	1> whenChanged: 08/05/2005 14:58:58 Central Standard Time; 
	1> uSNCreated: 221; 
	1> attributeID: 1.2.840.113556.1.2.610; 
	1> attributeSyntax: 2.5.5.12 = ( SYNTAX_UNICODE_TYPE ); 
	1> isSingleValued: TRUE; 
	1> rangeLower: 1; 
	1> rangeUpper: 512; 
	1> mAPIID: 35943; 
	1> uSNChanged: 221; 
	1> showInAdvancedViewOnly: TRUE; 
	1> adminDisplayName: Employee-Number; 
	1> adminDescription: Employee-Number; 
	1> oMSyntax: 64 = ( OM_S_UNICODE_STRING ); 
	1> searchFlags: 0x0 = (  ); 
	1> lDAPDisplayName: employeeNumber; 
	1> name: Employee-Number; 
	1> objectGUID: 2446d04d-b8b6-46c7-abbf-4d8e7e1bb6ec; 
	1> schemaIDGUID: a8df73ef-c5ea-11d1-bbcb-0080c76670c0; 
	1> systemOnly: FALSE; 
	1> systemFlags: 0x0 = (  ); 
	1> objectCategory: CN=Attribute-Schema,CN=Schema,CN=Configuration,DC=warrenw,DC=com; 
-----------

オブジェクト識別子

スキーマに属性またはクラスのオブジェクトを追加するとと、の必要な属性は、オブジェクト識別子 (OID とも呼ばれます) です。 オブジェクト識別子はオブジェクト クラスと属性を一意に定義を使用します。 会社がその属性を識別するには、一意のオブジェクト識別子を取得するを確認します。 Oidgen.exe ツールなどのオブジェクト識別子を生成するツールはサポートされていません。 マイクロソフトからのオブジェクト識別子を取得するには、次の Web マイクロソフトを参照してください。
http://msdn2.microsoft.com/en-us/library/ms677620.aspx

属性構文

スキーマに新しいオブジェクトを追加するのには、 attributeSyntax 属性も必要です。 この属性は、ストレージ形式、バイト順、およびプロパティの型の比較の一致ルールを定義します。 構文は文字列、数値、または時間の単位に属性値する必要がありますでするかどうかを定義します。 すべてのオブジェクトのそれぞれの属性は 1 つの構文で関連付けられます。 新しい属性の正しい属性構文を選択するようにしてください。 これは別の LDAP でライトウェイト ディレクトリ アクセス プロトコル (LDAP) ディレクトリを同期する場合に特に重要ですディレクトリ。 属性は、スキーマに追加後は、属性構文を変更できません。

attributeSyntax 属性の詳細については、次のマイクロソフト Web サイトを参照してください。
hhttp://msdn.microsoft.com/en-us/library/ms675236(VS.85).aspx
searchFlags 属性の値の詳細については、「効果のインデックスの検索方法」を検索して、次のマイクロソフト Web サイトを参照してください。
http://technet2.microsoft.com/WindowsServer/en/library/8196d68e-776a-4bbc-99a6-d8c19f36ded41033.mspx?mfr=true

プロパティ

文書番号: 922836 - 最終更新日: 2007年10月11日 - リビジョン: 3.4
この資料は以下の製品について記述したものです。
  • Microsoft Windows Server 2003 Service Pack 1?を以下の環境でお使いの場合
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Standard x64 Edition
キーワード:?
kbhowto kbinfo kbmt KB922836 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:922836
Microsoft Knowledge Base の免責: 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