当前位置: 首页 > news >正文

网站交互用什么做团购网站建站

网站交互用什么做,团购网站建站,如何建立单位微信公众号,极速网站建设定制价格说明权限认证是确定用户身份的过程。可确定用户是否有访问资源的权力今天给大家分享一下类似JWT这种基于token的鉴权机制基于token的鉴权机制#xff0c;它不需要在服务端去保留用户的认证信息或者会话信息。这就意味着基于token认证机制的应用,不需要去考虑用户在哪一台服务器… 说明权限认证是确定用户身份的过程。可确定用户是否有访问资源的权力今天给大家分享一下类似JWT这种基于token的鉴权机制基于token的鉴权机制它不需要在服务端去保留用户的认证信息或者会话信息。这就意味着基于token认证机制的应用,不需要去考虑用户在哪一台服务器登录了这就为应用的扩展提供了便利。流程上是这样的•用户使用用户名密码来请求服务器•服务器进行验证用户的信息•服务器通过验证发送给用户一个token•客户端存储token并在每次请求时附送上这个token值•服务端验证token值并返回数据那我今天给大家手撸一个类似Jwt的权限认证演示新建一个授权筛选器继承IAuthorizationFilterpublic class ApiAuthorize : IAuthorizationFilter{}新建一个需要应用授权的特性和允许未通过身份验证也可以访问的特性public class MyAuthentication:Attribute, IFilterMetadata{}public class MyNoAuthentication : Attribute, IFilterMetadata{}我们需要在我们的授权过滤器判断请求头是否带有应用授权的特性和允许未通过身份验证也可以访问的特性如果有允许未通过身份验证也可以访问的特性就直接进入下一个管道 如果带有应用授权的特性则进行token判断public class ApiAuthorize : IAuthorizationFilter{public void OnAuthorization(AuthorizationFilterContext context){if (context.Filters.Contains(new MyNoAuthentication())){return;}var authorize  context.HttpContext.Request.Headers[MyAuthentication];if (string.IsNullOrWhiteSpace(authorize)){context.Result  new JsonResult(请求authorize不能为空);return;}if (!MemoryCacheHelper.Exists(authorize)){context.Result  new JsonResult(无效的授权信息或授权信息已过期);return;}}}可能有的小伙伴发现了那我们Token怎么去存取呢一般的方案是使用Cache来处理这里就不做过多讨论了有想了解的小伙伴可以看我上一篇文章CacheHelper代码public class MemoryCacheHelper{public static MemoryCache _cache  new MemoryCache(new MemoryCacheOptions());/// summary/// 验证缓存项是否存在/// /summary/// param namekey缓存Key/param/// returns/returnspublic static bool Exists(string key){if (key  null){throw new ArgumentNullException(nameof(key));}return _cache.TryGetValue(key, out _);}/// summary/// 获取缓存/// /summary/// param namekey缓存Key/param/// returns/returnspublic static object Get(string key){if (key  null){throw new ArgumentNullException(nameof(key));}if (!Exists(key))throw new ArgumentNullException(nameof(key));return _cache.Get(key);}/// summary/// 添加缓存/// /summary/// param namekey缓存Key/param/// param namevalue缓存Value/param/// param nameexpiresSliding滑动过期时长如果在过期时间内有操作则以当前时间点延长过期时间/param/// param nameexpiressAbsoulte绝对过期时长/param/// returns/returnspublic static bool AddMemoryCache(string key, object value){if (key  null){throw new ArgumentNullException(nameof(key));}if (value  null){throw new ArgumentNullException(nameof(value));}_cache.Set(key, value,new MemoryCacheEntryOptions(){SlidingExpiration  new TimeSpan(0, 0, 10),Priority  CacheItemPriority.NeverRemove,AbsoluteExpiration  DateTime.Now.AddMinutes(1)});return Exists(key);}}权限认证代码基本完成了我们回到刚刚的流程用户使用用户名密码来请求服务器 服务器进行验证用户的信息服务器通过验证发送给用户一个token对于一个商用软件来说绝大多数接口都需要应用授权后才能使用所以我们注册到全局 在StartUp类里面注册public void ConfigureServices(IServiceCollection services){services.AddControllers(o{o.Filters.AddApiAuthorize();o.Filters.AddMyAuthentication();});}Token生成原理我这里就不做过多解读了本例子使用AES加密生成Token 在我们服务端的请求token接口加上允许未通过身份验证也可以访问的特性然后颁发一个Token[HttpGet(GetToken)] [MyNoAuthentication] public IActionResult GetToken(string UserCode) {string token  AESEncrypt.Encrypt(UserCode);MemoryCacheHelper.AddMemoryCache(token, User);eturn Ok(token); }使用Postman请求生成token如图所示然后我们在新增一个需要应用授权的接口,由于我们注册了全局的应用授权特性就不需要在带上该特性了[HttpGet(GetUserInformation)]public IActionResult GetUserInformation(){return Ok(new { Name123,Age18,Sex性别});}不带token使用postman请求该接口如图所示带上token使用postman请求该接口如图所示通过刚才的例子我们清楚了解了权限认证的过程今天的介绍就到此结束了最后大家如果喜欢我的文章还麻烦给个关注并点个赞, 希望net生态圈越来越好
http://wiki.neutronadmin.com/news/367464/

相关文章:

  • 天津市工程建设交易网站查汗国ui培训机构排名前十
  • 新网网站内部优化网站管理员登陆不了
  • 网站做可信认证芜湖网站
  • 做问卷用哪个网站青岛+网站建设
  • 手机网站 扁平化趋势销售方案怎么做
  • 有空间站的国家html网站设计
  • 王烨甘肃邯郸做seo网站优化
  • 上海定制建设网站网站出现乱码的原因
  • 免费flash网站源码剪辑视频怎么学
  • 校园网站建设的请示做网站的一个黑点符号
  • 在建设局网站上怎么样总监解锁外贸建设网站制作
  • 网站建设设计公司网站建设需求计划
  • 昆明建站网址专业建站公司报价单
  • 网站域名备案和做网站网站开发制作的流程
  • 建设一个视频网站首页济南做网站优化公司
  • 域名续费后网站打不开查看网站空间大小
  • wordpress怎么做双语站东莞常平医院
  • php 显示不同网站内容辽宁省住房和城乡建设厅网站打不开
  • 网站为什么不被收录凭祥网站建设
  • 福田网站建设推广湖南竞网做网站好吗
  • 天津网站备案在哪照相wordpress怎么解绑域名
  • 本地电脑做网站服务器诸城网络推广公司
  • 网页制作创建站点做360网站优化
  • 专用主机方式建设网站免费公司建站
  • 网站自己做需要多少钱crm外贸管理软件
  • ppt模板怎么做 下载网站网页打包成小程序
  • 网站 图片防盗链淘宝客建设网站
  • 档案安全网站安全建设凡科网网站系统
  • 泉州建站方案绍兴做外贸网站的公司
  • 成都网站建设与维护苏州网络公司有哪些