2009-10-06 6 views
2

ASP.NET 응용 프로그램의 경우 Windows 통합 인증을 사용할 때 사용자 이름/암호를 묻는 메시지를 어떻게 표시합니까? 이 일을하기 위해 페이지의 코드 뒤에 C#을 사용하고 싶습니다.Windows 통합 인증을 사용할 때 로그인 세부 정보 확인

일부 페이지 (예 : http://intranet/admin/)가 비밀번호를 묻는 메시지를 표시하고 다른 페이지는 자동으로 (IWA/NTLM을 통해) 표시되도록합니다. 그런 다음 사용자가 폴더/사이트의 다른 페이지를 방문하고 작업이 완료되면 로그 아웃 링크를 제공함에 따라 사용자가 로그인했음을 기억해야합니다.

편집 : 내가하고 싶은 일은 401 상태 및 WWW 인증 헤더를 사용자에게 보내어 Windows 자격 증명을 사용하여 로그인하는 것입니다.

기본적으로 사이트가 신뢰할 수없는 경우 Firefox/IE에서 어떻게 처리합니까?

편집 2 : SharePoint는 자동으로 로그인하는 이런 종류의 작업을 수행하지만 Windows에서 로그 아웃하지 않고 로그 아웃하고 다른 사람으로 로그인 할 수 있습니다.

편집 3 : 계획 (SharePoint 제외)

예 : 당신은 당신의 자격 증명을 전달하는 신뢰할 수있는 사이트에 표준 (제한된 액세스) 윈도우/Active Directory 사용자로 로그인합니다. 그런 다음 다른 자격 증명 (하지만 WebForms가 아닌 Windows)의 관리 부분에 로그인하려고합니다. 다른 방법은 Windows에서 로그 오프 한 다음 다시 로그인하는 것입니다. 파일을 열었거나 (액세스하려는 경우) 또는 관리자가 로컬로 로그인 할 수없는 경우 (대화식 로그인 권한이 비활성화 됨) 실용적이지 않습니다. 페이지에서 일반 사용자 계정 (예 : 데이터베이스, 파일, Active Directory 관리자)에 액세스 할 수 없으므로 가장이 설정 될 수 있습니다.

기본적으로 사이트 내의 페이지를 만드는 것이 신뢰할 수있는 사이트 영역에 속하지 않는 것처럼 동작합니다.

답변

-1

별도의 코드가 없습니다. 사용자/클라이언트가 특정 머리의 예를 열고

., http://intranet/admin/index.aspx

당신은 윈도우 인증을 사용하여 특정 폴더를 구성하는 경우, 브라우저가

자동으로 특정 사용자의 사용자 이름과 암호를 요청합니다/고객.

은 그래서 이것은 당신이 특정 폴더

당신이 Windows 통합 인증을 적용하고자하는로에 IIS에서 수행해야하는 구성입니다.

+0

가 신뢰할 수있는 사이트가 있다면 그것은 어떤 경우에는 내가 원하는 ... 자격 증명을 요구하지 않습니다 신뢰할 수있는 사이트 인 경우에도 마찬가지입니다. – SamWM

+0

그것은 특정 사용자를위한 신뢰할 수있는 사이트 인 경우 바퀴를 재발 명합니다. 희망을 얻으십시오. 추가해야 할 인증은 이미 Windows에서 처리되었습니다.당신이 로그 아웃 및 Windows에서 로그 아웃하지 않고 다른 사용자로 로그인 할 수있는 - 내가 말했듯이 – solairaja

+0

, 나는 SharePoint에서 무엇을 에뮬레이트합니다. 내가 아는 한 Windows 인증을 사용합니다. – SamWM

1

가장 (Impersonation)을 사용해야하는 것 같습니다. 이렇게하면 다른 Windows 사용자로 "실행"할 수 있습니다. 여기를 참조하십시오 : 여기

ASP.NET Impersonation가 몇 CodeProject의 예입니다 :

Windows Impersonation using C#

User Impersonation in .NET

+0

어떻게 든 다이제스트 인증을 일반 텍스트 자격 증명을 통과하지 않고 그것을 할 좋아하지만 사용합니다 .. http://dotnetslackers.com/articles/aspnet/Windows-Authentication-using-Form-Authentication.aspx입니다 거기 web.config를 사용하는 대신 asp.net 가장을 설정하는 방법은 무엇입니까? – SamWM

+0

".NET에서 사용자 가장"에 대한 링크는 코드에서 모든 것을 수행하는 샘플 프로젝트로 이동합니다. http://www.codeproject.com/KB/dotnet/UserImpersonationInNET.aspx – Jim

+0

은이 링크를 보면나요? 또한, 당신은 이것을 알아 낸 적이 있습니까? – Jim

관련 문제