在Angular中从ASP.NET Web API 2的跨源http.get请求的响应中获取特定的响应头(例如,Content-Disposition)。
当我通过Angular服务访问它时,我无法获得特定的标头(Content-Disposition).启用了CORS,并将Angular HTTPClient设置为检索所有标题. startup.cs public void Configuration(IAppBuilder app) { HttpConfiguration config = new HttpConfiguration(); WebApiConfig.Register(config); ConfigureOAuth(app, config); app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll); app.UseWebApi(config); } filecontroller.cs [Route("file
0 2024-02-20
编程技术问答社区
MVC5 OWIN ws-federation AuthenticationManager.GetExternalLoginInfoAsync()返回null
我正在尝试在Visual Studio 2013中一个新的MVC 5项目中设置Integup Owin WS-Federation(ADFS)身份验证. app.UseWsFederationAuthentication(wtrealm: "MyRealm", metadataAddress: "https://myADFSInstanceHost/FederationMetadata/2007-06/FederationMetadata.xml"); 登录页面上的联邦按钮正常工作. ADFS登录页面是可以实现的,我可以在那里登录. 所需的cookie似乎是正确设置的.至少通过.aspnet.externalcookie cookie. 但是,当执行对MVC应用程序的回调时,在externalloginCallback控制器AuthenticationManager.getExternalloginInfoasync()返回始终为null.
4 2024-01-19
编程技术问答社区
使用AD FS和OWIN的SSO如何创建账户和处理权限
我配置了使用AD FS的Web应用程序,为此我使用Owin. 对于登录,一切都可以.如果我是域的用户,然后访问网站,他将自动连接. ,但是我想拥有的是登录后独自处理用户和角色. 因此,我想检查使用此广告帐户的数据库中的用户是否存在(此过程将在另一个应用程序的登录之前进行) ) 我想使用Microsoft的身份来处理索赔(角色和权限).但是我不明白如何将代码从AD FS(WS-FEDERATION)处理成功的连接,并添加验证并填写正确的角色. 我在configureauth中的代码: public partial class Startup { private static string realm = ConfigurationManager.AppSettings["ida:Wtrealm"]; private static string adfsMetadata = ConfigurationManager.AppSettings
2 2024-01-19
编程技术问答社区
认证/授权MVC 5和Web API-Katana/Owin
我遇到问题,试图决定采用我拥有的项目的路线. 我一直在阅读.NET中的OWIN规格和Katana实现.我想选择Katana路线的原因是因为与ADF和令牌/Cookie Generation相关的OWIN组件. 我有两个项目,一个用于MVC 5网站,一个用于Web API.他们将来可能会有两个单独的服务器中的其余部分,但是现在它们处于相同状态. 我知道我将使用IIS,所以OWIN管道对我来说不是必需的. 我的要求是,将有一些用户登录使用ADF,而其他将登录使用令牌/Cookie生成的用户,以及角色/会员资格提供商.根据对谁的身份验证,我的网页的某些部分将被暴露.网页工程师在剃须刀中完成. 有人可以阅读任何材料来帮助解释我可以采用的设计流程吗?还是任何人都做了一个类似于我正在添加任何建议的项目?有很多不同的文档描述了我需要的特定内容,但不是全局.就像谈论WebAPI和ADF,Webapi和Windows Azure等 我的理论是在MVC5网站项目,Web AP
0 2024-01-19
编程技术问答社区
使用OWIN Ws-Federation包对ADFS 3.0进行认证
我有一个MVC Intranet网站,需要使用AD帐户进行身份验证. i设置ADFS 3.0(Win Server 2012 R2),然后遵循 this 设置依赖党派信任的ADFS. >此其他帖子介绍了WS-Federation Owin组件,我想使用它.它提到了如何连接到Azure广告,但与ADF有关. 我尝试设置配置属性" metadataaddress"和" wtrealm"以匹配我在ADF中配置的内容,但是在运行时我会遇到错误: A default value for SignInAsAuthenticationType was not found in IAppBuilder Properties. This can happen if your authentication middleware are added in the wrong order, or if one is missing. 我正在寻找正确的方法删除此错误 解决方案
0 2024-01-19
编程技术问答社区
OWIN认证管道如何正确地使用Katana中间件?
我希望使用WSFEDERATION身份验证对内部ADFS 2服务并使用Owin Authentication Pipeline. 什么是应该连接中间件的顺序,在各种情况下都需要哪些模块? ? 例如,似乎应该与UseCookieAuthentication一起使用UseWsFederationAuthentication,但我不确定正确的AuthenticationType是什么( this 帖子表明它只是一个标识符字符串,但是它的价值是显着的吗?)需要使用SetDefaultSignInAsAuthenticationType. 我还注意到 this 在katana项目讨论板上的线程错误,但对于代码的哪一部分错误不是很具体. 以下(使用自定义的SAML令牌处理程序读取令牌字符串中的有效XML文档),但是它是否最佳? var appURI = ConfigurationManager.AppSettings["app:URI"]; var fedPassiv
2 2024-01-19
编程技术问答社区
SignalR MVC 5 Websocket没有有效的凭证
我尝试在MVC应用程序中使用SignalR.它运行良好,但我在Chrome Console中会出现以下错误 WebSocket connection to 'ws://localhost:18245/signalr/connect?transport=webSockets&clientProtocol=1.4&connectionToken=bNDGLnbSQThqY%2FSjo1bt 8%2FL45Xs22BDs2VcY8O7HIkJdDaUJ4ftIc54av%2BELjr27ekHUiTYWgFMfG6o7RaZwhf fpXavzWQ1jvkaxGm5rI%2BWtK7j0g1eQC2aOYP366WmRQLXCiYJfsm4EbwX6T8n2Aw %3D%3D&connectionData=%5B%7B%22name%22%3A%22importerhub% 22%7D%5D&tid=9' failed: HTTP Authentication failed; no v
8 2024-01-12
编程技术问答社区
当在AuthenticationContext实例上调用AcquireTokenByRefreshToken与Microsoft.IdentityModel.Clients.ActiveDirectory?
我正在开发一个在我的Azure AD上注册的多租户应用程序,该应用程序消耗了Office 365 API,Graph API等. 我跟随此Microsoft示例and OpenIdConnect: Microsoft.IdentityModel.Clients.ClivesiveDirectory,版本= 2.19.0.0 在adal.net中,我们使用 authenticationContext 实例,其中 tokencache 的自定义类别(请参阅 对于向授权资源的每个请求,根据API,我们调用其中一种方法(请参见下面的代码)获取将放入请求 bearer auth_token /em>参数.这是正确的方法吗? 我们从不使用方法 acepRetokenByRefreshTokenAsync ,这是否意味着我们的应用程序从未使用 refresh_token ?这是否意味着我们的用户必须在一小时后重新封存?我们是否应该在捕获语句中使用 akeciretokenbyref
0 2024-01-10
编程技术问答社区
Azure ADAL Refresh id_token
我们正在开发一个多租户Web应用程序.我们的租户将使用Windows Azure Active Directory进行身份验证.我们正在使用Owin OpenIDConnect中间件来验证用户.身份验证过程具有ID_TOKEN和授权代码后我们收到的响应. 我们还希望获得刷新令牌,以便一旦ID_Token到期,我们就可以获取新的代币.因此,在Adal库中使用AcquireTokenByAuthorizationCode方法在Adal库中,我们在Adal库中使用刷新令牌.响应包含ID_TOKEN,access_token和Refresh_token. 然后,我们随后使用refersh_token来获取新的ID_TOKEN,但是该响应仅包含续订访问_token,但不包含续订的ID_Token.是否可以刷新ID_TOKEN,或者我们只能刷新Access_Token?授权代码收到的处理程序的代码如下所示. AuthorizationCodeReceived = (context)
2 2024-01-10
编程技术问答社区
asp.net mvc azure AAD认证无限循环
我有一个带有Azure AAD登录的ASP.NET MVC应用程序. 当我按F5调试应用程序到Azure以在AAD中进行身份验证时,它将返回到控制器的应用程序,然后再次重定向回Azure. 我知道这一点,因为如果我在控制器的符号上放一个断点,它将被无限 击中 这是我的路线config public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); //routes.IgnoreRoute(""); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", de
0 2024-01-10
编程技术问答社区
Microsoft.Owin.Security.OpenIdConnect与Azure Active Directory认证票的使用寿命
我正在构建一个多租户网络应用程序,该应用使用 microsoft.owin.security.openidconnect连接Office 365服务,版本= 3.0.0.0.0 和Azure Active Directory用 Microsoft.Interity.InterityModel.Clients . 当我们的服务器和权威服务器之间的身份验证(此处的Azure AD)使用OpenID授权代码流进行,使用ASP.NET cookie对服务器进行身份验证. 我们为ASP.NET cookie设置了30天的滑动终身.但是,即使在设置 usetekenlifetime = true 时,我们仍然可以从权威服务器中使用短暂的AuthenticationTicket,它应该与两个身份验证机制的寿命相匹配.我们遇到的问题是:我们的最终用户必须经常重新浏览(少于小时).问题是,我们如何在此OWIN OpenIDConnect中间件中增加/更改身份验证票的寿命? 备注:我还发布
4 2024-01-10
编程技术问答社区
活动目录账户的Oauth 2令牌
我过去曾在MVC Web API项目中使用OWIN来创建一个令牌端点-9" rel =" nofollow noreferrer">资源所有者密码凭据" 授予类型访问令牌提供商将检查数据库用户表以验证移动客户端提供的凭据的有效性(使用Cordova的Visual Studio工具开发的多平台应用程序). 在此项目中,Web API将由 Active Directory Windows domain帐户 使用的多平台移动应用程序消费 我想使用Owin Oauth 2.0向这些用户授予访问令牌,但我不知道如何检查这些凭据的有效性. 我一直在想将/token端点放在"basic authentication"后面,并且在访问令牌提供商的代码中,从身份证中获取用户,如果使用经过认证,则应由ASP自动创建.净管道. 是可以起作用的东西吗? 您知道将OAuth 2.0用于广告Windows帐户的更好主意吗? 注意: 我还在调查Active Directory是
2 2024-01-10
编程技术问答社区
使用Azure AD时将用户重定向至自定义登录页面
我正在使用以下代码示例将Azure AD登录插入我的应用程序( https:https:https:https:https://github.com/azureadsamples/webapp-openidconnect-dotnet ). 我发现该代码工作正常,但是如果用户尚未登录或他们的会话已过期,我希望能够将用户重定向到自定义登录页面.但是,我正在努力使它工作,并且想知道这是否确实可以吗? 通过设计,用户始终将用户重定向到Azure AD而不是您自己的自定义页面的Microsoft登录页面,还是我错过了设置? 我已经修改了FilterConfig.cs中提供的代码,以启用授权过滤属性: filters.Add(new AuthorizeAttribute()); 我还将以下内容添加到web.config中,但没有效果: 在Startup.A
0 2024-01-10
编程技术问答社区
自我托管的OWIN和urlacl
我使用Microsoft.Owin.Host.HttpListener和Microsoft.Owin.Hosting 在OWIN中创建了一个自托管的南希/信号应用程序 事情在本地很好地工作了,但是一旦我尝试使用Localhost以外的任何东西访问该应用程序,我就会遇到HTTP Error 503. The service is unavailable错误.我什至无法使用127.0.0.1或机器名称访问该应用. 我尝试使用 将端口添加到urlaCl http add urlacl http://*:8989/ user=EVERYONE,但似乎没有做任何事情. 这是我尝试过的OWIN启动选项, var options = new StartOptions { Url = "127.0.0.1", App = GetType().AssemblyQualifiedName, Port = _configFileProvider.Port };
4 2024-01-09
编程技术问答社区
OWIN Oauth区分过期和无效的令牌
我在我的ASP.NET MVC应用程序中使用Owin Oauth来为移动应用程序提供访问令牌.这是Oauth的设置: app.UseOAuthAuthorizationServer(new OAuthAuthorizationServerOptions { TokenEndpointPath = new PathString("/api/authenticate/login"), Provider = dependencyContainer.GetService(), RefreshTokenProvider = dependencyContainer.GetService(), AccessTokenExpireTimeSpa
10 2024-01-09
编程技术问答社区
停止IResponseCookies.Append()对Cookies进行编码。 dotnetcore 2.0
我们正在构建一个dotnetcore 2.0 Web应用程序,该应用程序通过HTTP从传统系统接收cookie并在响应中设置cookie. 当我调试应用程序时,我可以看到cookie.value不是编码URL,但是在调用附加的set-cookie标头后,将编码URL.这是有问题的,因为旧的cookies需要随着旧应用程序的读取. . public static void AddCookie(this IResponseCookies cookies, Cookie cookie) { cookies.Append(cookie.Name, cookie.Value, new CookieOptions { Domain = cookie.Domain, Expires = cookie.Expires == DateTime.MinValue ? n
4 2024-01-08
编程技术问答社区
在.NET核心中自我托管OWN
使用Legacy .Net,您可以 self-host owin 通过 microsoft.aspnet.webapi.weinselfhost nuget package . 是否有一种方法可以在.NET Core Console应用程序中进行自助主持人? 解决方案 是的,您可以使用请参阅 https://.microsoft.com/en-us/aspnet/core/core/futalals/owin?view = aspnetcore-2.1 其他解决方案 从 .NET 6预览,如前所述,加载的软件包是 still a preview package Microsoft.AspNetCore.Owin . 最好使用文档上找到的示例使用asp.net core的.NET(OWIN)打开Web界面引用此示例的GitHub软件包 owinsample . 给出的样本比原始的Owin Readme更涉及;但它有效. 其他解决方案 OWIN基本上
4 2024-01-08
编程技术问答社区
在.Net核心中分享默认的OWIN令牌
我有构建在.NET 4.5.1的授权服务器,并使用Microsoft.Owin.Security.oauth版本= 3.0.0 http://prntscr.com/hvwhl4 通过Machinkey保护的令牌(oauthauthorizationserveroptions.accesstokenformat是默认值).我在.NET 4.5.1上还有许多应用程序 - 消费者(资源服务器),可以验证这些令牌 http://prntscr.com/hvwwdu http://prntscr.com/hvwiwr .所有这些应用程序在Web.config 中具有相同的Machinkey 现在,我尝试构建.NET Core 2.0应用程序,并且需要从Auth Server(.NET 4.5.1 OWIN 3.0.0)中使用相同的令牌.我如何验证和阅读Microsoft.owin.security.oauth(3.0.0)令牌的索赔. 一个注:我无法更改Auth Server并在身份服务器
2 2024-01-08
编程技术问答社区
ASP.NET Core还在使用OWIN吗?
我注意到使用C#构建一个旧的MVC项目时,有很多对OWIN库的参考.但是,在VS2015 SP3中创建.NET Core Web应用程序时,似乎没有参考. 这个库是否被淘汰? 解决方案 Owin不是库,它是规范.从文档中, OWIN定义了.NET Web服务器和Web应用程序之间的标准接口. OWIN的"大想法"是,如果每个人都可以就通用的界面达成共识,则可以将应用程序从其运行的服务器中解脱出来.实际上,与OWIN兼容的服务器可以运行任何与OWIN兼容的应用程序.这是对过去的紧密耦合的改进(应用程序只能在IIS上运行,仅此而已). 许多OWIN规格都致力于描述各种属性的名称.欧元兼容的服务器将传入的请求转换为Dictionary,其中包含一堆键owin.RequestBody和owin.ResponseBody>.如果传递请求的应用程序或中间件知道如何读取这些密钥,则可以处理请求.就是这样! 那里是 owin库(例如
0 2024-01-08
编程技术问答社区
如何创建和消费OWIN JWT?
我有一个WebAPI,我需要保护一个Angular 4.X应用程序,以便我可以使用JWT. 我试图弄清楚使用Microsoft的Owin Katana 3.x 软件包实现的最低限度(没有OAuth?)是什么. 如何完成? 解决方案 以下内容不起作用(Microsoft的/系统零件以破坏方式纠缠在一起).但这是我最接近几乎简单的东西. using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; using System.Security.Cryptography; using Microsoft.IdentityModel.Tokens; using Microsoft.Owin; using Microsoft.Owin.Security.Jwt; using Owin; [assembly: OwinStartup(typeof(WebApplication1.Startup))] na
6 2024-01-08
编程技术问答社区