Пример #1
0
        public IActionResult GetById(string token)
        {
            string         headers = HttpContext.Request.Headers["Authorization"];
            TokenBlackList Token   = new TokenBlackList();

            Token.Token = headers;
            _context.TokenBlackList.Add(Token);
            _context.SaveChanges();
            return(Ok());
        }
Пример #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public LogoutResponseDTO AddTokenToBlackList(LoginDTO obj)
        {
            // Creates response DTO
            LogoutResponseDTO response = new LogoutResponseDTO {
            };
            // Find user based off Username
            var foundCredential = (from u in db.Credentials
                                   where u.UserName == obj.UserName
                                   select u).FirstOrDefault();

            // If token already exists in database
            if (foundCredential != null)
            {
                // Token does not exists in database
                using (var dbTransaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        // Creates temporary token to store in database
                        TokenBlackList temp = new TokenBlackList
                        {
                            UserID = foundCredential.UserID,
                            Token  = obj.Token
                        };
                        db.TokenBlackLists.Add(temp);
                        db.SaveChanges();
                        dbTransaction.Commit();
                        // Sends response
                        response.isSuccessful = true;
                        return(response);
                    }
                    catch (NullReferenceException)
                    {
                        dbTransaction.Rollback();
                        response.isSuccessful = false;
                        return(response);
                    }
                }
            }
            else
            {
                // Token already exists in database
                response.isSuccessful = false;
                response.Messages     = new List <string> {
                    "Error: Token already Exists in Database."
                };
                return(response);
            }
        }
        public TokenBlackList Logout(string Blocktoken)
        {
            // validation
            if (_context.tokens.Any(x => x.token == Blocktoken))
            {
                throw new AppException("Token ja se encontra bloqueado");
            }
            TokenBlackList token = new TokenBlackList();

            token.token = Blocktoken;
            _context.tokens.Add(token);
            _context.SaveChanges();

            return(token);
        }
Пример #4
0
        public override bool InsertTokenBlackList()
        {
            bool result = false;

            if (!string.IsNullOrEmpty(token) && loginKey.ToString().Length == 36)
            {
                using (var tokenBlackListUnitOfWork = new TokenBlackListUnitOfWork(new AyudaContext()))
                {
                    var tokenBlackList = new TokenBlackList
                    {
                        LoginKey = loginKey,
                        Token    = token
                    };
                    tokenBlackListUnitOfWork.TokenBlackLists.Add(tokenBlackList);
                    result = tokenBlackListUnitOfWork.Complete() > 0;
                    tokenBlackListUnitOfWork.Dispose();
                }
            }
            return(result);
        }