2009-03-16 3 views
10

회사 용 ASP.net 웹 응용 프로그램을 개발 중입니다. 일부 사용자는 내부 네트워크 (인트라넷)에서이 사이트를 사용하고 일부 사용자는 인터넷 사이트를 사용합니다. Windows 인증 모드를 사용하고 있습니다.인트라넷/인터넷 용 Windows 인증

나는 인트라넷 사용자에 대한 Windows 인증 모드 및 인터넷 사용자에 대한 프롬프트 Windows 인증 모드를 표시하지 할 수있는 방법을 찾아야합니다.

어떻게하면됩니까?

답변

0

내가 아는 한 Windows 인증은 인트라넷에만 사용할 수 있지만 양식 인증을 사용하여 인터넷 사용자를 인증 할 수도 있습니다. This page에는 몇 가지 정보와이를 수행하는 방법에 대한 자습서 링크가 있습니다.

0

아마도 두 개의 다른 서버에 응용 프로그램을 배포 할 것입니다. Windows 인증 된 사용자가 액세스 할 수 있고 사용할 수있는 방화벽 내부의 서버에서 Windows 인증. 공개적으로 웹 구성에서 양식 인증을 사용하도록 설정 한 다음 백엔드에 대한 연결 보안에 대해 걱정할 필요가 있습니다. 이에 대해 하나의 서버를 사용하려는 경우

하지만,이 MSDN 문서를 읽어보십시오 : Mixing Forms and Windows Security in ASP.NET

18

당신이 설명하는 것을 바탕으로, IIS에서 Windows 인증이 트릭을 할 것입니다.

우선 몇 가지 링크 다음 Windows Authentication in IIS here

  • MSDN에 관한 기사로

    을 알려줍니다

    싱글 사인온 (SSO) (즉, 사용자 이름과 암호를 제공하지 않고 응용 프로그램에 액세스하는 경우) 다음이 모두 해당되면 발생합니다.

    • 클라이언트 컴퓨터와 서버는 동일한 Active Directory 도메인의 일부입니다.
    • 클라이언트 컴퓨터의 사용자 세션은 AD 도메인의 사용자입니다.
    • 클라이언트 컴퓨터가 도메인 서버 (즉, 사용자 로그인을 담당하는 서버)에 액세스 할 수 있습니다.
    • 브라우저는 Internet Explorer입니다.
    • 이 URL은 서버의 FQDN (예 : 응용 프로그램 디렉토리에 http://SERVERNAME.DOMAIN.NAME/ 단지 http://SERVERNAME/
    • 인가 된 사용자가 읽기 권한이 있어야하지 액세스 권한을 가장 사용하는 경우가. 응용 프로그램은 기본적으로 자신의 자격 증명으로 실행됩니다에 포인트를 사용했다. (MSDN article에서 자세한 내용)는 Active Directory 도메인 내에서 계정의 사용자가 자격 증명을 입력하라는 메시지가 표시됩니다 다른 상황 (사용자 이름 및 암호)에서

    . 인터넷에서 웹 서버를 액세스하는 사용자가 요청하는 팝업을 얻을 것입니다 그래서 그들에게 사용자 이름과 암호를 제공하십시오.

    싱글 사인온을 사용하지 않는 사용자 (사용자 이름과 암호를 입력하라는 메시지가 표시됨)는 HTTP 인증 모드가 BASIC 일 가능성이 높습니다. 즉, 해당 연결을 가로 챌 수있는 사람은 모두 사용자 이름과 암호를 볼 수 있습니다. 교환했다. 이 기술을 사용하면 클라이언트와 서버 간의 연결이 암호화됩니다 (HTTPS 또는 VPN 일 수 있음).

  • +1

    다음 링크에서는 Windows 통합 인증이 BASIC을 IE와 함께 사용하지 않고 NTLM으로 다시 넘어갑니다. http://www.aniltj.com/blog/CommentView,guid,d6bb26b9-8371-40f1- a3 57-ab9023df86ad.aspx NTLM은 HTTP에서 안전한가요? IE 이외의 브라우저에서도 마찬가지입니까? – Spongeboy

    +1

    NTLM은 모든 주요 브라우저에서 지원됩니다. NTLM을 사용하는 경우에도 인증 된 콘텐츠에 대해 HTTPS를 사용하도록 권장합니다. – bkr

    2

    웹 서버가 도메인에서 실행되고 있고 모든 인트라넷 사용자가 웹 서버에있는 웹 사이트가있는 폴더에 대한 읽기 권한이 있는지 확인하십시오. 그런 다음

    ,. 당신이 도메인을 사용하는 사이트에 액세스하고 감지 할 당신이 당신의 Web.config에 있는지 (가정 마지막으로

    을 만드는 IIS 관리자를 열고 웹 사이트를 마우스 오른쪽 단추로 클릭하고 "속성"을 선택 "디렉토리 보안"탭을 클릭하고 인증 및 액세스 제어에서 "편집"을 클릭 한 다음 "익명 액세스"의 선택을 취소하고 "통합 Windows 인증"이 선택되어 있는지 확인하십시오 웹 사이트가 예상대로 작동해야합니다 (인트라넷 클라이언트