Example #1
0
        protected List <Claim> FetchClaims(AddClaimsMethod method, int id)
        {
            var claims = new List <Claim>();

            if (method != null)
            {
                claims = method(id);
            }
            return(claims);
        }
Example #2
0
        public ITokenRespons RefreshToken(string refreshtoken, string audiance, string domain, AddClaimsMethod method)
        {
            UserAccount user = new UserAccount();

            try
            {
                var token = AuthRefreshToken(refreshtoken);
                user.Id = token.UserId;
                user    = GetAuthFromDB <UserAccount>("select * from getuserbyid(@Id)", user);
                return(Authentiacte(user, "token", "localhost", method));;
            }
            catch
            {
                throw;
            }
        }
Example #3
0
 public virtual ITokenRespons Authentiacte(object user, string audiance, string domain, AddClaimsMethod method)
 {
     try
     {
         var useracc = (UserAccount)user;
         var userdb  = GetAuthFromDB("select * from getuser(@UserName)", useracc);
         ValidateAccount(useracc, userdb);
         var claims       = FetchClaims(method, userdb.Id);
         var tokenRespons = Jwt.CreateJwtToken(claims, audiance, domain);
         AddRefreshToken(tokenRespons.RefreshToken, userdb.Id);
         return(tokenRespons);
     }
     catch
     {
         throw;
     }
 }
Example #4
0
        public virtual ITokenRespons RefreshToken(string refreshtoken, string audiance, string domain, AddClaimsMethod method)
        {
            TokenKey tokendb = new TokenKey();

            try
            {
                var token = AuthRefreshToken(refreshtoken);
                tokendb.Id = token.TokenId;
                tokendb    = GetAuthFromDB <TokenKey>("select * from gettokenbyid(@Id)", tokendb);
                return(Authentiacte(tokendb, "token", "localhost", method));;
            }
            catch
            {
                FailedAuthentication(tokendb);
                throw;
            }
        }
Example #5
0
 public virtual ITokenRespons Authentiacte(object token, string audiance, string domain, AddClaimsMethod method)
 {
     try
     {
         var tokendb      = GetAuthFromDB("select * from gettoken(@Token)", (TokenKey)token);
         var claims       = FetchClaims(method, tokendb.Id);
         var tokenRespons = Jwt.CreateJwtToken(claims, audiance, domain);
         AddRefreshToken(tokenRespons.RefreshToken, tokendb.Id);
         if (!IsLocked(tokendb) && tokendb.LockOut > 0)
         {
             Unlock(tokendb);
         }
         return(tokenRespons);
     }
     catch
     {
         throw;
     }
 }