예제 #1
0
        public async Task <AppUserAuth> validateUser(AppUser user)
        {
            var     userAuth = new AppUserAuth();
            AppUser appUser  = null;

            using (var context = new DataContext())
            {
                appUser = context.AppUser.Where(u => u.username.ToLower() == user.username.ToLower() &&
                                                u.password == user.password).FirstOrDefault();
            }
            if (appUser != null)
            {
                userAuth = await createAppUserAuth(user);
            }

            return(userAuth);
        }
예제 #2
0
        private async Task <AppUserAuth> createAppUserAuth(AppUser user)
        {
            var userAuth = new AppUserAuth();
            var claims   = new List <AppUserClaim>();

            claims = getUserClaims(user);
            foreach (AppUserClaim claim in claims)
            {
                typeof(AppUserAuth).GetProperty(claim.ClaimType)
                .SetValue(userAuth, Convert.ToBoolean(claim.ClaimValue));
            }
            userAuth.username        = user.username;
            userAuth.isAuthenticated = true;
            userAuth.isAdmin         = userAuth.isAdmin;
            userAuth.bearerToken     = await GetAccessToken(user);


            return(userAuth);
        }