.net core实践系列之SSO-跨域实现】的更多相关文章

前言 接着上篇的<.net core实践系列之SSO-同域实现>,这次来聊聊SSO跨域的实现方式.这次虽说是.net core实践,但是核心点使用jquery居多. 建议看这篇文章的朋友可以先看上篇<.net core实践系列之SSO-同域实现>做一个SSO大概了解. 源码地址:https://github.com/SkyChenSky/Core.SSO.git 效果图 知识点回顾 实现原则 只要统一Token的产生和校验方式,无论授权与认证的在哪(认证系统或业务系统),也无论用户…
前言 经过两周多的业余时间,终于把该系列的文章写完了.第一次写系列,可能部分关键点并没有覆盖到,如果有疑问的朋友可以随时反馈给我.另外也感谢在我发布文章时给予我方案建议与反馈源码BUG的朋友们.下面是整理了该系列的一些信息.希望帮助到有需要的朋友. 源码地址 https://github.com/SkyChenSky/Sikiro.SMS befor分支:是第二篇到第六篇的源码 optimize分支:是第七篇优化后的源码 目录 .net core实践系列之短信服务-为什么选择.net core(…
前言 上篇<.net core实践系列之短信服务-为什么选择.net core(开篇)>简单的介绍了(水了一篇).net core.这次针对短信服务的架构设计和技术栈的简析. 源码地址:https://github.com/SkyChenSky/Sikiro.SMS 为什么需要架构设计 有人会问短信服务也要架构设计?不就写个service封装个send方法就得了吗?干嘛还要大动干戈. 如果在单块应用的情况下,以上面的做法是无可厚非的. 然而架构设计解决的是应用复杂度,架构设计的大还是小取决于业…
前言 上篇<.net core实践系列之短信服务-架构设计>介绍了我对短信服务的架构设计,同时针对场景解析了我的设计理念.本篇继续讲解Api服务的实现过程. 源码地址:https://github.com/SkyChenSky/Sikiro.SMS 此服务会使用.NET Core WebApi进行搭建,.NET Core WebApi基础原型就是RESTful风格,然而什么叫RESTful呢. REST API简介 REST Representational State Transfer的缩写…
前言 上一篇<.net core实践系列之短信服务-Sikiro.SMS.Api服务的实现>讲解了API的设计与实现,本篇主要讲解编写接口的SDK编写还有API的测试. 或许有些人会认为,SDK的编写可以不需要,既然已经用了RESTful web服务与Swagger提供的接口描述,只要选择合适的接口调用框架,找到对应Swagger文档按需调用即可. 这个我赞同,特别在微服务架构下使用了API网关与服务发现.因此本篇也是借用编写SDK来模拟在客户端使用接口框架调用,并增加负载测试的讲解,供需要的…
前言 前两篇<.net core实践系列之短信服务-Sikiro.SMS.Api服务的实现>.<.net core实践系列之短信服务-Api的SDK的实现与测试>分别讲解了API提供服务与SDK调用API实现. 本篇会继续讲解Sikiro.SMS.Bus的服务实现,此实现是基于开篇的架构设计的拥有调度任务服务,在最后一篇会给架构优化的,抛弃了调度任务服务使用MQ代替. 源码地址:https://github.com/SkyChenSky/Sikiro.SMS 功能流程描述 如上图所…
前言 SSO的系列还是以.Net Core作为实践例子与大家分享,SSO在Web方面复杂度分同域与跨域.本篇先分享同域的设计与实现,跨域将在下篇与大家分享. 如有需要调试demo的,可把SSO项目部署为域名http://sso.cg.com/,Web1项目部署为http://web1.cg.com,http://web2.cg.com,可以减少配置修改量 源码地址:https://github.com/SkyChenSky/Core.SSO 效果图 SSO简介 单点登录,全称为Single Si…
接上篇的允许跨域 4.CORS 策略(Policy)的选项 这里讲解Policy可以设置的选项: 设置允许的访问源 设置允许的HTTP methods 设置允许的请求头(request header) 设置暴露的响应头(response header) 跨不同源请求的证书(Credentials) 设置过期时间 AddPolicy 在StartUp.ConfigureServices方法中调用:对于一些选项,先阅读一下,CORS是怎么工作的,可能会有帮助 设置允许的源(Origins) Allo…
这一节主要讲如何测试跨域问题 你可以直接在官网下载示例代码,也可以自己写,我这里直接使用官网样例进行演示 样例代码下载: Cors 一.提供服务方,这里使用的是API 1.创建一个API项目.或者直接下载样例代码 2.像之前讲的那样设置允许CORS,例如: public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExce…
序言 学习core登录认证与跨域资源共享是越不过的砍,所以我在学习中同样也遇到啦这两个问题,今天我们就用示例来演示下使用下这2个技术点吧. 本篇主要内容如下: 1.展示一个登录认证的简单示例 2.跨域资源访问 3.跨域获取登录认证的用户信息 .Net Core使用身份认证(Authentication,Identity)制作登录认证功能 首先我们实现登录这个功能,代码如下 [Authorize] public class AccountController : Controller { [Htt…