using System; using System.Collections.Generic; using System.IdentityModel.Tokens.Jwt; using System.Linq; using System.Security.Claims; using System.Security.Cryptography; using System.Text; using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.IdentityModel.Tokens; using MyCore.Models; using MyCore.Services; namespace MyCore.Controllers { [Authorize] [Route("api/token")] [ApiController] public class TokenController : ControllerBase { private TokenService _tokenService; private UserService _userService; public TokenController(TokenService tokenService, UserService userService) { _tokenService = tokenService; _userService = userService; } [AllowAnonymous] [HttpPost] public ActionResult Create(string email, string password) { //string test = _TokenService.GenerateSHA256String(password); if (IsValidUserAndPasswordCombination(email, password)) { UserInfo user = _userService.GetUser(email); user.Token = _tokenService.GenerateToken(email).ToString(); return user; } return BadRequest(); } private bool IsValidUserAndPasswordCombination(string email, string password) { // Test if is database and is correct if (email == "thomas.fransolet@hotmail.be" && password == "MonsieurMagic") { return true; } else return false; } } }