Questions tagged «saml»


3
SAML:为什么证书在签名中?
我必须为我公司的网站(作为信赖方)使用SAML实施SSO。当然,必不可少的部分是签名验证。这是我们的合作伙伴公司(声明方)的示例SAML的签名部分: <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:SignedInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/> <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/> <ds:Reference URI="#_2152811999472b94a0e9644dbc932cc3" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:Transforms xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/> <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ec:InclusiveNamespaces PrefixList="ds saml samlp xs" xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/> </ds:Transform> </ds:Transforms> <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/> <ds:DigestValue xmlns:ds="http://www.w3.org/2000/09/xmldsig#">bW1Os7+WykqRt5h0mdv9o3ZF0JI=</ds:DigestValue> </ds:Reference> </ds:SignedInfo> <ds:SignatureValue xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> cgrAN4T/UmobhrkkTi3miiRfbo0Z7aakSZjXuTWlZlu9jDptxPNbOFw8ZbYKZYyuW544wQqgqpnG gr5GBWILSngURjf2N45/GDv7HMrv/NRMsRMrgVfFsKbcAovQdLAs24O0Q9CH5UdADai1QtDro3jx nl4x7HaWIo9F8Gp/H1c= </ds:SignatureValue> <ds:KeyInfo> <ds:X509Data> <ds:X509Certificate>MIIElzCCA3+gAwIBAgIQNT2i6HKJtCXFUFRB8qYsZjANBgkqhkiG9w0BAQUFADB3MQswCQYDVQQG EwJGUjEOMAwGA1UEBxMFUGFyaXMxDDAKBgNVBAoTA3BzYTEgMB4GA1UECxMXY2VydGlmaWNhdGUg YXV0aG9yaXRpZXMxKDAmBgNVBAMTH0FDIFBTQSBQZXVnZW90IENpdHJvZW4gUHJvZ3JhbXMwHhcN MDkwODE5MDcxNTE4WhcNMTEwODE5MDcxNTE5WjCBhjELMAkGA1UEBhMCZnIxHzAdBgkqhkiG9w0B CQEWEHBhc3NleHRAbXBzYS5jb20xGDAWBgoJkiaJk/IsZAEBEwhtZGVtb2IwMDEMMAoGA1UEChMD …


2
如何成为SAML服务提供商
我公司目前正在开发Java Web应用程序。我们的几个客户拥有内部SAML服务器(身份提供程序?),并要求我们与它们集成。所以最近我一直在阅读它,并使用OpenAM。经过大约三天的时间,我对它有了一个大致的了解,但是我的知识仍然存在一些不足。我希望有人可以帮我解决这个问题。 因此,这就是我如何想象用户登录的工作流程。 让我们将客户SAML服务器定义为https://their.samlserver.com。因此,用户访问我们的Web应用程序以获取受保护的资源。假设URL是http://my.app.com/something。 因此,如果我是对的,那么SAML将my.app.com定义为Service Provider。我们的应用程序意识到该用户需要登录。然后,我们向用户显示一个类似的页面... <script>JQuery Script to auto submit this form on ready</script> <form method="post" action="https://their.samlserver.com/Post/Servlet"> <input type="hidden" name="SAMLRequest" value="someBase64Data" /> <input type="submit" value="Submit" /> </form> 那someBase64Data应该是base64这个的编码版本... <samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="identifier_1" Version="2.0" IssueInstant="2004-12-05T09:21:59Z" AssertionConsumerServiceIndex="0"> <saml:Issuer>http://my.app.com</saml:Issuer> <samlp:NameIDPolicy AllowCreate="true" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"/> </samlp:AuthnRequest> 所以我的前几个问题。 什么是ID假设是价值? 为什么我要宣布自己为发行人? 身份提供者知道我吗?也许这就是我在OpenAM上看到的信任圈。如果它确实了解我,它怎么知道我以及它需要知道什么? 因此,在将用户转发到该页面之后,会将他们转到IDP https://their.samlserver.com提供的页面。他们在该页面上进行身份验证,而IDP确实可以验证身份并查找用户。身份验证成功后,IDP将发回这里的<samlp:Response>定义。 还有几个问题。 首先,如何<samlp:Response>返回到我的Web应用程序以便我可以检查它? 我应该在该响应中寻找什么以验证它是否成功?失败是什么样的? …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.