1

この例 に従って、 DjangoLDAP認証を設定しました。そして、バックエンドは実際に機能しているようです。つまり、私は次のことを確認しました。

  • LDAPアクセスはpython-ldapを介して完全に機能します
  • デバッグは、ユーザーが実際に認証できることを示しています
  • UserオブジェクトとUserProfileオブジェクトが作成されます(問題なくDBに保存されます)

ただし、ログオンに成功した後の結果のページがレンダリングされると、PicklingError: Can't pickle <type 'module'>: attribute lookup __builtin__.module failed

model認証バックエンドを使用する場合、そのような問題はありません。また、失敗した呼び出しの変数はすべて問題ないように見えます。バックトレースは次のとおりです。

Traceback:
File "<anonymized>/lib/Django-1.4.1-py2.6.egg/django/core/handlers/base.py" in get_response
  188.                 response = middleware_method(request, response)
File "<anonymized>/lib/Django-1.4.1-py2.6.egg/django/contrib/sessions/middleware.py" in process_response
  36.                 request.session.save()
File "<anonymized>/lib/Django-1.4.1-py2.6.egg/django/contrib/sessions/backends/db.py" in save
  52.             session_data=self.encode(self._get_session(no_load=must_create)),
File "<anonymized>/lib/Django-1.4.1-py2.6.egg/django/contrib/sessions/backends/base.py" in encode
  79.         pickled = pickle.dumps(session_dict, pickle.HIGHEST_PROTOCOL)

Exception Type: PicklingError at /
Exception Value: Can't pickle <type 'module'>: attribute lookup __builtin__.module failed

modelセッションディクテーションは、アイテムを除いて、バックエンドのユーザーの場合と非常によく似ています。'_auth_user_backend': 'django_auth_ldap.backend.LDAPBackend',

4

0 に答える 0