asp.net core系列 61 Ocelot 构建服务发现简单示例

一.概述  Ocelot允许指定服务发现提供程序,如Consul或Eureka。 这二个中间件是用来实现:服务治理或秒服务发现,服务发现查找Ocelot正在转发请求的下游服务的主机和端口。目前Ocelot仅在GlobalConfiguration部分支持配置服务发现功能

Mr.Pan
阅读(573)
2019-09-02

asp.net core系列 60 Ocelot 构建服务认证示例

一.概述  在Ocelot中,为了保护下游api资源,用户访问时需要进行认证鉴权,这需要在Ocelot网关中添加认证服务。添加认证后,ReRoutes路由会进行身份验证,并使用Ocelot的基于声明的功能。在Startup.cs中注册认证服务,为每个注册提供一个方案 (

Mr.Pan
阅读(412)
2019-09-02

asp.net core系列 59 Ocelot 构建基础项目示例

一.入门概述  从这篇开始探讨Ocelot,Ocelot是一个.NET API网关,仅适用于.NET Core,用于.NET面向微服务/服务的架构中。当客户端(web站点、ios、 app 等)访问web api时,需要先统一入口点进入Ocelot网关(Ocelot可以

Mr.Pan
阅读(382)
2019-09-02

asp.net core系列 58 IS4 基于浏览器的JavaScript客户端应用程序

一. 概述  本篇探讨使用基于浏览器的JavaScript客户端应用程序。与上篇实现功能一样,只不过这篇使用JavaScript作为客户端程序,而非core mvc的后台代码HttpClient实现。 功能一样:用户首先要登录IdentityServer站点,再使用Id

Mr.Pan
阅读(432)
2019-09-02

asp.net core系列 57 IS4 使用混合流(OIDC+OAuth2.0)添加API访问

一.概述  在上篇中,探讨了交互式用户身份验证,使用的是OIDC协议。 在之前篇中对API访问使用的是OAuth2.0协议。这篇把这两个部分放在一起,OpenID Connect和OAuth 2.0组合的优点在于:可以使用单个协议和令牌服务,进行单次交换来实现这两者。 

Mr.Pan
阅读(529)
2019-08-31

asp.net core系列 56 IS4使用OpenID Connect添加用户认证

一.概述  在前二篇中讲到了客户端授权的二种方式: GrantTypes.ClientCredentials凭据授权和GrantTypes.ResourceOwnerPassword密码授权,都是OAuth2.0协议。本篇使用OpenID Connect添加用户认证,客

Mr.Pan
阅读(503)
2019-08-31

asp.net core系列 55 IS4使用Identity密码保护API

一.概述  OAuth 2.0资源(web api)所有者密码授权,允许客户端(Client项目)向令牌服务(IdentityServer项目)发送用户名和密码,并获取代表该用户的访问令牌。在官方文档中讲到:规范通常建议不要使用“资源所有者密码授权”。当用户进行身份验证

Mr.Pan
阅读(498)
2019-08-31

asp.net core系列 54 IS4用客户端凭据保护API

一. 概述  本篇开始进入IS4实战学习,从第一个示例开始,该示例是 “使用客户端凭据保护API”,这是使用IdentityServer保护api的最基本场景。该示例涉及到三个项目包括:IdentityServer项目、API项目、Client项目,都有自己的宿主,为了

Mr.Pan
阅读(460)
2019-08-31

asp.net core系列 53 IdentityServer4 (IS4)介绍

一.概述  在物理层之间相互通信必须保护资源,需要实现身份验证和授权,通常针对同一个用户存储。对于资源安全设计包括二个部分,一个是认证,一个是API访问。   1 认证    认证是指:应用程序需要知道当前用户的身份时,需要进行身份验证,确定用户是否有效。最常见的身份验

Mr.Pan
阅读(545)
2019-08-31

asp.net core系列 52 Identity 其它关注点

一.登录分析  在使用identity身份验证登录时,在login中调用的方法是:  varresult=await_signInManager.PasswordSignInAsync(Input.Email,Input.Password,Input.RememberM

Mr.Pan
阅读(616)
2019-08-31

asp.net core系列 51 Identity 授权(下)

1.6 基于资源的授权  前面二篇中,熟悉了五种授权方式(对于上篇讲的策略授权,还有IAuthorizationPolicyProvider的自定义授权策略提供程序没有讲,后面再补充)。本篇讲的授权方式不是一种全新的授权方式,而是授权应用场景的灵活控制。  基于资源的授

Mr.Pan
阅读(487)
2019-08-31

asp.net core系列 50 Identity 授权(中)

1.5 基于策略的授权  在上篇中,已经讲到了授权访问(authorization)的四种方式。其中Razor Pages授权约定和简单授权二种方式更像是身份认证(authentication) ,因为只要是合法用户登录就能访问资源。 而角色授权和声明授权二种方式是真正

Mr.Pan
阅读(484)
2019-08-31

asp.net core系列 49 Identity 授权(上)

一.概述 授权是指用户能够访问资源的权限,如页面数据的查看、编辑、新增、删除、导出、下载等权限。ASP.NET Core 授权提供了多种且灵活的方式,包括:Razor pages授权约定、简单授权、Role角色授权、Claim声明授权、Policy策略授权、资源授权、视

Mr.Pan
阅读(828)
2019-08-31

asp.net core系列 48 Identity 身份模型自定义

一.概述  ASP.NET Core Identity提供了一个框架,用于管理和存储在 ASP.NET Core 应用中的用户帐户。Identity添加到项目时单个用户帐户选择作为身份验证机制。默认情况下,Identity可以使用的 Entity Framework (

Mr.Pan
阅读(554)
2019-08-31

asp.net core系列 47 Identity 自定义用户数据

一.概述 接着上篇的WebAppIdentityDemo项目,将自定义用户数据添加到Identity DB,自定义扩展的用户数据类应继承IdentityUser类, 文件名为Areas / Identity / Data / {项目名称}User.cs。自定义的用户数据

Mr.Pan
阅读(555)
2019-08-31