Django 1.5 앱에서 사용자의 허가를 받았습니다. 내가Django : user.has_perm은 항상 true이고 사용자는 수퍼 유저가 아닙니다. 왜?
In [1]: user.get_all_permissions()
Out[1]: set([u'profile.change_profile'])
모든 사용자 권한을 나열 할 때 나는 (정확하고 싶어) 하나의 권한을 볼 수 있습니다. 사용자는 관리자가 아닌 수퍼 유저이기도합니다. 내가 user.has_perm
를 사용하려고하면
In [2]: user.is_superuser
Out[2]: False
그러나, 나는 항상 제출 된 권한 요청에 대한 반환으로 True
를 얻을.
In [3]: user.has_perm('random_permission')
Out[3]: True
사용자가 수퍼 유저/관리자 인 경우 내가 기대하는 행동. 모든 요청에 대해 수퍼 유저가 아닌 사용자가 항상 True
이되는 이유는 무엇입니까? 어떤 설정을 놓쳤습니까? 왕의 근위병 브림 홀에 의해 코멘트에서 언급
사용자 정의 모델 또는 인증 백엔드를 사용하고 있습니까? 어쩌면 여기에있는 문서를 읽어 보시기 바랍니다 : https://docs.djangoproject.com/en/dev/topics/auth/customizing/#handling-authorization-in-custom-backends –