02 2023 档案

摘要:JWT只是缩写,全称则是JSON Web Tokens,是目前流行的跨域认证解决方案,是基于开放标准RFC7519,提供一种身份认证与信息交换的解决方案,是一种基于JSON的用于在网络上声明某种主张的令牌(token)。 由于http的连接是状态的特性,server端和client是不会记住每个请求是谁发过来的,也不会知道当前发送请求的用户是否已经对过身份认证,如果用户的每一个请求,都要与数据库通讯进行身份认证,会增加server和数据库的成本。因此,之前的Web应用一般都会用session或 cookie的方式解決。 通俗地说,JWT的本质就是一个字符串,它是将用户信息保存到一个Json字符串中,然后进行编码后得到一个JWT token,并且这个JWT token带有签名信息,接收后可以校验是否被篡改,所以可以用于在各方之间安全地将信息作为Json对象传输。 阅读全文
posted @ 2023-02-26 13:01 DotNet菜园 阅读(3464) 评论(3) 推荐(5)
摘要:登录的本质原理同网页应用是一样的,一般的流程是:用户打开登页--》输入账号密码后提交表单--》服务端验证成功后生成cookie信息写入浏览器--》之后用户访问页面时浏览器会带上此cookie信息作为用户标识--》服务端解析此cookie信息就能识别这个用户了。 在webapi出现之后,出现了JWT这样的认证方式,原理大同小异,相同的是, 认证信息都是保存在请求头中传递的,不同是JWT中的认证信息需要编码写入请求头之后再发送请求,不像浏览器,发送请求时会自动带上cookie信息,不需要编码。 阅读全文
posted @ 2023-02-19 19:53 DotNet菜园 阅读(3491) 评论(0) 推荐(2)
摘要:通过前面三篇文章的学习,我们虽然实现了登录功能,但那还不是我们希望的登录首页。 我们希望的登录功能,用户在登录图书租赁系统的时候,如果没有进行登录是无法看到任何功能菜单,并且页面一直显示登录页面。 阅读全文
posted @ 2023-02-12 12:12 DotNet菜园 阅读(2837) 评论(2) 推荐(4)
摘要:虽然在上一篇文章(学习ASP.NET Core Blazor编程系列二十三——登录(2) )中我们制作出了登录页面,但那个登录页面,不符合我们平时使用的样式,需要进行修改,同时也没有实现登录验证。这一文章学习如何对Login.razor使用特有的布局组件,实现正常的登录样式,学习使用AuthenticationStateProvider类来进行登录验证。 阅读全文
posted @ 2023-02-05 11:27 DotNet菜园 阅读(3621) 评论(0) 推荐(5)