0

SAML2.0を使用して最初のSSO統合を試みています。私は使用しています:

http://www.codeproject.com/KB/aspnet/DotNetSamlPost.aspx?msg=3562384

私自身の例として。

現在、私は彼らのURLに正常に投稿しようとしています。接続しているサイトは非常に大きく、ping-identityのソリューションを使用して、ssoを管理します。これにより、役立つエラーが少なくなることがよくあります。私はいくつかの作業を行いましたが、これは私を困惑させました:

UnknownBindingException:要求にプロトコルバインディングを決定するための不十分な情報が含まれています(プロトコルエンドポイントURLをブラウザーのロケーションバーに直接入力しましたか?)。

誰かがこれを引き起こす可能性があることを知っていますか、私が投稿している私のsamlは次のようになります:

<Response xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ID="_3b052151-fb4f-4e10-89bd-d65ef5141e9d" Version="2.0" IssueInstant="2010-08-20T20:36:02.8093696Z" Destination="https://******/sp/ACS.saml2" xmlns="urn:oasis:names:tc:SAML:2.0:protocol">
  <Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">www.******.org</Issuer>
  <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="#_3b052151-fb4f-4e10-89bd-d65ef5141e9d">
        <Transforms>
          <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
          <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
        </Transforms>
        <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
        <DigestValue>****</DigestValue>
      </Reference>
    </SignedInfo>
    <SignatureValue>*******</SignatureValue>
  </Signature>
  <Status>
    <StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" />
  </Status>
  <Assertion Version="2.0" ID="_d0f34b54-cf0b-49c7-9a50-f60842b7e0d2" IssueInstant="2010-08-20T20:36:02.8103697Z" xmlns="urn:oasis:names:tc:SAML:2.0:assertion">
    <Issuer>www.*******.org</Issuer>
    <Subject>
      <NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">adamb</NameID>
      <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
        <SubjectConfirmationData NotOnOrAfter="2010-08-20T20:41:02.8103697Z" Recipient="https://*****.com:9031/sp/ACS.saml2" />
      </SubjectConfirmation>
    </Subject>
    <Conditions NotBefore="2010-08-20T20:36:02.8103697Z" NotOnOrAfter="2010-08-20T20:41:02.8103697Z">
      <AudienceRestriction>
        <Audience>*****</Audience>
      </AudienceRestriction>
    </Conditions>
    <AuthnStatement AuthnInstant="2010-08-20T20:36:02.8103697Z">
      <AuthnContext>
     <AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified</AuthnContextClassRef>
      </AuthnContext>
    </AuthnStatement>
  </Assertion>
</Response>

どんな助けでも大歓迎です、

ありがとう。

4

2 に答える 2

3

私があなたの質問を読んだとき、あなたのアプリケーションはSAML2フェデレーションのServiceProvider(SP)になります。ここで、PingはIdentityProvider(IdP)です。そして、質問にc#のタグを付けたので、SPは.Netに実装されていると思います。

どのSAML2フレームワークを使用していますか、それとも独自のフレームワークを使用していますか?独自のSAML2フレームワークを使用している場合は、Mozillaライセンスの下でオープンソースであるOIOSAML.netを使用することをお勧めします(あらゆる目的で無料で使用できます)。ソースはここで確認できます:http://view.svn.softwareborsen.dk/cgi-bin/index.cgi/Softwareborsen/oiosaml.net/branches/ (すべてのドキュメントは英語です)。

デンマーク政府によって積極的に維持されており、Ping、ADFSv2、SimpleSamlPhp、および他の多くのSAML2IdPとの相互運用テストが行​​われています。これは現在、IdPとしてPingを使用するフェデレーションの何百ものデンマークのWebサイトで使用されています。

受け取っている例外に関して、どのバインディングを使用する予定ですか:HTTPリダイレクト、または他の何か?HTTPリダイレクトであると仮定すると、SAML2バインディング仕様のp15から始まる関連セクションを読むことをお勧めします:http://docs.oasis-open.org/security/saml/v2.0/saml-bindings-2.0-os.pdf

于 2010-09-01T11:34:48.513 に答える
0

A)POSTではなくGETメソッドを介してアサーションを送信しているか、B)パートナーに送信されているアサーションを含むHTMLフォームが適切にフォーマットされていないようです。

于 2010-08-23T12:03:04.030 に答える