首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ASP.NET核心2上的SustainSys.Saml2 - GetExternalLoginInfoAsync()返回null

ASP.NET核心2上的SustainSys.Saml2是一个用于实现SAML 2.0身份验证的开源库。它提供了一种在ASP.NET Core应用程序中使用SAML 2.0进行单点登录(SSO)的方式。

GetExternalLoginInfoAsync()是SustainSys.Saml2库中的一个方法,用于获取外部登录信息。它的作用是从SAML响应中提取用户的身份信息,并将其封装在一个对象中返回给应用程序。

然而,当GetExternalLoginInfoAsync()返回null时,可能有以下几个原因:

  1. SAML响应中没有包含有效的用户身份信息。这可能是由于SAML请求中的配置错误、身份提供商未正确配置或者用户身份验证失败等原因导致的。在这种情况下,需要检查SAML配置和身份提供商的设置,确保其正确性。
  2. SAML响应的解析过程中发生了错误。这可能是由于SAML响应格式不正确、签名验证失败或者解析过程中的其他错误导致的。在这种情况下,需要检查SAML响应的格式和签名,并确保其正确性。
  3. 应用程序代码中存在错误。这可能是由于应用程序代码中对GetExternalLoginInfoAsync()方法的调用或处理逻辑有误导致的。在这种情况下,需要仔细检查应用程序代码,并确保正确调用和处理GetExternalLoginInfoAsync()方法。

为了解决这个问题,可以采取以下步骤:

  1. 检查SAML配置和身份提供商的设置,确保其正确性。
  2. 检查SAML响应的格式和签名,并确保其正确性。
  3. 仔细检查应用程序代码,确保正确调用和处理GetExternalLoginInfoAsync()方法。

