public async Task <ActionResult <UserModel> > CreateUser(CreateUserModel updatedUser) { if (ModelState.IsValid) { var u = new VideoCdnUser { Email = updatedUser.Email, UserName = updatedUser.UserName, }; await _userManager.CreateAsync(u, updatedUser.InitPassword); return(Ok()); } return(BadRequest()); }
private string GenerateJwtToken(VideoCdnUser u, IList <string> Roles) { var claims = new List <Claim> { new(ClaimTypes.NameIdentifier, u.Id.ToString()), new(ClaimTypes.Name, u.UserName), new(ClaimTypes.Email, u.Email), }; Roles.ToList().ForEach(r => claims.Add(new(ClaimTypes.Role, r))); // add roles var descriptor = new JwtSecurityToken(null, null, claims, expires: DateTime.Now.AddYears(1), signingCredentials: new(new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_jwtOptions.Key)), SecurityAlgorithms.HmacSha256Signature)); return(new JwtSecurityTokenHandler().WriteToken(descriptor)); }