2010-09-30 83 views
1

是否可以使用python讀取擴展包#7(http://en.wikipedia.org/wiki/X.509#Certificate_filename_extensions)的個人數字證書? 我必須開發一個使用Django的應用程序,通過閱讀他們的證書對其用戶進行身份驗證。如何閱讀pcks#7個人數字證書與python?

在第一步中,我們將使用外部服務來完成此任務,但理解如何開發個人解決方案會很好。

有關該主題的任何信息是非常感謝,謝謝!

費德里科

+0

它看起來像OpenSSL的python包裝(http://packages.python.org/pyOpenSSL/)可以讀取pcks7。不過,我很困惑,爲什麼你需要閱讀pcks7文件,如果你打算編寫一個應用程序來驗證用戶的個人證書。 – MattH 2010-09-30 10:42:52

回答

2

您已經標記的問題與「Django的」,你已經在使用證書的用戶提到的日誌記錄。對不起,說你的問題的其餘部分對我來說沒有多大意義。

如果你的問題是「如何我使用SSL證書認證驗證用戶在我的Django的網站?」

那麼我的建議是使用Apache處理身份驗證:
http://httpd.apache.org/docs/2.0/ssl/ssl_howto.html#accesscontrol

並編寫自己的自定義身份驗證後端以將其與Django聯繫起來。
http://docs.djangoproject.com/en/dev/topics/auth/#authentication-backends

沒有自己嘗試過,我認爲有可能讓mod_ssl在請求環境中放置一些有用的東西。

+0

對不起,我忘了提到Django,是的,我正在使用Django和Python。我們需要使用個人數字證書來驗證用戶身份,我們必須處理許多類型的證書,但最重要的證書是pkcs7和pkcs12(en.wikipedia.org/wiki/X.509)。對不起,更具體的是,我不太瞭解這個主題,這就是爲什麼我來這裏希望有人會給我一些建議,尋找更多的信息。現在我將編輯這個問題,讓它更清晰。謝謝 – nemesisdesign 2010-10-02 16:34:07

+0

就我所知,爲客戶打包證書的方式與您的Web服務完全無關。同樣,據我所知,pkcs7是pkcs12只是將證書打包分發給用戶的方式,而不是您的web應用程序特別關注的方式。看看我在答案中鏈接的apache ssl文檔。 – MattH 2010-10-02 16:48:54

+0

好的謝謝你的幫助 – nemesisdesign 2010-10-02 17:07:44