0

idp-process.log

エラー [org.opensaml.ws.security.provider.MandatoryAuthenticatedMessageRule:37] - 受信メッセージの発行者が認証されませんでした。

shibd.log

ERROR OpenSAML.SOAPClient [109]: SOAP クライアントが SAML エラーを検出しました: (urn:oasis:names:tc:SAML:2.0:status:Responder) (メッセージがセキュリティ要件を満たしていませんでした)

エラー Shibboleth.AttributeResolver.Query [109]: 属性機関が SAML エラーを返しました

Shibboleth 認証プロセスは正常に機能しています。Active Directory サーバー (LDAP) は、LDP.exe を使用して検証された SSL 経由で動作するように適切に構成されています。また、SSL プロトコルを介して Active Directory サーバーに接続しようとする単純な Java プログラムもコーディングしました。ポート 636 を使用してサーバーに接続し、パスワードを含むユーザー資格情報を渡すことができ、サーバーは適切に応答しました。

証明書は、対応する JVM cacerts によってすでに信頼されています。

https://wiki.shibboleth.net/confluence/display/SHIB2/ResolverLDAPDataConnectorから文書化されているように、セットアップ手順は既に実行されています

ただし、Active Directory サーバーからの属性クエリ中にはまだエラーが発生します。以下は構成のスニペットです。

属性クエリでエラーが発生する理由について何か考えはありますか?

ありがとう。

属性リゾルバー.xml

<resolver:DataConnector id="myLDAP" xsi:type="dc:LDAPDirectory"
    ldapURL="ldaps://WIN-1GB01UK5SL6.VECISADTEST.com" 
    baseDN="CN=Users,DC=vecisadtest,DC=com" 
    principal="Administrator@vecisadtest.com"
    principalCredential="XXX"
    useStartTLS="false"
    >
    <dc:FilterTemplate>
        <![CDATA[
            (uid=$requestContext.principalName)
        ]]>
    </dc:FilterTemplate>

    <StartTLSTrustCredential xsi:type="sec:X509Filesystem"
    xmlns="urn:mace:shibboleth:2.0:resolver:dc"
    id="UA_AD_CA_Certificate">
      <sec:Certificate>C:\Progs\ShibbolethIdP\certs\VECISADTEST.pem</sec:Certificate>
    </StartTLSTrustCredential>

    <StartTLSAuthenticationCredential xsi:type="sec:X509Filesystem"
    xmlns="urn:mace:shibboleth:2.0:resolver:dc"
    id="IdPtoLDAPCredential">
        <sec:PrivateKey>C:\Progs\ShibbolethIdP\credentials\idp.key</sec:PrivateKey>
        <sec:Certificate>C:\Progs\ShibbolethIdP\credentials\idp.crt</sec:Certificate>
    </StartTLSAuthenticationCredential>


</resolver:DataConnector>

login.config

edu.vt.middleware.ldap.jaas.LdapLoginModule required
  host="WIN-1GB01UK5SL6.VECISADTEST.com"
  port="636"
  base="CN=Users,DC=vecisadtest,DC=com"
  tls="false"
  serviceCredential="XXX"
  userRoleAttribute="sAMAccountName"
  serviceUser="Administrator@vecisadtest.com"
  ssl="true"
  subtreeSearch = "true"
  userField="sAMAccountName";

idp-metadata.xml

<AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://idp.janet.org:8444/idp/profile/SAML1/SOAP/AttributeQuery"/><AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://idp.janet.org:8444/idp/profile/SAML2/SOAP/AttributeQuery"/>

ありがとう。

4

1 に答える 1

1

この問題は、サービス プロバイダーの構成ファイルshibboleth2.xmlを更新することで解決されました。署名属性は true に設定する必要があります。

【Shibboleth Service Providerのインストール先】\etc\shibboleth\shibboleth2.xml

SPConfig > ApplicationDefaults@signing

Shibboleth Service Provider 2.5.2 のデフォルト インストール、signing 属性は false です。

于 2013-10-09T09:26:17.023 に答える