OAuth 2.0 隐含式 - Implicit
上一篇 OAuth 2.0 客户端凭证模式 的文章中使用 .NET 5 实现了客户端凭证模式,这篇文章中将将继续使用 .NET 5 实现 OAuth 2.0 隐含式( Implicit ),隐含模式现在已经不推荐使用了,应该使用安全度更高的 Authorization Code Flow 或者 Authorization Code Flow With PKCE,现在只适合于一些对安全性要求不高的应用。
上一篇 OAuth 2.0 客户端凭证模式 的文章中使用 .NET 5 实现了客户端凭证模式,这篇文章中将将继续使用 .NET 5 实现 OAuth 2.0 隐含式( Implicit ),隐含模式现在已经不推荐使用了,应该使用安全度更高的 Authorization Code Flow 或者 Authorization Code Flow With PKCE,现在只适合于一些对安全性要求不高的应用。
上一篇 OAuth 2.0 的文章中介绍了 OAuth 2.0 标准中颁发令牌的几种模式,这篇文章中将使用 .NET 5 实现客户端凭证模式( Client Credentials ),客户端凭证模式适合于没有 GUI 的命令行应用 CLI或者M2M设备。
现如今,微信和支付宝以一种近乎病毒式的发展速度蔓延到了互联网的每一个角落,你几乎可以在所有主流应用上面看到以微信,或者以支付宝登录的字样,这种方式就是 OAuth 授权方式,让第三方应用不会触及到用户的帐号信息(如用户名与密码),即第三方应用无需使用用户的用户名与密码就可以申请获得该用户资源的授权。
gRpc 是 Google 开源的一个与语言无关的高性能远程过程调用 (RPC) 框架,RPC(Remote Procedure Call Protocol)远程过程调用协议。一个通俗的描述是:客户端在不知道调用细节的情况下,调用存在于远程计算机上的某个对象,就像调用本地应用程序中的对象一样。
随着.NET 5 正式版的发布,我相信.NET 社区以及使用.NET 技术栈的工程师们已迎来新血液,.NET 5 发布了诸多新功能,例如:Top-level programs,这让我们可以像写脚本语言一样,不用需要声明命名空间和类,直接开写。新一代 GC,更高的编译性能,Dictionary<K,V>的匿名声明支持等等,其中有一项功能我在预览版就已经用于我的项目,并且解决了非常大的痛点,这项功能就是 Source Generators
随着 .NET 5.0 预览版的出现,Blazor 也正式发布了,之前写过一个英雄联盟的战绩查询网站,用的是初代的 Blazor ,现在 dotnet 5.0 preview 也正式更新了全新的 Blazor,我也是第一时间体验,毕竟大家都是有经验的程序员,我们只从技术选型,开发体验,框架设计等维度,浅层的聊一聊,
最近在做跨平台(Mac OS 和 Windows)的项目,虽然最终采用了 QT 和 C++ 的组合,但是依然试水一下 Avalonia ,毕竟是 Star 了好几年的跨平台 WPF 框架,因为之前一直没有跨 Mac OS 的需求,所以一直在用 Windows 平台下的 .NET WPF,今天来看看 Avalonia 跨平台 WPF 的体验吧。
在分布式架构中,服务治理是必须面对的问题,如果缺乏简单有效治理方案,各服务之间只能通过人肉配置的方式进行服务关系管理,当遇到服务关系变化时,就会变得极其麻烦且容易出错,Consul 是一个用来实现分布式系统服务发现与配置的开源工具。它内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value 存储、多数据中心方案,不再需要依赖其他工具(比如 ZooKeeper 等),使用起来也较为简单。
最近在面试大厂中,面试官频繁的问到一个问题,**.NET 框架是什么?怎么运行?**可以详细解释一下吗?还好之前看过《CLR VIA C#》这本著作,还是可以回答上的,现在想通过这次机会写一篇系统的文章来介绍一下。
今天在部署 .NET Core WebAPI 的时候发现一个问题,就是当Linux的Shell停止的时候,我的WebAPI服务也停止了,因为DotNet一直要保持RunTime模式才能让你服务持久化运行,查了一下百度,发现可以通过Linux下的一个服务软件 Supervisor 创建守护进程来持续的让你的服务保持活力。