owin-middleware相关内容

带有 OpenIdAuthentication 的 ASP.NET:如果未授权,则重定向到 url

我正在尝试编写一个使用混合身份验证方案的 ASP.NET 应用程序.用户可以将其用户名和密码哈希存储在 UserStore 中,也可以通过 Azure Active Directory 进行身份验证. 我已经创建了如图所示的登录表单.它具有标准的 UserName 和 Password 输入,还具有“通过 Active Directory 登录"按钮. 这很好用. 现在解决问题: ..

如何安全地拦截自定义 Owin 中间件中的响应流

我正在尝试编写一个简单的 OWIN 中间件,以便拦截响应流.我想要做的是用自定义的基于 Stream 的类替换原始流,在那里我将能够拦截对响应流的写入. 但是,我面临一些问题,因为我不知道响应何时被链中的内部中间件组件完全写入.永远不会调用 Stream 的 Dispose 覆盖.所以我不知道什么时候执行我的处理,这应该发生在响应流的末尾. 这是一个示例代码: 公共密封类Custom ..
发布时间:2022-01-07 19:59:01 C#/.NET

更改每个请求的 OWIN 身份验证中间件(多租户,每个租户的 oauth API 密钥)

我有一个多租户应用程序.每个租户都可以通过 Facebook、Twitter、Google 等使用 OAUTH-2 对其用户进行身份验证.每个租户都有自己的用于上述服务的 API 密钥. 设置 OWIN 管道的典型方法是在启动中“使用"身份验证提供程序,但这会在应用启动时设置 API 密钥.我需要能够为每个请求更改每个 oauth API 使用的密钥. app.UseCookieAuth ..
发布时间:2021-12-29 15:01:27 其他开发

如何在受 WAAD 保护的 web api 2 中获取电子邮件

我正在使用由“UseOpenIdConnectAuthentication"保护的 MVC 5 客户端并在 Claims 对象中获取所有用户详细信息,该客户端通过“Bearer"身份验证令牌调用 WAAD 安全 Web Api. 我需要在 web api 中获取用户名或电子邮件.我尝试了不同的选择,但没有任何效果. 我在 Identity.Name 中得到 null,我得到的其他属性如 ..
发布时间:2021-11-15 04:55:12 其他开发

ASP.NET OWIN OpenID Connect 不创建用户身份验证

