public override LoginResult process(LoginData loginData)
        {
            var tokenType = RememberType.REMEMBER;

            if (this.config.getSystemValueInt("remember_login_cookie_lifetime", 60 * 60 * 24 * 15) == 0)
            {
                loginData.setRememberLogin(false);
                tokenType = RememberType.DO_NOT_REMEMBER;
            }
            this.userSession.createSessionToken(
                loginData.getRequest(), loginData.getUser().getUID(), loginData.getUsername(), loginData.getPassword(), (int)tokenType
                );
            this.userSession.updateTokens(loginData.getUser().getUID(), loginData.getPassword());
            return(processNextOrFinishSuccessfully(loginData));
        }
        public override LoginResult process(LoginData loginData)
        {
            if (loginData.isRememberLogin())
            {
                this.userSession.createRememberMeToken(loginData.getUser());
            }

            return(this.processNextOrFinishSuccessfully(loginData));
        }
 public override LoginResult process(LoginData loginData)
 {
     this.userSession.completeLogin(loginData.getUser(), new Dictionary <string, string>()
     {
         { "loginName", loginData.getUsername() },
         { "password", loginData.getPassword() }
     });
     return(this.processNextOrFinishSuccessfully(loginData));
 }
Esempio n. 4
0
 public override LoginResult process(LoginData loginData)
 {
     if (loginData.getTimeZoneOffset().IsNotEmpty())
     {
         this.config.setUserValue(loginData.getUser().getUID(), "core", "timezone", loginData.getTimeZone());
         this.session.set("timezone", loginData.getTimeZoneOffset());
     }
     return(this.processNextOrFinishSuccessfully(loginData));
 }
        public override LoginResult process(LoginData loginData)
        {
            if (!this.twoFactorManager.isTwoFactorAuthenticated(loginData.getUser()))
            {
                return(this.processNextOrFinishSuccessfully(loginData));
            }

            this.twoFactorManager.prepareTwoFactorLogin(loginData.getUser(), loginData.isRememberLogin());
            var providerSet    = this.twoFactorManager.getProviderSet(loginData.getUser());
            var loginProviders = this.twoFactorManager.getLoginSetupProviders(loginData.getUser());
            var providers      = providerSet.getPrimaryProviders();
            var url            = "";
            var urlParams      = new Dictionary <string, string>();

            if (providers.IsEmpty() && !providerSet.isProviderMissing() && loginProviders.IsNotEmpty() && this.mandatoryTwoFactor.isEnforcedFor(loginData.getUser()))
            {
                url       = "core.TwoFactorChallenge.setupProviders";
                urlParams = new Dictionary <string, string>();
            }
            else if (!providerSet.isProviderMissing() && providers.Count == 1)
            {
                var provider = providers[0];
                url       = "core.TwoFactorChallenge.showChallenge";
                urlParams = new Dictionary <string, string>()
                {
                    { "challengeProviderId", provider.getId() }
                };
            }
            else
            {
                url       = "core.TwoFactorChallenge.selectChallenge";
                urlParams = new Dictionary <string, string>();
            }

            if (loginData.getRedirectUrl() != null)
            {
                urlParams = new Dictionary <string, string>()
                {
                    { "redirect_url", loginData.getRedirectUrl() }
                };
            }
            return(LoginResult.success(loginData, this.urlGenerator.linkToRoute(url, urlParams)));
        }
        public override LoginResult process(LoginData loginData)
        {
            if (loginData.getUser() == null)
            {
                var username = loginData.getUsername();
                var ip       = loginData.getRequest().getRemoteAddress();
                this.logger.warning($"Login failed: {username} (Remote IP: {ip})");
                return(LoginResult.failure(loginData, "invalidpassword"));
            }

            return(this.processNextOrFinishSuccessfully(loginData));
        }
 public override LoginResult process(LoginData loginData)
 {
     if (loginData.getUser() == null)
     {
         var users = this.userManager.getByEmail(loginData.getUsername());
         if (users.Count == 1)
         {
             var username = users[0].getUID();
             if (username != loginData.getUsername())
             {
                 var user = this.userManager.checkPassword(username, loginData.getPassword());
                 if (user != null)
                 {
                     loginData.setUser(user);
                     loginData.setUsername(username);
                 }
             }
         }
     }
     return(this.processNextOrFinishSuccessfully(loginData));
 }
Esempio n. 8
0
 public override LoginResult process(LoginData loginData)
 {
     this.config.deleteUserValue(loginData.getUser().getUID(), "core", "lostpassword");
     return(this.processNextOrFinishSuccessfully(loginData));
 }
 public override LoginResult process(LoginData loginData)
 {
     this.session.set("last-password-confirm", loginData.getUser().getLastLogin());
     return(this.processNextOrFinishSuccessfully(loginData));
 }