2017-01-03 6 views
1

のActive Directoryドメインがあるを想定: "chiled.root.f1dm.com"のC# - Windows認証 - のHttpContextユーザーの完全なドメイン名から取得する方法(FQDN)

NetBIOS名:「CHILED1F1は私はHttpContexから到達するための方法を探しています

if (HttpContext.Current == null || HttpContext.Current.User == null || 
      !HttpContext.Current.User.Identity.IsAuthenticated) 
     { 
      throw new MyException(WRONG_USERNAME_OR_PASSWORD_ERROR_CODE, WRONG_USERNAME_OR_PASSWORD_ERROR_MESSAGE); 
     } 

:このコードを考えると

tユーザーの完全修飾ドメイン名(FQDN)。 (:CHILED1F1 \ユーザー名など)が、私は必要なこの:現在、私は、NetBIOS形式でコンテキストからユーザーのドメインを取得していますchiled.root.f1dm.com \

user_nameは私がそれを行う方法?私はWindowsの現在のユーザーだけのためにそれが必要です(だからマシンのドメイン名は私を助けません)。 ありがとう!

+1

HTTPコンテキストは、本質的にActive Directoryに接続されていません。私はあなたがHTTPコンテキストから探しているものを得る方法があるとは思わない。唯一可能な方法は、現在のユーザーに実際にどのタイプが入力されているかを調べることです。ユーザーの実際の実装が、探しているデータを拡張する場合、可能性があります。 – Theo

答えて

0

あなたのユーザーが彼の使用しているADにログインしている場合、ServerVariablesで彼の名前を取得しようとすることができます。例:

string username = Request.ServerVariables["AUTH_USER"].ToString(); 
+0

ありがとう!残念ながら、ユーザーはnetbiosName \ user_name形式になっています。 – Roni

関連する問題