Django의 현재 연결에서 클라이언트의 SSL 인증서를 검색 할 수 있습니까? lighttpd에서 전달 된 요청 컨텍스트에 인증서가 표시되지 않습니다. 내 설정에는 fastcgi 모드에서 작동하는 lighttpd 및 django가 있습니다. 현재 인증서를 확인하기 위해 클라이언트의 IP에 수동으로 다시 연결해야합니다.이를 방지 할 수있는 영리한 기술이 있습니까? 감사!
업데이트 : lighttpd.conf에 다음 줄을 추가했습니다.
ssl.verifyclient.exportcert = "enable"
setenv.add-request-header = (
"SSL_CLIENT_CERT" => env.SSL_CLIENT_CERT
)
불행히도 env.SSL_CLIENT_CERT는 역 참조에 실패하고 (존재하지 않습니까?) lighttpd가 시작되지 않습니다. "env.SSL_CLIENT_CERT"를 "1"과 같은 정적 값으로 바꾸면 request.META 필드의 django에 성공적으로 전달됩니다. 다른 건 없나요? 이것은 lighttpd 1.4.29입니다.
예. 이 질문은 장고와 관련이 없습니다.
일반적으로 웹 서버에는 SSL 클라이언트 측 인증서 데이터를 환경 변수 또는 HTTP 헤더로 내보내는 옵션이 있습니다. 나는 Apache (Lighttpd가 아님)로 직접 이것을했습니다.
이것이 내가 한 방법입니다
Apache에서 SSL 인증서 데이터를 환경 변수로 내 보냅니다.
그런 다음 이러한 환경 변수를 포함하는 새 HTTP 요청 헤더를 추가하십시오.
Python 코드에서 헤더 읽기
http://redmine.lighttpd.net/projects/1/wiki/Docs_SSL
옵션 이름이 인 것 같습니다 ssl.verifyclient.exportcert
.
lighttpd로 2 단계를 수행하는 방법을 잘 모르겠지만 경험이 거의 없습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다