[WarpAuth] Fehlermeldung bei Passwortänderung
Wenn man versucht sein Passwort zu Ändern gibt es noch eine Fehlermeldung
AttributeError at /profile/change_password/
'LDAPConnector' object has no attribute 'change_password'
Request Method: POST Request URL: https://infra.warpzone.ms/profile/change_password/ Django Version: 1.9 Exception Type: AttributeError Exception Value:
'LDAPConnector' object has no attribute 'change_password'
Exception Location: ./warpauth/views/profile.py in change_password, line 74 Python Executable: /usr/local/bin/uwsgi Python Version: 3.4.2 Python Path:
['.', '', '/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu', '/usr/lib/python3.4/lib-dynload', '/usr/local/lib/python3.4/dist-packages', '/usr/lib/python3/dist-packages']
Server time: Mi, 14 Sep 2016 10:49:06 +0200 Traceback Switch to copy-and-paste view
/usr/local/lib/python3.4/dist-packages/django/core/handlers/base.py in get_response
response = self.process_exception_by_middleware(e, request)
...
▶ Local vars
/usr/local/lib/python3.4/dist-packages/django/core/handlers/base.py in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
...
▶ Local vars
/usr/local/lib/python3.4/dist-packages/django/contrib/auth/decorators.py in _wrapped_view
return view_func(request, *args, **kwargs)
...
▶ Local vars
./warpauth/views/profile.py in change_password
ret = ldap_connector.change_password(request.user.ldap_user.dn, request.POST["old_pw"], request.POST["new_pw"])
...
▶ Local vars
Request information GET
No GET data POST Variable Value new_pw
'test2'
csrfmiddlewaretoken
'7JhClFBtzVoa87nYladmd9mTy5VCT3wY'
new_pw_confirm
'test2'
old_pw
'test'
FILES
No FILES data COOKIES Variable Value csrftoken
'7JhClFBtzVoa87nYladmd9mTy5VCT3wY'
sessionid
'dfirfxbyhfri7fdyni6zan8p17fon29f'
META Variable Value HTTP_UPGRADE_INSECURE_REQUESTS
'1'
REQUEST_METHOD
'POST'
REMOTE_ADDR
'185.63.125.17'
wsgi.errors
<_io.TextIOWrapper name=2 mode='w' encoding='ANSI_X3.4-1968'>
QUERY_STRING
''
CONTENT_LENGTH
'98'
CONTENT_TYPE
'application/x-www-form-urlencoded'
SERVER_PROTOCOL
'HTTP/1.1'
REMOTE_PORT
'1921'
HTTP_ACCEPT
'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8'
wsgi.multithread
False
uwsgi.node
b'dc52ce9d0972'
HTTP_USER_AGENT
'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0'
wsgi.input
<uwsgi._Input object at 0x7f0391dc16a8>
HTTP_CONTENT_TYPE
'application/x-www-form-urlencoded'
SCRIPT_NAME
''
wsgi.run_once
False
wsgi.file_wrapper
''
HTTP_ACCEPT_LANGUAGE
'de,en-US;q=0.7,en;q=0.3'
PATH_INFO
'/profile/change_password/'
HTTP_CONTENT_LENGTH
'98'
HTTP_REFERER
'https://infra.warpzone.ms/profile/'
SERVER_PORT
'443'
HTTP_ACCEPT_ENCODING
'gzip, deflate, br'
wsgi.url_scheme
'https'
uwsgi.version
b'2.0.13.1'
DOCUMENT_ROOT
'/dev/null'
HTTPS
'on'
CSRF_COOKIE
'7JhClFBtzVoa87nYladmd9mTy5VCT3wY'
wsgi.version
(1, 0)
SERVER_NAME
'infra.warpzone.ms'
REQUEST_URI
'/profile/change_password/'
wsgi.multiprocess
True
HTTP_HOST
'infra.warpzone.ms'
HTTP_COOKIE
'csrftoken=7JhClFBtzVoa87nYladmd9mTy5VCT3wY; ' 'sessionid=dfirfxbyhfri7fdyni6zan8p17fon29f'
Settings Using settings module warpzone.settings Setting Value FORCE_SCRIPT_NAME
None
SESSION_COOKIE_NAME
'sessionid'
LOGIN_URL
'/accounts/login/'
LDAP_BIND_DN
'cn=admin,dc=warpzone,dc=ms'
USE_TZ
False
TEMPLATE_DIRS
[]
DEFAULT_INDEX_TABLESPACE
''
MIGRATION_MODULES
{}
LOGOUT_URL
'/accounts/logout/'
SECURE_HSTS_INCLUDE_SUBDOMAINS
False
DATE_FORMAT
'N j, Y'
AUTH_LDAP_CACHE_GROUPS
True
MEDIA_URL
'/media/'
MONTH_DAY_FORMAT
'F j'
LDAP_PASSWORD
'********************'
MEDIA_ROOT
'templates/media/'
STATIC_ROOT
'/opt/warpinfra/static'
STATIC_URL
'/static/'
X_FRAME_OPTIONS
'SAMEORIGIN'
SECURE_SSL_REDIRECT
False
STATICFILES_FINDERS
['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
AUTH_PASSWORD_VALIDATORS
'********************'
ABSOLUTE_URL_OVERRIDES
{}
AUTH_LDAP_SERVER_URI
CSRF_COOKIE_NAME
'csrftoken'
SESSION_COOKIE_PATH
'/'
DEFAULT_FILE_STORAGE
'django.core.files.storage.FileSystemStorage'
MANAGERS
[]
LANGUAGES
[('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmal'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')]
LDAP_GROUP_SEARCH_PATH
'dc=warpzone,dc=ms'
DATETIME_FORMAT
'N j, Y, P'
ALLOWED_INCLUDE_ROOTS
[]
CACHE_MIDDLEWARE_KEY_PREFIX
'********************'
SESSION_COOKIE_SECURE
False
REST_FRAMEWORK
{'DEFAULT_AUTHENTICATION_CLASSES': ['rest_framework.authentication.BasicAuthentication', 'rest_framework.authentication.SessionAuthentication', 'rest_framework.authentication.TokenAuthentication'], 'DEFAULT_PERMISSION_CLASSES': []}
ADMINS
[]
ROOT_URLCONF
'warpzone.urls'
FILE_UPLOAD_PERMISSIONS
None
LANGUAGE_COOKIE_NAME
'django_language'
EMAIL_BACKEND
'django.core.mail.backends.smtp.EmailBackend'
PASSWORD_HASHERS
'********************'
SESSION_EXPIRE_AT_BROWSER_CLOSE
False
USE_X_FORWARDED_HOST
False
FILE_UPLOAD_TEMP_DIR
None
STATICFILES_DIRS
[]
EMAIL_USE_SSL
False
SECURE_CONTENT_TYPE_NOSNIFF
False
TIME_INPUT_FORMATS
['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
SHORT_DATE_FORMAT
'm/d/Y'
SECRET_KEY
'********************'
LDAP_USER_SEARCH_FILTER
'(uid=%(user)s)'
SESSION_COOKIE_HTTPONLY
True
AUTH_LDAP_USER_FLAGS_BY_GROUP
{'is_active': 'cn=active,ou=groups,dc=warpzone,dc=ms', 'is_staff': ['cn=superuser,ou=groups,ou=warpauth,ou=infrastructure,dc=warpzone,dc=ms', 'cn=superuser,ou=groups,ou=warpauth,ou=infrastructure,dc=warpzone,dc=ms'], 'is_superuser': 'cn=superuser,ou=groups,ou=warpauth,ou=infrastructure,dc=warpzone,dc=ms'}
DATETIME_INPUT_FORMATS
['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y']
USE_ETAGS
False
LDAP_GROUP_SUPERUSER
'cn=superuser,ou=groups,ou=warpauth,ou=infrastructure,dc=warpzone,dc=ms'
SESSION_SERIALIZER
'django.contrib.sessions.serializers.JSONSerializer'
LANGUAGE_COOKIE_AGE
None
TIME_ZONE
'Europe/Berlin'
DEFAULT_TABLESPACE
''
TEST_NON_SERIALIZED_APPS
[]
SECURE_PROXY_SSL_HEADER
None
LANGUAGES_BIDI
['he', 'ar', 'fa', 'ur']
INSTALLED_APPS
('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'bootstrapform', 'warpmain', 'warpauth', 'warpfood', 'rest_framework', 'rest_framework.authtoken')
CSRF_COOKIE_SECURE
False
SESSION_SAVE_EVERY_REQUEST
False
DEFAULT_CONTENT_TYPE
'text/html'
SESSION_ENGINE
'django.contrib.sessions.backends.db'
SETTINGS_MODULE
'warpzone.settings'
EMAIL_SSL_CERTFILE
None
AUTHENTICATION_BACKENDS
('django_auth_ldap.backend.LDAPBackend', 'django.contrib.auth.backends.ModelBackend')
DEFAULT_EXCEPTION_REPORTER_FILTER
'django.views.debug.SafeExceptionReporterFilter'
SESSION_CACHE_ALIAS
'default'
AUTH_LDAP_BIND_DN
'cn=admin,dc=warpzone,dc=ms'
USE_X_FORWARDED_PORT
False
LANGUAGE_COOKIE_PATH
'/'
FILE_CHARSET
'utf-8'
CSRF_FAILURE_VIEW
'django.views.csrf.csrf_failure'
MESSAGE_STORAGE
'django.contrib.messages.storage.fallback.FallbackStorage'
AUTH_USER_MODEL
'auth.User'
BASE_DIR
'/opt/warpinfra'
CSRF_TRUSTED_ORIGINS
[]
LOGGING_CONFIG
'logging.config.dictConfig'
SECURE_REDIRECT_EXEMPT
[]
EMAIL_SUBJECT_PREFIX
'[Django] '
USE_I18N
True
AUTH_LDAP_PROFILE_ATTR_MAP
{'home_directory': 'homeDirectory'}
EMAIL_HOST_PASSWORD
'********************'
FORMAT_MODULE_PATH
None
CACHE_MIDDLEWARE_SECONDS
600
SECURE_SSL_HOST
None
SESSION_COOKIE_AGE
1209600
STATICFILES_STORAGE
'django.contrib.staticfiles.storage.StaticFilesStorage'
DEBUG
True
SECURE_BROWSER_XSS_FILTER
False
AUTH_LDAP_GROUP_CACHE_TIMEOUT
10
FIXTURE_DIRS
[]
SECURE_HSTS_SECONDS
0
TEMPLATE_LOADERS
['django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader']
FILE_UPLOAD_MAX_MEMORY_SIZE
2621440
PASSWORD_RESET_TIMEOUT_DAYS
'********************'
DATE_INPUT_FORMATS
['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
YEAR_MONTH_FORMAT
'F Y'
TIME_FORMAT
'P'
USE_THOUSAND_SEPARATOR
False
CSRF_COOKIE_HTTPONLY
False
TEMPLATE_CONTEXT_PROCESSORS
['django.contrib.auth.context_processors.auth', 'django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'django.contrib.messages.context_processors.messages']
APPEND_SLASH
True
IGNORABLE_404_URLS
[]
AUTH_LDAP_USER_SEARCH
<django_auth_ldap.config.LDAPSearch object at 0x7f0393b4d128>
LDAP_GROUP_IS_ACTIVE
'cn=active,ou=groups,dc=warpzone,dc=ms'
DATABASE_ROUTERS
['ldapdb.router.Router']
PW_RESET_TOKEN_LIFETIME
'********************'
LANGUAGE_CODE
'en-us'
WSGI_APPLICATION
'warpzone.wsgi.application'
EMAIL_HOST
'localhost'
DEFAULT_CHARSET
'utf-8'
CSRF_COOKIE_AGE
31449600
TEMPLATE_STRING_IF_INVALID
''
CACHE_MIDDLEWARE_ALIAS
'default'
ALLOWED_HOSTS
[]
EMAIL_TIMEOUT
None
LDAP_HOST
DECIMAL_SEPARATOR
'.'
INTERNAL_IPS
[]
DISALLOWED_USER_AGENTS
[]
SHORT_DATETIME_FORMAT
'm/d/Y P'
LOGIN_REDIRECT_URL
'/accounts/profile/'
CSRF_COOKIE_PATH
'/'
CACHES
{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
NUMBER_GROUPING
0
SIGNING_BACKEND
'django.core.signing.TimestampSigner'
PREPEND_WWW
False
AUTH_LDAP_GROUP_SEARCH
<django_auth_ldap.config.LDAPSearch object at 0x7f03954f1d68>
AUTH_LDAP_GROUP_TYPE
<django_auth_ldap.config.PosixGroupType object at 0x7f0393b60400>
DEFAULT_FROM_EMAIL
'webmaster@localhost'
DEBUG_PROPAGATE_EXCEPTIONS
False
TEST_RUNNER
'django.test.runner.DiscoverRunner'
SILENCED_SYSTEM_CHECKS
[]
SERVER_EMAIL
'root@localhost'
EMAIL_USE_TLS
False
EMAIL_SSL_KEYFILE
'********************'
USE_L10N
True
EMAIL_HOST_USER
''
FIRST_DAY_OF_WEEK
0
SESSION_FILE_PATH
None
LOGGING
{}
AUTH_LDAP_BIND_PASSWORD
'********************'
AUTH_LDAP_FIND_GROUP_PERMS
True
CSRF_HEADER_NAME
'HTTP_X_CSRFTOKEN'
TEMPLATES
[{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}]
LDAP_GROUP_IS_STAFF
'cn=superuser,ou=groups,ou=warpauth,ou=infrastructure,dc=warpzone,dc=ms'
AUTH_LDAP_USER_ATTR_MAP
{'email': 'mail', 'first_name': 'givenName', 'last_name': 'sn'}
FILE_UPLOAD_DIRECTORY_PERMISSIONS
None
TEMPLATE_DEBUG
False
LANGUAGE_COOKIE_DOMAIN
None
EMAIL_PORT
25
MIDDLEWARE_CLASSES
('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware')
FILE_UPLOAD_HANDLERS
['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
SESSION_COOKIE_DOMAIN
None
LOCALE_PATHS
('/opt/warpinfra/locale',)
THOUSAND_SEPARATOR
','
CSRF_COOKIE_DOMAIN
None
LDAP_USER_SEARCH_PATH
'ou=users,dc=warpzone,dc=ms'
DATABASES
{'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.sqlite3', 'HOST': '', 'NAME': '/opt/database/warpzone.db', 'OPTIONS': {}, 'PASSWORD': '', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': ''}, 'ldap': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'ldapdb.backends.ldap', 'HOST': '', 'NAME': 'ldap://ldap', 'OPTIONS': {}, 'PASSWORD': '', 'PORT': '', 'SUPPORTS_TRANSACTIONS': True, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'cn=admin,dc=warpzone,dc=ms'}}
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard page generated by the handler for this status code.