IIS가 페이지를 보는 사람의 Active Directory 사용자 이름을 가져 오도록합니다. 이것이 가능한가? ASP.NET 인증을 통해이 작업을 수행 할 수 있다고 생각했지만 시도해 보았을 때 '401 Unauthorized : 잘못된 자격 증명으로 인해 액세스가 거부되었습니다'라는 오류 메시지가 나타납니다. 기본적으로 웹 페이지가 현재 사용자 이름을 가져 와서 비교를 수행하여이 사람이 특정 보안 그룹의 구성원인지 확인한 다음 특정 보안 그룹의 구성원인지 확인한 다음 내용을 표시합니다. VS2010 inbuilt 테스트 서버를 사용하여 로컬 PC에서 잘 작동하는 모든 것이 있지만 내 광고 세부 정보를 가져오고 있습니다. 이제 모든 작업이 완료되었으므로 IIS7을 실행하는 테스트 서버로 이동하여이 작업을 수행하려고합니다.ASP.NET에서 현재 사용자 이름 빼기
는 다음과 내가 (이 내 로컬 컴퓨터에서 일했다) 뒤에 내 Default.aspx를 코드에있는 유일한 코드는 같이
내가 여기 것과string[] arr = System.Web.HttpContext.Current.Request.LogonUserIdentity.Name.Split('\\');
if (arr.Length > 0)
{
lblDomain.Text = arr[0].ToString();
lblUser.Text = arr[1].ToString();
}
(http://stackoverflow.com/questions/10584545/activedirectory-current-username-in-asp-net) 내가 원한 것처럼 보이지만 내 코드 숨김과 관련이 있는지 궁금해. 나는 또한 나의 Web.Config에서 특별한 것을 필요로하는지 확신 할 수 없다. 나는 거기에 다음과 같은 것을 가지고 있었지만 500 오류가 발생했습니다.
<authentication mode="Windows"/>
<identity impersonate="true"/>
위의 스택 오버플로 질문에 대한 대답을 시도했지만 여전히 500 오류가 발생합니다. 어떤 힌트도 크게 감사 할 것입니다.
다음과 같이 시도했지만 여전히 500 오류가 발생합니다. 그것이 잘못 될지 확실하지 않습니다.
string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
그리고는 :
string userName = Environment.UserName;
그랬습니다. 신뢰할 수있는 사이트로 인해 사용자 이름과 비밀번호를 묻는 메시지가 표시되지만 도메인 사용자에게는 표시되지 않습니다. – Trido