如果以上步骤都没有解决问题,可以参考SustainSys.Saml2的官方文档和社区支持,寻求更多帮助和解决方案。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云身份认证服务(CAM):https://cloud.tencent.com/product/cam
  • 腾讯云安全计算服务(SCF):https://cloud.tencent.com/product/scf
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云CDN加速(CDN):https://cloud.tencent.com/product/cdn
  • 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(IoT):https://cloud.tencent.com/product/iot
  • 腾讯云移动开发(MPS):https://cloud.tencent.com/product/mps
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云区块链(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云元宇宙(Metaverse):https://cloud.tencent.com/product/metaverse
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ASP.NET MVC 随想录—— 使用ASP.NET Identity实现基于声明授权,高级篇

应用程序,我们应用程序被认为是获取用户所有信息权威来源,所以本质可以将应用程序视为封闭系统,它包含了所有的用户信息。...Identity 已经很好集成到ASP.NET 平台中,而HttpContext.User.Identity 属性返回一个 IIdentity 接口实现,而当与ASP.NET Identity 结合使用时...,返回是ClaimsIdentity 对象。...一个声明对象代表了用户一条单独信息数据,声明对象包含如下属性: Issuer 返回提供声明认证方名称 Subject 返回声明指向ClaimIdentity 对象 Type 返回声明代表信息类型...: DefaultUserName 返回用户名 Email 返回Email 地址 ExternalIdentity 返回代表用户ClaimIdentity Login 返回一个UserLoginInfo

2.3K80
  • ASP.NET Web API路由系统:Web Host下URL路由

    实现在HostedHttpRoute之中核心路由功能基本是通过这个Route对象完成,所以我们才说Web Host下ASP.NET Web APIURL路由最终还是利用ASP.NET自身路由系统实现...如果调用RouteGetRouteData方法返回Null,最终返回结果自然为Null。...倘若方法返回Null,那么最终返回自然就是Null。...通过上面的介绍,HostedHttpRoute对象实际是对一个HttpWebRoute对象封装,对应其OriginalRoute属性,最终被添加到ASP.NET全局路由表就是这么一个HttpWebRoute...通过前面针对ASP.NET路由实现原理介绍,我们知道整个路由系统核心是一个叫做UrlRoutingModuleHttpModule,它通过注册HttpApplicationPostResolveRequestCache

    1.6K100

    ASP.NET MVC基于标注特性Model验证:DataAnnotationsModelValidator

    对于ASP.NET MVC基于标注特性Model验证,很多人只知道应用在数据类型及其属性用于定义验证规则和错误消息ValidationAttribute。...通过《ASP.NET MVC以ModelValidator为核心Model验证体系: ModelValidator》介绍,我们知道了最终用于进行Model验证是一个叫做ModelValidator...在该方法中,基于被验证对象(如果为Null则采用Model元数据Model属性)创建出表示当前验证上下文ValidationContext对象,并采用Model元数据DisplayName属性作为该上下文显示名称...对象并返回。...当我们将这些ValidationAttribute应用到Model类型时,真正用于Model验证实际就是这些作为适配ModelValidator。

    1.1K110

    定义一个方法,功能是找出一个数组中第一个只重复出现2元素,没有则返回null。例如:数组元素为 ,重复两次元素为4和2,但是元素4排在2前面,则结果返回

    在本篇博客中,我们将探讨如何实现一个方法,该方法能够在给定整数数组中,找出第一个仅重复出现两次元素。如果数组中不存在这样元素,则方法将返回null。...定义一个方法,功能是找出一个数组中第一个只重复出现2元素,没有则返回null。...例如:数组元素为 [1,3,4,2,6,3,4,2,3],重复两次元素为4和2,但是元素4排在2前面,则结果返回4。...6, 3, 4, 2, 3}; Map m = new LinkedHashMap(); //...我们使用另一个循环遍历m所有键(元素),并检查对应值(出现次数)。如果某个元素出现次数为2,我们将该元素值赋给value,然后跳出循环。

    21210

    Asp.Net WebApi核心对象解析(二)

    扯淡完毕,接着聊正事,一篇写Asp.Net WebApi核心对象解析(上篇),本文是下篇,不管写怎么样,还望大家多多指正。...(2).Web托管,即在IIS之上使用ASP.NET管道进行托管。...(在一个owin兼容服务器建立一个webapi层)      在使用web托管时,所使用ASP.NET管道和路由功能,将HTTP请求转发到一个新ASP.NET处理程序,HttpControllerHandler...Timeout:获取或设置毫秒数请求超时之前等待。    2.方法概要:      CancelPendingRequests:取消此实例所有未决请求。      ...五.总结:    本文分为上下两篇,简单介绍类一下Asp.Net WebApi一些核心对象,并简单介绍了Asp.Net WebApi路由机制,处理架构,托管方式等等,如有不足和错误之处还望多多指正。

    3.1K100

    探索ASP.NET MVC5系列之~~~2.视图篇()---包含XSS防御和异步分部视图处理

    这个应用场景还是比较多,比如同样是Article集合,一个是显示最新文章列表,一个是显示文章列表,一个是显示编辑推荐文章列表,基本都是这种结构,那么是不是可以把这种...解决方法:@Ajax.JavaScriptStringEncode(ViewBag.Test2) ?...如果你视图是aspx记得过滤HTML,JS,URL哦~基本问题都出在这 7.布局系列 1._ViewStart MVC5以前都是要手动引用”母版页“ ?...2.RenderSection~~呈现特别的节部分 一般不推荐这么写: ? 如果子页面没有定义Footer节,那么就报错了 ?...参考:http://www.2cto.com/Article/201201/115876.html http://blog.csdn.net/jingmeifeng/article/details/7788603

    2.2K70

    asp.net MVC 应用程序生命周期

    MVC框架出现之前,我们大部分开发所使用框架都是ASP.NET WebForm.其实不管是MVC还是WebForm,在请求处理机制,大部分是相同。...HttpApplication是整个ASP.NET基础架构核心,负责处理分发给他请求。HttpApplication处理请求周期是一个复杂过程,在整个过程中,不同阶段会触发相映事件。...就是说不管MVC还是WebForm,最终都要经过这19个事件处理,那么除了刚才说MVC和WebFrom在请求处理机制大部分都是相同,不同之处在哪呢?他们是从哪里开始分道扬镳呢?...在ASP.NET MVC中,最核心的当属“路由系统”,而路由系统核心则源于一个强大System.Web.Routing.dll组件。...controller对象实际使用ActionInvoker来调用Action方法,当Controller对象被创建后,会执行Controller对象基类ControllerBase类里面的Excute

    1.9K90

    asp.net MVC 应用程序生命周期

    MVC框架出现之前,我们大部分开发所使用框架都是ASP.NET WebForm.其实不管是MVC还是WebForm,在请求处理机制,大部分是相同。...HttpApplication是整个ASP.NET基础架构核心,负责处理分发给他请求。HttpApplication处理请求周期是一个复杂过程,在整个过程中,不同阶段会触发相映事件。...就是说不管MVC还是WebForm,最终都要经过这19个事件处理,那么除了刚才说MVC和WebFrom在请求处理机制大部分都是相同,不同之处在哪呢?他们是从哪里开始分道扬镳呢?...在ASP.NET MVC中,最核心的当属“路由系统”,而路由系统核心则源于一个强大System.Web.Routing.dll组件。...controller对象实际使用ActionInvoker来调用Action方法,当Controller对象被创建后,会执行Controller对象基类ControllerBase类里面的Excute

    1.7K30

    ASP.NET MVC是如何运行: URL路由

    对于每一个抵达HTTP请求,ASP.NET MVC会遍历路由表找到一个URL模板模式与请求地址相匹配路有对象,并最终解析出以Controller和Action名称为核心路由数据。...我们之前已经提到过ASP.NET MVC本质是两个自定义ASP.NET组件来实现,一个是自定义HttpModule,另一个是自定义HttpHandler,而后者从RouteDataRouteHandler...顾名思义,RequestContext表示当前(HTTP)请求上下文,其核心就是对当前HttpContext和RouteData封装,这可以通过如下代码片断看出来。...在实现GetRouteData方法中,通过HttpContextBase获取相对请求地址,如果该地址与定义在模板中URL模式相匹配则创建一个RouteData返回;否则返回Null。...ASP.NET MVC是如何运行[1]: 建立在“伪”MVC框架上Web应用 ASP.NET MVC是如何运行[2]: URL路由 ASP.NET MVC是如何运行[3]: Controller

    1.8K60

    asp.net MVC 应用程序生命周期

    MVC框架出现之前,我们大部分开发所使用框架都是ASP.NET WebForm.其实不管是MVC还是WebForm,在请求处理机制,大部分是相同。...HttpApplication是整个ASP.NET基础架构核心,负责处理分发给他请求。HttpApplication处理请求周期是一个复杂过程,在整个过程中,不同阶段会触发相映事件。...就是说不管MVC还是WebForm,最终都要经过这19个事件处理,那么除了刚才说MVC和WebFrom在请求处理机制大部分都是相同,不同之处在哪呢?他们是从哪里开始分道扬镳呢?...在ASP.NET MVC中,最核心的当属“路由系统”,而路由系统核心则源于一个强大System.Web.Routing.dll组件。...controller对象实际使用ActionInvoker来调用Action方法,当Controller对象被创建后,会执行Controller对象基类ControllerBase类里面的Excute

    1.3K10

    自己动手写一个简单MVC框架(第二版)

    一、ASP.NET MVC核心机制回顾   在ASP.NET MVC中,最核心的当属“路由系统”,而路由系统核心则源于一个强大System.Web.Routing.dll组件。 ?   ...在ASP.NET MVC中,会调用MvcHandlerProcessRequest()方法,此方法会激活具体请求Controller类对象,触发Action方法,返回ActionResult实例。...② 花样返回类型 : ActionResult 以及它子类们 ?   ...在以往ASP.NET MVC开发中,我们在Action方法编写中,总会看到它们返回类型都是以ActionResult为基类各种Result类型。...它们区别就在于是不同返回类型,因此有不同处理。   这里以ContentResult 和 JsonResult 为例,来看看具体做了什么处理。

    1.4K20

    ASP.NET MVC是如何运行(4): Action执行

    作为Controller基类ControllerBaseExecute方法核心在于对Action方法执行和作为方法返回ActionResult执行,两者执行是通过一个叫做ActionInvoker...该接口具有唯一BindModel根据ControllerContext和Model名称(在这里实际是参数名称)和类型得到一个作为参数对象。...和真正ASP.NET MVC一样,定义在ContrllerAction方法返回一个ActionResult对象,我们通过指定它Execute方法是先对请求响应。...context); 4: } 在之前创建例子中,Action方法返回是一个类型为RawContentResult对象。...MVC是如何运行[1]: 建立在“伪”MVC框架上Web应用 ASP.NET MVC是如何运行[2]: URL路由 ASP.NET MVC是如何运行[3]: Controller激活

    1.1K101

    asp.net core 3.x 授权默认流程

    一、前言 接上一篇《asp.net core 3.x 授权中概念》,本篇看看asp.net core默认授权流程。...但本篇只以MVC为例 回到顶部 二、核心概念关系图 ?...四、请求阶段处理流程 如果你对mvc稍有经验,就晓得在一个Action使用[Authorize]就可以实施授权,现在我们假设我们在默认mvc项目中HomeController定义如下Action...Action应用了IAllowAnonymous,则放弃授权检查(为毛不早点做这步?)...若授权评估拒绝就直接调用身份验证方案进行拒绝 步骤1、2得益于asp.net core 3.x终结点路由,我们可以在进入MVC框架前就拿到Action及其之上应用各种Atrribute,从而得到我们对当前授权策略定制所需要数据

    1.9K20
    领券