Я изучаю, что конечная точка Angular и Web API при регистрации создаст токен и вернет его клиенту.
Вот код:
var tokenHandler = new JwtSecurityTokenHandler();
var claims = new ClaimsIdentity(new[] {
new Claim(ClaimTypes.Email, user.UserName)
});
const string secretKey = "your secret key goes here";
var securityKey = new SymmetricSecurityKey(Encoding.Default.GetBytes(secretKey));
var signinCredentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256Signature);
var token = (JwtSecurityToken)tokenHandler.CreateJwtSecurityToken(subject: claims, signingCredentials: signinCredentials);
var tokenString = tokenHandler.WriteToken(token);
return new JwtPackage()
{
UserName = user.UserName,
Token = tokenString
};
Я прочитал о https://oauth.net/2/
Я знаю, что сервер авторизации должен создать токен. Здесь я сам создаю токен и возвращаю его пользователю, используя JwtSecurityTokenHandler
.
Мой вопрос: является ли эта реализация правильной для выполнения https://oauth.net/2/?
Если да, то где же сервер авторизации?
Также если я не шифрую токен и сохраняю его в локальном хранилище. это безопасно?