2016-10-14 5 views
4

OKTA를 통해 로그 아웃 :SAML 단일 나는 다음과 SP의 요청 및 IDP의 reponse를 가지고

<samlp:LogoutRequest xmlns="urn:oasis:names:tc:SAML:2.0:metadata" Destination="https://dev-nnn.oktapreview.com/app/somename_hped800eportal_1/exk8dlkd0tCutHWlj0h7/slo/saml" ID="_af6eaa4a-9d5b-41ce-b265-d39dfdc5248e" Version="2.0" IssueInstant="2016-10-14T12:31:59Z" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"><saml:Issuer xmlns:saml="http://www.w3.org/2005/Atom">https://HPED800E:444/SynPortal/login.aspx</saml:Issuer><saml:NameID xmlns:saml="urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified">CDA_Main\hjami</saml:NameID><samlp:SessionIndex>_d9f07562-3a7f-4c03-a62d-8a985f34058f</samlp:SessionIndex><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><DigestValue>bBbMvzSjRc0zc1jtIxmqmkO4bYo=</DigestValue></Reference></SignedInfo><SignatureValue>...5g==</SignatureValue><KeyInfo><X509Data><X509Certificate>...Cw==</X509Certificate></X509Data></KeyInfo></Signature></samlp:LogoutRequest>

<?xml version="1.0" encoding="UTF-8"?><saml2p:LogoutResponse xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" Destination="https://hped800e:444/SynPortal/logout.aspx" ID="id50277036872307661186452042" InResponseTo="_1eef2809-b49e-412e-a0c5-3596e3c0b158" IssueInstant="2016-10-14T00:32:05.949Z" Version="2.0"><saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://www.okta.com/exk8dlkd0tCutHWlj0h7</saml2:Issuer><ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"><ds:SignedInfo><ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/><ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/><ds:Reference URI="#id50277036872307661186452042"><ds:Transforms><ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/><ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></ds:Transforms><ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><ds:DigestValue>3k7z8GF3kBemyYm+6+mEbZMSAYw=</ds:DigestValue></ds:Reference></ds:SignedInfo><ds:SignatureValue>...MA==</ds:SignatureValue><ds:KeyInfo><ds:X509Data><ds:X509Certificate>...VNm</ds:X509Certificate></ds:X509Data></ds:KeyInfo></ds:Signature><saml2p:Status xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"><saml2p:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:AuthnFailed"/></saml2p:Status></saml2p:LogoutResponse>

요청이 기본-64 인코딩

다음 게시물 바인딩을 통해 전송됩니다. AuthnFailed 응답을 받고 있습니다.

나는 단순화를 위해 IDP에 대해 단 하나의 sp를 설정했습니다. 내가 뭘 잘못하고 있는지 아는 사람 있습니까?

답변

2

이 정보는 단일 로그 아웃을 구현하는 데있어 잘못된 것으로 판단하기에는 충분하지 않습니다. 다음 정보를 제공해 주시겠습니까

1) 응용 프로그램의 일반 탭에있는 SAML 설정 -> 고급 설정에서 찾을 수있는 Okta의 단일 로그 아웃 설정은 무엇입니까? 확인하시기 바랍니다 위의 설정에 따라

enter image description here

2) Okta에 인증서를 업로드했는지?

3) 어떤 SAML 툴킷을 사용하고 있습니까? 툴킷에 대한 툴킷 설정을 제공 할 수 있습니까?

아래의 실무 SLO 요청을 참조하십시오. 귀하의 요청과 나의 몇 가지의 SLO 설정을 비교

<samlp:LogoutRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" 
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" 
ID="_d2be8c5de3aeeeac27c8xxxxyyyy" 
Version="2.0" 
IssueInstant="2016-04-27T16:15:06Z" 
Destination="https://org-name.okta.com/app/simplesamlphpexample/exk4xxyyPcvdVq70x7/slo/saml" 
> 
<saml:Issuer>http://localhost:8888/simplesamlphp/www/module.php/saml/sp/metadata.php/example-okta-com</saml:Issuer> 
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> 
    <ds:SignedInfo> 
     <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /> 
     <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /> 
     <ds:Reference URI="#_d1be8c5dc2aeeeac27c8daf04b7xxxyyy6b36287bd6"> 
      <ds:Transforms> 
       <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /> 
       <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /> 
      </ds:Transforms> 
      <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> 
      <ds:DigestValue>{{some_value}}</ds:DigestValue> 
     </ds:Reference> 
    </ds:SignedInfo> 
    <ds:SignatureValue>{{some_value}}</ds:SignatureValue> 
    <ds:KeyInfo> 
     <ds:X509Data> 
      <ds:X509Certificate>{{some_value}}</ds:X509Certificate> 
     </ds:X509Data> 
    </ds:KeyInfo> 
</ds:Signature> 
<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">{{email}}</saml:NameID> 
<samlp:SessionIndex>{{some_value}}</samlp:SessionIndex> 

눈에 띄었다.

1) 정규화 알고리즘은 나의 경우 http://www.w3.org/2001/10/xml-exc-c14n#으로 설정되어 있습니다. 귀하의 콘텐츠는 http://www.w3.org/TR/2001/REC-xml-c14n-20010315입니다.

2) 사례의 이름 ID는 "CDA_Main \ hjami"입니다. Okta의 어떤 속성이 이것인지 알려주시겠습니까? 또한 Okta에서 app (프로필 편집기 -> 앱 매핑 아래)의 매핑을 사용하여 app의 userName을 재정의했습니다. 예를 들어 Okta login/email의 userName 응용 프로그램을 사용자 지정 특성으로 재정의했습니다.

enter image description here

당신이 (값이 CDA_Main \ hjami로 설정) 응용 프로그램의 이름으로 Okta에서 다른 속성을 사용하는 경우, 내가 위의 스크린 샷에서 뭐하는 거지처럼 당신이 그것을 무시하고 있는지 확인하십시오 .

+0

위의 "작업 SLO 요청"에는 닫는 태그가 없습니다. "''' – user3112401