ensure_home_directory(request.fs, user.username) except (IOError, WebHdfsException), e: LOG.error(_('Could not create home directory.'), exc_info=e) request.error(_('Could not create home directory.')) access_warn(request, '"%s" login ok' % (user.username,)) return HttpResponseRedirect(redirect_to) else: access_warn(request, 'Failed login for user "%s"' % (request.POST.get('username'),)) else: first_user_form = None auth_form = AuthenticationForm() if DEMO_ENABLED.get() and not 'admin' in request.REQUEST: user = authenticate(username='', password='') login(request, user) ensure_home_directory(request.fs, user.username) return HttpResponseRedirect(redirect_to) request.session.set_test_cookie() return render('login.mako', request, { 'action': urlresolvers.reverse('desktop.auth.views.dt_login'), 'form': first_user_form or auth_form, 'next': redirect_to, 'first_login_ever': is_first_login_ever, 'login_errors': request.method == 'POST', 'backend_name': backend_name, 'active_directory': is_active_directory })
return HttpResponseRedirect(redirect_to) else: request.audit['allowed'] = False msg = 'Failed login for user: %s' % request.POST.get( 'username') request.audit['operationText'] = msg access_warn(request, msg) if from_modal or request.REQUEST.get('fromModal', 'false') == 'true': return JsonResponse({'auth': False}) else: first_user_form = None auth_form = AuthenticationForm() if DEMO_ENABLED.get() and not 'admin' in request.REQUEST: user = authenticate(username=request.user.username, password='******') login(request, user) ensure_home_directory(request.fs, user.username) return HttpResponseRedirect(redirect_to) if not from_modal: request.session.set_test_cookie() renderable_path = 'login.mako' if from_modal: renderable_path = 'login_modal.mako' return render( renderable_path, request, {
return JsonResponse({"auth": True}) else: return HttpResponseRedirect(redirect_to) else: request.audit["allowed"] = False msg = "Failed login for user: %s" % request.POST.get("username") request.audit["operationText"] = msg access_warn(request, msg) if from_modal or request.REQUEST.get("fromModal", "false") == "true": return JsonResponse({"auth": False}) else: first_user_form = None auth_form = AuthenticationForm() if DEMO_ENABLED.get() and not "admin" in request.REQUEST: user = authenticate(username="", password="") login(request, user) ensure_home_directory(request.fs, user.username) return HttpResponseRedirect(redirect_to) request.session.set_test_cookie() renderable_path = "login.mako" if from_modal: renderable_path = "login_modal.mako" return render( renderable_path, request, {
request.audit['operationText'] = msg access_warn(request, msg) if from_modal or request.REQUEST.get('fromModal', 'false') == 'true': return JsonResponse({'auth': False}) else: first_user_form = None auth_form = AuthenticationForm() # SAML user is already authenticated in djangosaml2.views.login if 'SAML2Backend' in backend_names and request.user.is_authenticated(): try: ensure_home_directory(request.fs, request.user) except (IOError, WebHdfsException), e: LOG.error('Could not create home directory for SAML user %s.' % request.user) if DEMO_ENABLED.get() and not 'admin' in request.REQUEST and request.user.username != 'hdfs': user = authenticate(username=request.user.username, password='******') login(request, user) ensure_home_directory(request.fs, user.username) return HttpResponseRedirect(redirect_to) if not from_modal: request.session.set_test_cookie() renderable_path = 'login.mako' if from_modal: renderable_path = 'login_modal.mako' response = render(renderable_path, request, { 'action': urlresolvers.reverse('desktop.auth.views.dt_login'), 'form': first_user_form or auth_form,
return JsonResponse({'auth': True}) else: return HttpResponseRedirect(redirect_to) else: request.audit['allowed'] = False msg = 'Failed login for user: %s' % request.POST.get('username') request.audit['operationText'] = msg access_warn(request, msg) if from_modal or request.REQUEST.get('fromModal', 'false') == 'true': return JsonResponse({'auth': False}) else: first_user_form = None auth_form = AuthenticationForm() if DEMO_ENABLED.get() and not 'admin' in request.REQUEST and request.user.username != 'hdfs': user = authenticate(username=request.user.username, password='******') login(request, user) ensure_home_directory(request.fs, user.username) return HttpResponseRedirect(redirect_to) if not from_modal: request.session.set_test_cookie() renderable_path = 'login.mako' if from_modal: renderable_path = 'login_modal.mako' return render(renderable_path, request, { 'action': urlresolvers.reverse('desktop.auth.views.dt_login'), 'form': first_user_form or auth_form,
def dt_login(request): redirect_to = request.REQUEST.get('next', '/') is_first_login_ever = first_login_ever() backend_name = get_backend_name() is_active_directory = backend_name == 'LdapBackend' and ( bool(LDAP.NT_DOMAIN.get()) or bool(LDAP.LDAP_SERVERS.get()) ) if is_active_directory: UserCreationForm = auth_forms.LdapUserCreationForm AuthenticationForm = auth_forms.LdapAuthenticationForm else: UserCreationForm = auth_forms.UserCreationForm AuthenticationForm = auth_forms.AuthenticationForm if request.method == 'POST': # For first login, need to validate user info! first_user_form = is_first_login_ever and UserCreationForm(data=request.POST) or None first_user = first_user_form and first_user_form.is_valid() if first_user or not is_first_login_ever: auth_form = AuthenticationForm(data=request.POST) if auth_form.is_valid(): # Must login by using the AuthenticationForm. # It provides 'backends' on the User object. user = auth_form.get_user() userprofile = get_profile(user) login(request, user) if request.session.test_cookie_worked(): request.session.delete_test_cookie() # For Bluemix - don't try to create HDFS home directory because we're ignoring the identity of the Hue user #if is_first_login_ever or backend_name in ('AllowAllBackend', 'LdapBackend'): # # Create home directory for first user. # try: # ensure_home_directory(request.fs, user.username) # except (IOError, WebHdfsException), e: # LOG.error(_('Could not create home directory.'), exc_info=e) # request.error(_('Could not create home directory.')) if require_change_password(userprofile): return HttpResponseRedirect(urlresolvers.reverse('useradmin.views.edit_user', kwargs={'username': user.username})) userprofile.first_login = False userprofile.save() access_warn(request, '"%s" login ok' % (user.username,)) return HttpResponseRedirect(redirect_to) else: access_warn(request, 'Failed login for user "%s"' % (request.POST.get('username'),)) else: first_user_form = None auth_form = AuthenticationForm() if DEMO_ENABLED.get() and not 'admin' in request.REQUEST: user = authenticate(username='', password='') login(request, user) ensure_home_directory(request.fs, user.username) return HttpResponseRedirect(redirect_to) request.session.set_test_cookie() return render('login.mako', request, { 'action': urlresolvers.reverse('desktop.auth.views.dt_login'), 'form': first_user_form or auth_form, 'next': redirect_to, 'first_login_ever': is_first_login_ever, 'login_errors': request.method == 'POST', 'backend_name': backend_name, 'active_directory': is_active_directory })