c# - 令牌认证服务器在 .Net 中是如何工作的?
问题描述
我正在学习注册中的 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/的正确实现?
如果是,那么授权服务器在哪里?
另外,如果我不加密令牌,并将其保存在本地存储中。这安全吗?
解决方案
推荐阅读
- c# - 在 SmarterAsp.net WebApplication Asp.NET Core 2.2 中托管时出现“错误:启动应用程序时发生错误”
- node.js - Mongoose -- 当前的 URL 字符串解析器已被弃用,尽管传递了选项 { useNewUrlParser: true }
- database - 所有 AD 成员都执行查询时的 AD 查询性能
- sql - 根据其他表中的外键选择多行
- javascript - 如何使我的 ahref 链接动态化?用于创建动态 url 参数
- spring-boot - 如何在 Thymeleaf 中读取模型中设置的属性
- python-3.x - 如何在 Python 中使用 %s 和 %d 作为字符串文字而不是格式化程序?
- r - group_by 并使用 dplyr 应用基于窗口的滚动回归
- php - 如何将自定义字段值插入 Wordpress dynamic_sidebar
- reactjs - 从终端创建新的 React 应用程序时出错