Exemplo n.º 1
0
        public AuthTicketDTO GetAuthDTO(string userName)
        {
            AuthTicketDTO AuthTicket = sessionService.GetAuthTicket(userName);

            if (AuthTicket != null)
            {
                return(AuthTicket);
            }

            User AuthUser = userRepo.GetAll(x => x.Username.ToUpper() == userName.ToUpper()).FirstOrDefault();

            if (AuthUser != null)
            {
                AuthTicketDTO Result = new AuthTicketDTO()
                {
                    Email    = AuthUser.Email,
                    FullName = AuthUser.FullName,
                    UserName = AuthUser.Username,
                    UserId   = AuthUser.Id,
                    RoleId   = AuthUser.UserRoles.FirstOrDefault()?.RoleId,
                    RoleName = AuthUser.UserRoles.FirstOrDefault()?.Role.Name,
                };

                //Using Sessions Cache to Save AuthTicket
                sessionService.SetAuthTicket(Result.UserName, Result);
                return(Result);
            }
            return(null);
        }
        public IActionResult GetUserAuthTicket()
        {
            ClaimsIdentity claimsIdentity = User.Identity as ClaimsIdentity;
            string         Username       = claimsIdentity.Name;
            AuthTicketDTO  AuthTicket     = _usersService.GetAuthDTO(Username);

            return(Ok(AuthTicket != null ? AuthTicket : null));
        }
Exemplo n.º 3
0
        public AuthTicketDTO GetAuthDTO(string userName)
        {
            AuthTicketDTO AuthTicket = SessionServices.GetAuthTicket(userName);

            if (AuthTicket != null)
            {
                return(AuthTicket);
            }

            bool IsArabic = CultureInfo.CurrentCulture.IsArabic();
            User AuthUser = _users.GetAll(false, "UserRoles").Where(x => x.Username.ToUpper() == userName.ToUpper()).FirstOrDefault();

            if (AuthUser != null)
            {
                if (!AuthUser.Enabled)
                {
                    throw new BusinessException(_StringLocalizer.GetString("AccountIsDisabled"));
                }

                if (!AuthUser.IsApproved)
                {
                    throw new BusinessException(_StringLocalizer.GetString("AccountIsNotApproved"));
                }

                AuthTicketDTO Result = new AuthTicketDTO()
                {
                    Email          = AuthUser.Email,
                    FullName       = AuthUser.FullName,
                    UserName       = AuthUser.Username,
                    UserId         = AuthUser.UserId,
                    DefaultCulture = AuthUser.DefaultCulture,
                    RoleId         = AuthUser.UserRoles.FirstOrDefault()?.RoleId,
                    RoleName       = AuthUser.UserRoles.FirstOrDefault()?.Role.RoleName,
                };

                //Using Sessions Cache to Save AuthTicket
                SessionServices.SetAuthTicket(Result.UserName, Result);
                return(Result);
            }
            return(null);
        }
Exemplo n.º 4
0
 public void SetAuthTicket(string username, AuthTicketDTO authTicket)
 {
     HttpContext.Session.SetString(username.ToUpper(), JsonConvert.SerializeObject(authTicket));
 }