2009-01-04 190 views
19

我正在使用公司環境中基於Django的應用程序,並希望使用現有Active Directory系統進行用戶身份驗證(因此他們不會再獲得另一個登錄名/密碼組合)。我還想繼續使用Django的用戶授權/許可系統來管理用戶功能。使用AD作爲Django身份驗證

有沒有人有這樣的一個很好的例子?

回答

7

由Jeff提供的鏈接確實是工作,雖然它假定你有你有其中增加用戶的默認組至。我簡單地更換:

group=Group.objects.get(pk=1) 

通過

group,created=Group.objects.get_or_create(name="everyone") 

如果你想更緊密的集成&更多的功能也有django-auth-ldap它爲您提供瞭如何LDAP用戶/組映射到Django的用戶/組的更多控制。

爲了調試LDAP連接,我發現this blog post有用的,特別是命令測試與LDAP-utils的LDAP連接:如果您使用的是SSL

ldapsearch -H ldaps://ldap-x.companygroup.local:636 -D "CN=Something LDAP,OU=Random Group,DC=companygroup,DC=local" -w "p4ssw0rd" -v -d 1 

還有一個讓持有的問題證書會很好玩。您可以從服務器提取它,也可以按照these instructions生成自己的。