2015-01-22 2 views
1

나는 파이썬에서 Pysaml2 라이브러리를 사용하여 서비스 제공자를 만들고있다. 내 신원 제공 업체 인 Okta에 AuthnRequest를 보내려고합니다. 내 AuthnRequest은 다음과 같습니다SAML AuthnRequest Matter의 XML 네임 스페이스가 있습니까?

<ns0:AuthnRequest AssertionConsumerServiceURL="http://myserviceprovider:8000/saml/acs" 
     Destination="https://oktapreview.com/app/myserviceprovider/k40ctg3zVVFQYUMEJFTB/sso/saml" 
     ID="id-02a0e2290bbc7fda421483af6b02a9a5" IssueInstant="2015-01-20T22:57:02Z" 
     ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Version="2.0" xmlns:ns0="urn:oasis:names:tc:SAML:2.0:protocol"> 
    <ns1:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity" xmlns:ns1="urn:oasis:names:tc:SAML:2.0:assertion">http://myserviceprovider:8000/metadata.xml</ns1:Issuer> 
    <ns0:NameIDPolicy AllowCreate="true" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"/> 
</ns0:AuthnRequest> 

내 SP는 302 okta IDP로 리디렉션 시작하고이 SAML 요청을 보냅니다. 그런 다음 Okta 자격 증명을 입력하는 로그인 페이지가 표시됩니다. 그런 다음 okta.com/app/UserHome (Okta의 홈페이지)으로 이동하여 내 SP의 주장 소비자 서비스 엔드 포인트에 SAML 어설 션을 다시 보내지 않습니다.

Firefox에서 SAML 추적기를 사용하여 SAML 활동을 확인합니다.

다른 서비스 제공 업체 (예 : box.net)의 다른 SAML AuthnRequests를 살펴본 후에 AuthNRequest의 XML 네임 스페이스가 okta가 ACS 어설 션을 보내지 않도록 할 것이라고 생각하게되었습니다.

내 네임 스페이스는 'saml2p'및 'samlp'대신 'ns0'및 'ns1'입니다.

이로 인해 문제가 발생합니까?

pysaml2를 사용하여 서비스 제공 업체를 구성하는 방법에 대한 다른 권장 사항도 제공됩니다.

답변

0

이 문제가 발생합니까? Okta가 SAML 사양 요구 사항에 얼마나 미숙한지에 따라 궁극적으로 문제가됩니다.

네임 스페이스는 here으로 정의되어 있으며, IMO 사양이므로 따라야합니다. AuthnRequest의 경우 사양의 특정 부분은 here입니다.

관련 문제