/// <summary> /// Valida usuário e senha no AD, verifica as permissões de acesso e retorna matrícula se usuário estiver válido. /// </summary> /// <param name="username"> /// Nome de login do usuário. /// </param> /// <param name="password"> /// Senha do usuário, a mesma do e-mail institucional. /// </param> /// <param name="rememberMe">Permanecer autenticado.</param> /// <param name="fallbackCaptcha">Captcha do google bloqueado. Login utilizou o captcha fallback.</param> /// <param name="isMobileBrowser"></param> /// <returns>Dados do Usuario.</returns> public UserDataCookie SignIn(string username, string password, bool rememberMe, bool fallbackCaptcha, bool isMobileBrowser) { var userAd = _adService.ValidadeUser(username, password); var userData = userAd.BuildDataCookie(); userData.RememberMe = rememberMe; var roles = ValidateAccess(userAd.Matricula, userAd.IsMembro); if (roles == null) { throw new InvalidLoginException(); } SetAuthCookie(userData, roles); //_acessoRepository.RegistrarAcesso(userAd.Matricula, userAd.IsMembro, userData.IP, rememberMe, fallbackCaptcha, isMobileBrowser); return(userData); }