我有一个 ASP.NET 4.6 Web 应用程序,我正在尝试使用 OWIN 添加 OpenId Connect. 我添加了我的 Owin 启动类,一切似乎都配置正确,但我遇到的问题是从未创建过 ASP 身份/身份验证用户.我最终陷入无限循环,OpenId 回调页面重定向回原始页面,然后重定向到登录页面等. 这是我的创业班: public void Configuration(IAp ..
发布时间:2021-06-12 20:15:36 C#/.NET

OWIN Katana中间件:如果返回的声明在其中没有特定角色,如何阻止用户?

我已经在Identity Server上成功验证了用户的身份,并取回了声明(以及作为角色的角色).当我不考虑角色时,一切都很好.我要限制用户,除非他具有特定角色,然后将他重定向到专门创建的“未经授权"或“拒绝访问"页面.下面的以下代码不会引发未经授权的异常. var canAccessPortal = id.HasClaim(c => c.Type =="role"&& c.Value ==" ..

如何获取广告访问令牌并将其传递给Web API控制器?

如何从login.microsoftonline.com获取AD访问令牌并将访问令牌传递给Web API控制器?因为我需要这样的“访问令牌"才能通过邮寄请求传递到另一个合作伙伴公司的网站网址. 下面的代码按预期进行AAD身份验证,但是我同样需要“访问令牌", public void ConfigureServices(IServiceCollection服务){services.Conf ..

我可以在自定义中间件中添加新的作用域服务吗?

我在Asp .Net Core中使用WebApi,我想知道是否/如何添加新的作用域服务,以便所有后续的中间件和控制器都可以通过依赖注入来访问?还是应该与HttpContext.Items共享状态?因为HttpContext在WebApi控制器中根本不可用,所以这似乎不是它的预期目的. 如果HttpContext或DI都不是正确的工具,那么如何在不从头开始创建状态的情况下,在请求管道中传播状态 ..
发布时间:2020-07-02 04:48:23 C#/.NET

设置响应ContentType的中间件

在基于ASP.NET Core的Web应用程序中,我们需要执行以下操作:某些请求的文件类型应获取自定义ContentType作为响应.例如. .map应该映射到application/json.在“完整" ASP.NET 4.x中以及与IIS结合使用时,可以使用web.config /来实现此功能,我想用自定义ASP.NET Core中间件来替换此行 ..
发布时间:2020-07-02 04:48:19 C#/.NET

ASP.NET Core中间件还是OWIN中间件?

据我了解,除了自己的本机中间件,ASP.NET Core还支持OWIN中间件(通过app.UseOwin()). ASP.NET Core中间件和OWIN中间件有什么区别? 在设计新的中间件时,如何知道应将其设计为ASP.NET Core中间件还是OWIN中间件? 解决方案 您的问题让我感到好奇,我想分享一下我到目前为止所学到的知识. Katana是OWIN规范的实现.在 ..
发布时间:2020-07-02 04:48:16 其他开发

资源服务器中的OwinMiddleware实现抑制令牌验证

我已经设置了资源服务器(Web Api 2)以验证传入请求的JWT令牌. JWT令牌由Aut​​h0颁发,我的客户端将其传递给我的Web api.如果“发行者",“受众"或“到期日"无效,则所有这些都可以正常工作并引发401响应.当我添加从OwinMiddleware派生的自定义中间件时,它会抑制令牌验证逻辑,并且对于无效请求会收到200条响应. public class Startup { ..

如何在受WAAD保护的Web API 2中获取电子邮件

我正在使用受"UseOpenIdConnectAuthentication"保护的MVC 5客户端,并在Claims对象中获取所有用户详细信息,该客户端通过“承载者"身份验证令牌调用WAAD保护的Web Api. 我需要在网络api中获取用户名或电子邮件.我尝试了其他选项,但没有任何效果. 我的Identity.Name,其他属性(例如nameidentifier,objectiden ..
发布时间:2020-05-23 19:02:15 其他开发

将自定义参数发送给外部身份提供商

是否可以将自定义参数发送到外部登录提供程序/自定义owin中间件 我有一个处理身份验证的 Identity Server 3 ,我有一个处理用户登录的外部身份提供程序中间件, 要登录,我必须向中间件发送令牌,中间件用来进行身份验证. 我尝试了以下方法: acr_values :我将令牌作为acr_value发送,但是这种方法由于以下两个原因而无效: 令牌要长(大于900个字符, ..
发布时间:2020-05-23 19:01:14 其他开发

Owin.TestServer测试需要身份验证的中间件

我有一个中间件方法,需要解析 context.Authentication.User.Identity.Name 才能正确执行.但是,在编写单元测试时,这些属性显然为null,因为未发生登录.我没有在此中间件中使用Oauth或任何相关的身份验证(除了明显的name属性),因为它应该在另一个中间件中的其他地方处理(以促进我正在开发的组件的重用/灵活性).有没有一种方法可以模拟/伪造此值,以便我可以运 ..
发布时间:2020-05-23 19:00:38 其他开发

C#:修改Owin响应流导致AccessViolationException

我正在尝试使用某些自定义的Owin中间件在特定情况下修改(在这种情况下,完全替换)响应流. 任何时候只要我打出确实触发我的中间件来替换响应的调用,一切都会正常进行.仅当我致电我的中间件未对其进行更改时,才会出现此问题.此外,当替换为不的API调用返回手动创建的HttpResponseMessage对象时,我只能出现错误. 例如,调用此API: public class testC ..
发布时间:2020-05-23 18:59:00 C#/.NET