私は企業環境でDjangoベースのアプリケーションに取り組んでおり、ユーザーの認証に既存のActive Directoryシステムを使用したいと考えています(そのため、ユーザーはさらに別のログイン/パスワードの組み合わせを取得しません)。また、Djangoのユーザー認証/許可システムを引き続き使用してユーザー機能を管理したいと思います。
誰かがこれの良い例を持っていますか?
もう1つの最近のスニペット(2008年7月、2015年12月更新)は次のとおりです。
Jeffによって提供されたリンクは、ユーザーが追加されるデフォルトのグループがあることを前提としていますが、実際に機能します。私は単に交換しました:
group=Group.objects.get(pk=1)
沿って
group,created=Group.objects.get_or_create(name="everyone")
より緊密な統合とより多くの機能が必要な場合は、 Django-auth-ldap もあります。これにより、LDAPユーザー/グループをDjango users /にマップする方法をより細かく制御できます。グループ。
私が見つけたLDAP接続をデバッグするために このブログ投稿 有用、特にldap-utilsを使用してLDAP接続をテストするためのコマンド:
ldapsearch -H ldaps://ldap-x.companygroup.local:636 -D "CN=Something LDAP,OU=Random Group,DC=companygroup,DC=local" -w "p4ssw0rd" -v -d 1
Sslを使用している場合は、証明書を取得するという問題もあります。サーバーから抽出するか、 これらの手順 に従って独自の手順を生成することができます。
どのようにそのことについて?やってみましたか?
同じ問題が発生し、TSLが利用できない場合、Django-auth-ldapがSASLをまったくサポートしていないことに気付きました->接続を介したプレーンテキストのパスワード。
これが私が問題に対してしたことです: https://github.com/susundberg/Django-auth-ldap-ad
Django-auth-ldap
バックエンドをサブクラス化して、SASLやKerberosなどでAD機能を追加できます。これがDjango 2.1で動作する2018年の例です: