草庐IT

ruby-on-rails - rails saml如何解密xml?

我正在执行SAML身份验证,当我收到xml时,其中的一部分已加密。这是我需要的部分(包含姓名、电子邮件等)为此我有一个私钥来解密它,但我不知道该怎么做。我在这里:response=OneLogin::RubySaml::Response.new(params[:SAMLResponse])response.settings=set_settingsdoc=Nokogiri::XML(response.response)document=XMLSecurity::Document.new(doc)###NOTUSEDHEREformated_cert=OneLogin::RubySaml

xml - 使用 OpenSAML 和 OpenSSO 的签名验证问题

我们在服务提供商网站上使用OpenSAML为我们的客户提供SSO。我们的客户(ID提供者)正在使用OpenSSO。OpenSSO发布的SAML响应在涉及签名元素时略有不同,因为它没有被命名空间限定。这似乎不太适合OpenSAML,它从samlResponse.getSignature()方法,因此我无法验证签名。导致问题的SamlReponse的签名片段j+KBoDOtEcyCquPTxRCXoBulStQ=Dv+owuZfGFymGGrw2gHA3/7GVC6mXt8JMW+tOvmtnjTRJZaDE+Nb2NCngio1Tnqu4LWnvVrry4Wk...6QcIJi/kGc4

xml - 如何验证 HTTP 重定向绑定(bind)的 SAML 签名

我正在通过HTTP重定向绑定(bind)SAML请求的内容接收SAML请求,如下所示{"SigAlg"=>"http://www.w3.org/2000/09/xmldsig#rsa-sha1","SAMLRequest"=>"lVLLaoQwFP0VyT5jEqPG4AiFoSDMtNApXXQzxDxaQRObRDqfX3XoolAKXd7DPQ/uuXUQ4zDxo3tzc3zSH7MOMWkPe3DpcixzVVVQl4RBqoiCncEYEmkoY7k00hCQvGgfemf3gOwQSNoQZt3aEIWNC4RwCRGGiD6jkmPMs2KHUPYKksPi0lsRN+

ruby - 在 Ruby 中规范化 XML

我正在使用Ruby/Rails开发SAML网关,我正在尝试编写一些代码来验证xmldigitalsignature针对原始服务的x509证书的传入SAML响应。我的问题:签名取决于XML的规范化版本,该版本经过哈希处理然后签名,我很难找到一个ruby​​lib/gem来根据thespec对XML进行规范化。.我找到了一个superoldgemonrubyforge那是一团糟,但如果像nokogiri这样的东西支持这种功能,我会更感兴趣(从nokogiri文档来看,它不支持)。我在谷歌上进行了广泛的搜索,但我想在我尝试编写自己的版本或修改现有的c14n-r库之前先问问这里是否有人有任何好

xml - 使用或不使用断言签名签署 SAML 响应?

当签署一个SAML响应也有一个已签署的断言时,我应该:A)生成没有断言签名的响应签名。然后在生成两个签名后注入(inject)断言签名。B)生成断言签名并在生成响应签名时包含它。C)还有别的吗? 最佳答案 SAML太糟糕了,每次我阅读答案时它们几乎都是正确的,这里是提炼出的正确算法:SHA1断言的规范版本。生成带有SHA1签名的SignedInfoXML片段签署SignedInfoXML片段,同样是规范形式获取SignedInfo、Signature和key信息并创建一个SignatureXML片段将此SignatureXML插入到

xml - 为 SAML 签名和加密创建 x509.v3 自签名证书,Windows 8 R2

我编写了一个应用程序来生成用于SSO的SAML2token。它使用System.Security.Cryptography.X509Certificates签署XML并加密断言。我们将为我们的生产环境购买证书,但现在我需要使用自己创建的证书从我们的集成服务器进行测试。我使用MakeCert创建了一个并将其加载到我的商店中的LocalMachine位置。这在我是本地主机时有效,但在远程访问时出现以下错误:Therequestedoperationcannotbecompleted.Thecomputermustbetrustedfordelegationandthecurrentuser

windows - ADFS 3.0 位置(Intranet 或 Extranet)决定

你好Stackoverflow社区!我搜索了所有msdn文档并询问了Google博士,但我没有发现ADFS3.0和W2k12r2如何确定请求是来自Intranet还是Extranet区域。现在我已经设置了一个带有自定义身份验证提供程序的ADFS3.0服务器,并且我一直都在获取用于身份验证的表单页面。ADFS服务如何确定请求是来自Intranet还是Extranet位置? 最佳答案 如果请求通过Web应用程序代理服务器(本质上是面向互联网的ADFS代理),那么当它流向ADFS时,它被认为是外部网。这管理身份验证策略和ADFS的功能。默

c# - 从 SAML token 读取 SAML 属性

我正在从XML文件加载SAMLtoken。stringcertificatePath=@"D:\Projects\SAMLDemo\Server.pfx";X509Certificate2cert=newX509Certificate2(certificatePath,"shani");stringsamlFilePath=@"D:\Projects\SAMLDemo\saml.xml";XmlReaderreader=XmlReader.Create(samlFilePath);Listtokens=newList();tokens.Add(newX509SecurityToken(

c# - 使用 WIF 创建 SAML 身份验证请求

似乎大多数WIF信息都对在整个应用程序中启用联合身份验证很有用。我有兴趣使用API创建SAML身份验证请求并接收/解释SAML响应。我在SOReadingSAMLAttributesfromSAMLToken上找到了以下帖子这让我在接收和解释SAML响应方面朝着正确的方向前进。谁能给我更多关于如何使用API创建SAML请求的信息?如能提供有关API的更多信息(阅读Material、视频等),我们将不胜感激。 最佳答案 这是oursamples中的一个小例子展示了如何以编程方式创建对STS的(SAML)安全token的请求:priva

c# - 在不使用 WIFI 的情况下在 WCF 服务调用中包含 SAML 2.0 token

我正在尝试设置受ADFS保护的WCF服务。我目前能够请求token并使用WIF和ThinktectureIdentityModel4.5将其与请求一起发送,代码如下:staticSecurityTokenGetToken(){varfactory=newWSTrustChannelFactory(newUserNameWSTrustBinding(SecurityMode.TransportWithMessageCredential),"https://fs2.server2012.local/adfs/services/trust/13/usernamemixed"){TrustVe