2016-09-16 17 views
-1

アクティブディレクトリのユーザー状態にプログラムでアクセスするにはどうすればよいですか?特に アクティブ/アウェイ/ロックアウトなどの状態です。これは、ログインしているすべてのユーザーと個々の状態を表示するためのWebスナップショットを構築するためのものです。ユーザー状態にログインしました

これまでのところ、特定のドメインのすべてのユーザーを検索できましたが、現在の状態を見つけることはできませんでした。

using (var context = new PrincipalContext(ContextType.Domain, "domain")) 
{ 
    using (var searcher = new PrincipalSearcher(new UserPrincipal(context))) 
    { 
     foreach (var result in searcher.FindAll()) 
     { 
      DirectoryEntry de = result.GetUnderlyingObject() as DirectoryEntry; 
      Console.WriteLine("First Name: " + de.Properties["givenName"].Value); 
      Console.WriteLine("Last Name : " + de.Properties["sn"].Value); 
      Console.WriteLine("User principal name: " + de.Properties["userPrincipalName"].Value); 

     } 
    } 
} 
+0

私はグーグルで、広告に関する適切なリンクをhttp://www.codeproject.com/Articles/18102/Howto-Almost-Everything-In-Active-Directory-via-Cに見つけました。ただし、これはユーザーの状態については説明しません。 – Nair

+0

@ rory.ap、私はそれまでこれまでに行ってきたことを含めました。あなたの考えを共有したいですか? – Nair

答えて

1

「離れて」は、Active Directoryから抜け出すものではありません。

あなたしたい情報の一部を取得するには、以下のプロパティを見ることができます: userAccountControlは、あなたが見てみたい主なプロパティです。

LDAPクエリに(userAccountControl:AND:=2)を使用すると、無効なユーザーが見つかります。

他のいくつかの有用な特性は以下のとおりです。

  • lastLogon
  • lockoutTimeの(lockoutTimeの> 0)、彼らがロックアウトされていることを意味し( "アクティブ" のために、あなたはあなたにアクティブどんな手段を決定する必要があります)。あなたは、各ワークステーション上およびドメインコントローラ上のセキュリティログからログオン\ログオフユーザーイベントを収集することができます有効期限が切れたユーザー
+0

ありがとうございます。 「Away」が利用できない場合は、Activeで満足しています。アクティブとは、ユーザーが現在のドメイン/ネットワーク内の任意のノードにログインしているかどうかを意味します。 – Nair

+0

ああ、その場合、あなたはADから「ログイン状態」になっていません。容易ではない。私は "Active"を意味し、ユーザーは無効ではない、またはADにロックされています。 – hometoast

1

ため

  • accountExpires。この情報を分析することにより、現在アクティブなユーザーを特定することができます。残念なことに、このソリューションは、数千のワークステーションや数百ものDCを持つエンタープライズ環境では動作しません。また、何らかの理由でログオンログオフイベントがセキュリティログにないことがあります。 lastLogon属性は、ドメインコントローラ間で複製されません

    • :lastLogon \のlastLogonTimestampは注意して属性を使用する場合には

      こと。これは、情報を収集しているドメインコントローラの最後のログオンユーザーの時間です。最後のユーザーログオンを決定するには、すべてのDCから属性を収集し、最大値を選択する必要があります。

    • lastLogonTimestampは9-14日で1回複製します。 lastLogontimeStampは現在の日付の9-14日後になります。
  • +0

    ありがとうございます。私たちは1つのDCで200のVMを見ているだけです。私は動作していないので、それ以上コメントすることはできません。しかし、私たちは小規模なものを見ています。 – Nair

    関連する問題