示例#1
0
        public IActionResult Signin([FromBody] UserSigninInfos signinInfos)
        {
            using var context = trigganContext;
            var user = context.Users.SingleOrDefault(u => u.Username == signinInfos.Username);

            var hashVerificationResult = new PasswordHasher <User>().VerifyHashedPassword(user, user?.Password ?? "", signinInfos.Password);

            if (user == null)
            {
                return(Unauthorized(SigninErrorType.UserNotFound));
            }
            else if (hashVerificationResult == PasswordVerificationResult.Failed)
            {
                return(Unauthorized(SigninErrorType.PasswordError));
            }
            else if (!user.Active)
            {
                return(Unauthorized(SigninErrorType.AccountNotActivated));
            }
            else
            {
                user.Token = GetToken(user);
                return(Ok(user.WithoutPassword()));
            }
        }
        public async Task <User> Signin(UserSigninInfos signinInfos)
        {
            var response = await httpClient.PostAsJsonAsync("Signin", signinInfos);

            if (!response.IsSuccessStatusCode)
            {
                return(new User {
                    Guid = new Guid()
                });
            }

            var signedInUser = await response.Content.ReadFromJsonAsync <User>();

            if (signedInUser == null)
            {
                return new User {
                           Guid = new Guid()
                }
            }
            ;

            await SecureStorage.SetAsync("authToken", signedInUser.Token);

            await SecureStorage.SetAsync("user", JsonSerializer.Serialize(signedInUser));

            Console.WriteLine($"User signed in");
            authStateProvider.MarkUserAsAuthenticated(signedInUser.Guid.ToString(), signedInUser.Role);
            httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", signedInUser.Token);
            Console.WriteLine($"(AuthService signin) HttpClient requestheader auth: {httpClient.DefaultRequestHeaders.Authorization}");
            User = signedInUser;

            return(signedInUser);
        }
        public IActionResult Signin([FromBody] UserSigninInfos signinInfos)
        {
            using var userManager = this.userManager;
            var user = userManager.GetUsers().SingleOrDefault(u => u.Username == signinInfos.Username || signinInfos.IsUsernameEmail() && u.Email == signinInfos.Username);


            if (user == null)
            {
                return(Unauthorized(SigninErrorType.UserNotFound));
            }

            var hashVerificationResult = new PasswordHasher <User>().VerifyHashedPassword(user, user?.Password ?? "", signinInfos.Password);

            if (hashVerificationResult == PasswordVerificationResult.Failed)
            {
                return(Unauthorized(SigninErrorType.PasswordError));
            }
            else if (user !.Deleted)
            {
                return(Unauthorized(SigninErrorType.AccountDisabled));
            }
        public async Task <User> Signin(UserSigninInfos signinInfos)
        {
            var response = await httpClient.PostAsJsonAsync("Signin", signinInfos);

            if (!response.IsSuccessStatusCode)
            {
                return(new User {
                    Id = -500
                });
            }

            var signedInUser = await response.Content.ReadFromJsonAsync <User>();

            await localStorage.SetItemAsync("authToken", signedInUser.Token);

            await localStorage.SetItemAsync("user", signedInUser);

            Console.WriteLine($"User signed in");
            ((ApiAuthenticationStateProvider)authStateProvider).MarkUserAsAuthenticated(signedInUser.Id.ToString(), signedInUser.Role);
            httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", signedInUser.Token);
            Console.WriteLine($"(AuthService signin) HttpClient requestheader auth: {httpClient.DefaultRequestHeaders.Authorization}");

            return(signedInUser);
        }