public static ClaimsIdentity GetClaimsIdentity(this UserProviderDto user) { return(new ClaimsIdentity(new Claim[] { new Claim(USER, JsonConvert.SerializeObject(user)) })); }
public async Task <IActionResult> UserProvidersDelete(UserProviderDto <TUserDtoKey> provider) { await _identityService.DeleteUserProvidersAsync(provider); return(Success(new { Id = provider.UserId })); }
public async Task <IActionResult> UserProvidersDelete(UserProviderDto provider) { await _identityService.DeleteUserProvidersAsync(provider); SuccessNotification(_localizer["SuccessDeleteUserProviders"], _localizer["SuccessTitle"]); return(RedirectToAction(nameof(UserProviders), new { Id = provider.UserId })); }
public IActionResult Authenticate(string name, string password) { // 此处需补充用户校验与用户具体信息获取 var user = new UserProviderDto(name, password); var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes(Const.SecurityKey); var tokenDescriptor = new SecurityTokenDescriptor { Audience = Audiences.UpdateAudience(user.Name), Subject = user.GetClaimsIdentity(), Expires = DateTime.UtcNow.AddDays(0.5), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); var tokenString = tokenHandler.WriteToken(token); return(Ok(new { access_token = tokenString })); }
public async Task <IdentityResult> DeleteUserProvidersAsync(UserProviderDto provider) { var identityResult = await _identityRepository.DeleteUserProvidersAsync(provider.UserId, provider.ProviderKey, provider.LoginProvider); return(HandleIdentityError(identityResult, _identityServiceResources.UserProviderDeleteFailed().Description, _identityServiceResources.IdentityErrorKey().Description, provider)); }