gbh*_*kta 11 signing saml x509certificate saml-2.0
我正在与IDP接口并创建一个基本的AuthNRequest,如下所示:
<samlp:AuthnRequest
  xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
  xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
  ID="IDTest1" 
  Version="2.0"
  IssueInstant="2013-03-04T09:21:59"
  AssertionConsumerServiceIndex="0"
  AttributeConsumingServiceIndex="0">
  <saml:Issuer>https://myapp.com/saml2/sp</saml:Issuer> 
 <samlp:NameIDPolicy
   AllowCreate="true"
   Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"/>
</samlp:AuthnRequest>     
IDP希望我按签名发送请求.我的问题是:
请注意,文档中包含了很多内容:
要签署请求,您需要添加类似的内容(通常在sp.xml中找到):
<SPSSODescriptor AuthnRequestsSigned="true" WantAssertionsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
签名密钥看起来像:
<KeyDescriptor use="signing">
            <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
                <ds:X509Data>
                    <ds:X509Certificate>      MIIDWTC...CAkGgAwIBAgIEe+a+/uaSZCp5g2z+hRWRV+DyfQc9nO
                    </ds:X509Certificate>
                </ds:X509Data>
            </ds:KeyInfo>
        </KeyDescriptor>
MII ......是公钥的地方.
按照@Stefan,使用库要容易得多.
小智 5
SAML身份验证请求是一个XML文档.您可以像签署任何其他XML文档一样签署SAML身份验证请求.但是,有一些限制:
您可以在第5节中详细了解SAML断言和协议规范(http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf).
你的问题不充分!
您发送的 AuthRequest 似乎是REDIRECT请求,您将看不到摘要、签名和证书,因为所有这些详细信息都将作为参数出现在 URL 中。
尝试使用POST SSO请求,您将在 SAML 请求中看到摘要、签名和证书。
Metadata,这将有他们的基本配置,如 id、签名算法、散列方法、公钥等。| 归档时间: | 
 | 
| 查看次数: | 25328 次 | 
| 最近记录: |