브라우저에서 인증서를 요구하지 않음 - IIS 10.0

브라우저에서 인증서를 요구하지 않음 - IIS 10.0

경로에 대한 클라이언트 인증서 로그인(스마트 카드)을 위해 web.config 파일에서 이 설정을 사용하는 IIS 8.5에서 제대로 작동하는 응용 프로그램이 있습니다. 이 응용 프로그램을 IIS 10.0으로 마이그레이션해야 했고 응용 프로그램이 인증서를 묻는 메시지를 표시하지 않고 단순히 인증서가 없다는 코드에 오류가 발생하는 것을 제외하고는 모든 것이 작동합니다.

IIS의 모든 설정을 두 번 확인하고 세 번 확인했는데 인증서도 동일하고 SSL 설정도 동일합니다. 이 애플리케이션은 간단한 .netcore 애플리케이션이며 인증서 프롬프트를 제외하고 완벽하게 작동합니다. IIS 10에는 8.5와 다른 점이 있는데 제가 놓쳤을 수도 있습니다. 브라우저가 인증서를 묻는 메시지를 표시할 수 있도록 하는 web.config 부분이 바로 이 부분입니다. 이 작업을 수행한 개발자는 더 이상 우리와 함께 있지 않으며 이에 대한 도움을 주시면 감사하겠습니다. 이미 확인한 사항 외에 IIS에서 확인해야 할 사항이 있습니까?

다른 게시물을 살펴보고 루트 및 중개 인증서가 인증서 저장소 등에 있는지 확인했습니다. 앱 자체는 SSL 인증서로 제대로 로드됩니다.

<location path="SmartCard">
<system.webServer>
  <security>
    <access sslFlags="Ssl,SslNegotiateCert" />
  </security>
</system.webServer>

답변1

모두것들동일한, 그것~해야 한다똑같이 일해!

web.config하지만 이것이 핵심 부분입니다. 아마도 모든 것이 ? 수준 이상으로 동일하지는 않을 것입니다. (또는 그 이하 - 해당 web.config는 동일한 HTTP URL 경로의 일부인 SmartCard 폴더에만 적용됩니다.위치꼬리표)

Windows\System32\InetSrv\config\ApplicationHost.config발생하는 경향이 있다것들시간이 지나면서 사람들은 서버 수준 구성을 잊어버리게 됩니다.

따라서 가능한 옵션은 다음과 같습니다.

  • 서버 인증서가 있는지 확인하세요.개인 키로설치되어 있고 사이트 바인딩에 HTTPS가 포함되어 있는지 확인

    • SSL을 통해 사이트를 사용한다고 언급하신 것으로 알고 있습니다.
  • 작동 중인 서버에서 사이트에 대한 유효 설정을 덤프하고 작동하지 않는 서버에 대해 덤프된 설정과 비교합니다.

    • 보너스 포인트를 얻으려면 웹 배포 도구와 같은 것이 도움이 될 수 있습니다.
    • 수동 방법:
      • APPCMD LIST CONFIG http://site/pathabovesmartcard/ /text:* >working.txt(작업 중인 서버에서)
      • APPCMD LIST CONFIG http://site/pathabovesmartcard/ /text:* >NONworking.txt(... 짐작하셨겠지만, 작동하지 않는 서버입니다!)
      • 그런 다음비교하다텍스트 편집기나 현명한 눈으로
      • XML을 선호하는 경우 /text:*를 생략하세요.
  • NETSH SHOW SERVICESTATEHTTP.SYS 대기열을 빠르게 검토하려면 각각의 비교 에 추가하세요.

applicationhost.config이는 실제로 삭제된 버전입니다. 에서 사이트별로 필터링되지 않은(처음에는 합리적으로 구성되고 후속 변경 사항에 따라 선형적으로 구성됨) 의 전체 내용을 볼 수도 있습니다 Windows\System32\InetSrv\Config.~할 것 같다더 쉬워지세요(또는 훨씬 더 어려워지세요).

관련 정보