2010-09-19 24 views
1

計劃用Python編寫的Web應用程序,Django是一個領先的競爭者框架。Django和通用訪問卡(CAC)

一個需求是CAC訪問,而不需要手動輸入用戶名和密碼。據我所知,CAC訪問不是Django中包含的「電池」的一部分。

作爲一個整體框架(不一定是一個壞的屬性)Django有一個代表一旦你修改核心高維護代表。我可以輕鬆將CAC訪問權限添加到Django站點嗎?之後可以輕鬆維護嗎?

或者我們應該考慮一個不同的Python框架?

FYI ..上CAC訪問link

+0

你碰巧得到這個工作?我正在尋找解決方案。 – 2012-05-15 13:14:47

回答

1

您不需要修改內核來啓用此功能。 Django支持第三方身份驗證後端,並且它們相當容易編寫 - 您只需要支持get_userauthenticate兩種方法。所以你的實現只需要使用CAC接口來執行這些操作,並且所有操作都可以像往常一樣工作。

有關詳細信息,請參閱the documentation

編輯後其他答案我不知道爲什麼人們說這是在Django困難。是的,Django的許多部分很難定製。但是這是一個特別的部分,使得很容易。我在Django中編寫了幾個認證後端,它們不僅非常簡單,而且與框架的其他部分(包括管理員)「一起工作」。沒有任何需要修改其他任何東西來使其發揮作用。

+0

謝謝丹。我會給它一個機會,並希望這個「和所有人都能像往常一樣工作。」 – Paulb 2010-09-21 07:42:43

0

擴展contrib.auth有趣的演示是在頸部疼痛。這是django中最糟糕的一件事。如果您需要高度自定義的身份驗證後端,我會建議使用不同的框架。

0

我剛剛做了這個今天通過繼承django.contrib.auth.middleware.RemoteUserMiddleware並將頭部屬性更改爲我在我的apache conf中設置的那個。我只是將django.contrib.auth.backends.RemoteUserBackend和我的中間件添加到設置中,並且完美地工作。

相關問題