如何将SAML XML令牌字符串转换为SecurityToken或ClaimsPrincipal实例?
我的上下文: .NET RESTFUL WEB服务 客户端(混合平台,技术,LIB功能)已获得SAML令牌 试图在休息服务中接受代币以进行身份​​验证/授权 在http授权/x-oturetrization标题中 作为查询参数 稍后还将支持SWT,但需要使SAML令牌前进 详细信息: 我在字符串中有一个saml令牌: ..etc... 在httpmodule中,我想将其转换为索赔,以便我的服务可以执行通常的线程.CurrentPrincipal作为IClaimSprincipal的内容. 我找到了一些诱人的页面/博客/等...看起来很有帮助: Cibrax在HTTP授权标题中传递令牌的想法 dominick baier在SWT上类似的东西,并提到Saml li> 我坚持不懈地试图将SAML令牌变成索赔(通过SecurityToken Inter
0 2024-04-17
编程技术问答社区
参考资料的摘要验证失败
我已经实现了自定义STS.经过身份验证和重定向后,但是在加载页面之前,我会收到此错误: [CryptographicException: Digest verification failed for Reference '#_8e0aea1a-713d-4536-8fac-a768073395e9'.] 每次我尝试的参考号都会改变. 解决方案 我最终发现,我从数据库中加载的索赔中有托架返回线馈送.一旦我取代了那些我没有更多问题. 其他解决方案 我们也有类似的问题,并且在编码base64时能够使用LF (Unix) newline分隔符解决. 具体来说,在我们的实施中,我们在提交SAML响应时需要HTTP Post Binding. SAML响应是基本64编码的,并且使用CRLF (Windows) newline分离器编码时会失败.但是,当使用LF (Unix)编码时,它可以正常工作.另外,字符集必须为UTF 8. 这是我们使用
2 2024-04-16
编程技术问答社区
是什么让FederatedAuthentication.SessionAuthenticationModule返回NULL?
我不确定为什么,但是我的FederatedAuthentication.sessionauthenticationmodule正在以null的形式解决并在我尝试运行我的索赔stransformer()模块时崩溃了我的应用程序: public void EstablishSession(ClaimsPrincipal principal) { var sessionToken = new SessionSecurityToken(principal, TimeSpan.FromHours(8)) { IsPersistent = false, // make persistent IsReferenceMode = true // cache on server }; FederatedAuthentication.SessionAuthenticati
0 2024-04-15
编程技术问答社区
如何从ClaimsPrincipal中删除现有的索赔?
我正在为Intranet站点模拟Roles的开发人员工具,以使开发人员能够根据需要快速充当任何Role.定义的角色是Developer, Team Lead, Team Member, Engineering, Marketing, Guest,网页上的工具呼叫Web API添加或删除Claim ...好吧,我可以添加,但似乎无法找出.RemoveClaim(claim)或.RemoveClaim(claim)或.TryRemoveClaim(claim)可以访问以实现此功能.我是否必须创建一个自定义索赔经理才能获得此功能,或者我缺少某些内容? 我一直在寻找我正在使用.NET 4.5.1. 使用VS 2013/Web API2 网站方仅使用一个简单的Ajax调用PUT和DELETE功能,直到我按照自己的方式工作.从控制器中,我的CS代码为: public void Put(int id, [FromBody]string role) { i
0 2024-04-14
编程技术问答社区
如何对JWT安全令牌进行加密?
我需要在签名和加密的情况下确保我的网络风格.我写了下一行代码: var tokenHandler = new JwtSecurityTokenHandler(); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, owner.Name), new Claim(ClaimTypes.Role, owner.RoleClaimType), new Claim("custom claim type", "custom content") }), TokenIssuerName = "self", AppliesToAddress = "http://www.ex
0 2024-04-13
编程技术问答社区
Catch-22阻止了WIF的TCP WCF服务流的安全;破坏了我的圣诞节和精神健康。
我需要使用wif 保护流的WCF Net.TCP服务端点.它应该对我们的令牌服务器进行验证呼叫.该服务之所以流式传输,是因为它旨在传输大量数据n事物. 这似乎是不可能的.,如果我无法抓住渔获物,我的圣诞节将会毁了,我会在天沟里喝死,而快乐的购物者慢慢地越过我冷却体.你们很认真. 为什么不可能?这是Catch-22. 在客户端上,我需要使用 genericxmlSecurityToken 我从我们的令牌服务器中获得.没有问题. // people around here hate the Framework Design Guidelines. var token = Authentication.Current._Token; var service = base.ChannelFactory.CreateChannelWithIssuedToken(token); return service.Derp(); 我说"没有问题"吗?问题.实际上,NullRef
0 2024-04-13
编程技术问答社区
除IMEI、Android_ID、WLAN Mac和蓝牙地址外,设备的完美唯一ID。
目标: 我正在寻找一种方法来找出Android设备的 unique_id . 背景: 我将在登录请求有效载荷中使用ID,并且由于我的应用程序为 基于许可证的服务应用 在正常情况下,ID不应更改. 现有方法: 在iOS中,有一些 iOS的唯一ID解决方案 =" https://developer.apple.com/library/mac/documentation/corefoundation/reference/cfuuidref/index.html"> cfuuid 或与 键链 ,广告标识符等. 但是,在Android中,我知道的所有选项似乎都有漏洞. imei: TelephonyManager TelephonyMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE); String m_deviceId = TelephonyMgr.getDeviceId(); 缺
0 2024-04-01
编程技术问答社区
Azure Web角色中WIF 4.5的SessionSecurityTokenHandler的'过期时间缓冲区'。
大家. "到期时间缓冲区"是什么意思?让我向您解释一下. 在我的Azure云服务项目中,只有一个Web角色.我将启用的ACS名称空间与某些身份提供商集成在一起.身份提供商将发布令牌.无论如何,都会有一个会议的实例.我的网络角色将处理其到期. 这是示例代码, void SessionAuthenticationModule_SessionSecurityTokenReceived(object sender, SessionSecurityTokenReceivedEventArgs e) { Trace.TraceInformation("SessionAuthentication_SessionSecurityTokenReceived event"); SessionSecurityToken sessionToken = e.SessionToken; if (sessionTo
0 2024-03-26
编程技术问答社区
Azure WebSite中的WIF
我想在Azure网站上使用Windows Identity Foundation.我注意到Azure网站支持.NET 4.0而不是.NET 4.5.有人知道是否有一种在Azure网站中使用WIF的方法? 解决方案 Vittorio Bertocci(Wif先生本人)刚刚在此主题上发布了一篇博客文章: 其他解决方案 WIF 1.0在Azure中工作正常 - 请参阅如何使用Windows Azure Active Directory -ASP.NET应用程序实现单个登录. 或者您去Azure ACS路线 - Facebook等. 您是在问 - "有人知道是否有一种方法可以在Azure网站中使用Wif 4.5 ? 其他解决方案 这将大约在本月底提供. Please sees http://social .msdn.microsoft.com/forums/en-us/windowsazurewebsitespreview/thread/3FAB0F32-23
0 2024-03-26
编程技术问答社区
带有Azure Active Directory认证的Azure WCF服务
我知道这个问题似乎与这里的其他儿子相似,但是我尝试了这里发布的答案:使用Azure ACS 2.0 确保WCF 4.5服务 和此处:> WCF REST/html-Service azure 的联合身份验证(单签) ans似乎都不相关. 这是我到目前为止所拥有的. 具有各种工人角色的Azure云服务,以及带有REST和SOAP端点的WCF Web角色 一个带有几个用户的Azure Active Directory帐户 ACS名称空间. WCF服务将由几个不同的公司使用,但除了关闭之外.我们选择了Azure Active Directory为WCF服务和其他应用程序提供SSO. 这是我想做的: 使用WCF服务为每个公司创建用户/密码 Azure Active Directory. 只允许拥有有效用户名和密码对的公司获得访问令牌 每个公司都使用其令牌访问WCF方法. 我不认为这很难完成,但是使用控制台应用程序的IIS托管或自托管服务的所有教
0 2024-03-24
编程技术问答社区
Azure SDK 1.4-WIF-在试图初始化默认appdomain时,C++模块加载失败。
我有一个旧的Azure应用程序,该应用程序正在Azure 1.2 SDK上运行,并依靠WIF进行身份验证. 我最近一直在尝试将其更新为最新的SDK(1.4). 应用程序编译并运行在Azure上,包括使用我的ST进行认证.但是,网站上的某些页面不会加载以下错误. Unable to find assembly 'Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. [SerializationException: Unable to find assembly 'Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.] System.Runtime.Remoting.Proxies.RealPr
0 2024-03-23
编程技术问答社区
validateRequest="false "不工作,即使有 requestValidationMode="2.0"
我有一个在Visual Studio Dev-Fabric(Azure Project)中运行的ASP.NET网站,并且正在使用ACS和WIF.我的身份验证过程不起作用,因为登录后,我得到了: A potentially dangerous Request.Form value was detected from the client (wresult=" 和 我做到了 - 但是我仍然遇到错误.我还在页面级别添加了validaterequest =" false".但是nada-仍然遇到相同的错误. 这些步骤似乎已经解决了其他海报的问题 - 这可能与Dev -Fabric跑步有关吗? 解决方案 我尚未意识到,但是我不小
0 2024-03-23
编程技术问答社区
在联合身份令牌上得到 "不是有效的Base-64字符串"。
在浏览MVC3 Azure Web角色时,我会随机获得64个编码错误.我正在使用带有被动身份验证的WIF来验证我的ADFS服务器.我无法隔离它的来源,但是我有一个想法,希望得到一些反馈/帮助. 从通话堆栈中,看起来好像来自坏饼干.当我从Chrome Developer Console中查看cookie时,Wif/ADF的" Fedauth" cookie是唯一出现的东西.因此,我认为这些饼干在某种程度上被损坏或其中有无效的角色.我正在验证这一点,但是由于错误随机发生,因此需要一些时间.有没有人经历过类似的事情或对可能导致这一造成这种情况有什么倾向?任何帮助都将受到赞赏! 这是例外: The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or a non-white space charac
0 2024-03-23
编程技术问答社区
从Azure ACS向我的自定义身份提供者传递URL参数?
我们正在开发一个自定义身份提供商(STS)来验证我们的应用程序.在这个项目中,我们使用的是Azure Acesses Control Services 2.0,我们的身份提供商是WSFEDERAIN. o,当启动项目时,Azure ACS具有称为WCTX的URL参数,此参数用于传递任何内容,并且当DE ACS重定向到身份提供商时,ACS保留参数,但是现在,当参数的值已加密时登录页面已打开,所以我们无法阅读. 我想通过一种文化,谁在调用登录页面. 任何人都有任何IDEIA? 解决方案 wctx参数不应由您的身份提供者消费.此参数的目的是让您的RP存储所需的任何数据,当ACS发送WS-FEDERATION登录响应时,将与令牌一起返回到它.如果您想向您的身份提供商发送消息,则最简单的方法是托管自己的HRD页面,如"选项2:主机自定义登录页面" 此MSDN页面.在您的命名空间中下载链接的示例作为起点,然后修改以下代码: // Sets a cookie t
4 2024-03-23
编程技术问答社区
安装WIF运行时以在Windows Azure中托管.NET应用程序
我开发了一个自定义应用程序,该应用程序能够消耗CRM Web服务并执行Windows Live ID身份验证,创建,读取和更新CRM中的CRM中的操作.当我在Visual Studio 2010中调试应用程序时,它的运行绝对不错,但是当我部署相同的应用程序并尝试对其进行身份验证时显示以下错误: "无法加载文件或汇编'Microsoft.IdentityModel,版本= 3.5.0.0,culture =中性,publicKeyToken = 31BF3856AD364E35'或其依赖项之一.系统无法找到指定的文件." 我只是想知道如何使用启动任务安装 Microsoft.InderityModel 组装.我遵循以下链接中的一些步骤: http://blogs.msdn.com/b/sriharsha/archive/2012/04/07/windows-azure-unable-unable-to-find-sembly-microsbly-microsoft-ind
2 2024-03-23
编程技术问答社区
Azure ACS的自定义登录页面无法工作
我从ACS Portal下载了示例登录页面的应用程序,该应用程序是一个HTML文件. 然后,我将我的应用程序配置为Wif,一切正常. 由于我们需要处理并保存传入的Querystring,因此可以在用户登录后稍后使用Querystring,因此我们需要将HTML登录页面移动到ASPX页面. . 问题是,当我将Web.config文件中的Wif发行人更改为ASPX文件时,它会停止工作.当它起作用时,看起来像这样:
0 2024-03-23
编程技术问答社区
如何在Windows Azure上获得代码中的证书
我正在尝试创建自己的WIF身份提供商并在Azure上运行它,但是在尝试自动生成联邦元数据时,我正在努力. 此行似乎对Azure不起作用: CertificateUtil.GetCertificate(StoreName.My, StoreLocation.LocalMachine, signingCertificateName); 证书已上传到Azure,我该如何掌握? 谢谢 解决方案 尝试此博客文章: http://blogs.msdn.com/b/jnak/archive/2010/01/29/installing-certificates-in-windows-azure-vms.aspx 它建议代码: X509Certificate2Collection selectedCerts = new X509Certificate2Collection(); X509Store store = new X509Store(StoreName.
2 2024-03-23
编程技术问答社区
SessionSecurityTokenHandler试图使用DPAPI解密RSA加密的cookie中的SessionSecurityToken;为什么?
我已经阅读了MSDN论坛,Dominic Baier的博客,以及在其他来源中DPAPI将无法在Azure中开箱即用,并且在任何类型的网络农场中处理联合身份验证的方法是替换DPAPI通过使用X509证书的RSA加密进行使用,该DPAPI使用私有密钥进行转换.我已经在Azure MVC应用程序中采用了这种方法,并配置了这样的SessionSecurityTokenHandler: FederatedAuthentication.ServiceConfigurationCreated += (sender, args) => { var sessionTransforms = new List(new CookieTransform[] { new DeflateCookieTransform(), new RsaEncryptionCooki
0 2024-03-23
编程技术问答社区
Azure/web-farm准备好SecurityTokenCache
我们的网站使用ADF进行auth.要减少我们打开IssessionMode的每个请求的cookie有效载荷(请参阅饮食上的fedauth cookie ). 在负载平衡的环境中,我们需要做的最后一件事是实施农场就绪的安全性tokencache.实现似乎很简单,我主要有兴趣找出在处理SecurityTokenCacheKey时是否应该考虑任何陷阱,而TryGetallentries和TryRemoveAllentrentrentries方法(SecurityTokenCacheKey具有平等和GethashCode方法的自定义实现). 有人有这样的例子吗?我们正计划将AppFabric用作支持商店,但是使用任何持久商店的示例将是有用的 - 数据库表,Azure Table Storage等. . 这是我搜索过的一些地方: 在 Hervey Wilson的PDC09 会议他使用 DataSecurityTokencache.我找不到样本 他的会议代码. 在Vittorio
0 2024-03-23
编程技术问答社区
Microsoft.IdentityModel dll在哪里?
我已经安装了Windows Identity Foundation,但找不到Microsoft.IdentityModel dll.根据Azure动手操作,它应该仅在VS2010中添加参考.但是它不存在. 我还查看了C:\ Program Files(x86)\ Windows Identity Foundation*,它不在那里(或64位Program Files文件夹). 帮助! 解决方案 您是否安装了 Windows Identity Foundation 和伴侣其他解决方案 nuget Windows Identity Foundation 怎么样.只需添加您您的项目,就离开了!它是MS拥有的Nugets之一,因此应相应地保持. 编辑:在Windows 8 Windows Identity Foundation中,通过打开Windows功能在 Control面板中>所有控制面板项目>程序和功能>"启用" Windows>"启用)" 该功能是 Windo
0 2024-03-23
编程技术问答社区