1

Alfresco の前で apache (shibboleth モジュール) を使用してリモート認証で alfresco を構成しようとしています - 基本的に認証後に apache から alfresco に REMOTE_USER を渡します。/alfresco (クラシック エクスプローラ GUI) に正常にログインできる alfresco を構成できますが、/share (新しい GUI) ではログインできません。この問題を経験した人や解決した人はいますか?

詳細は次のとおりです。

  1. shibboleth mod を使用して Apache をセットアップします (これは、/alfresco に自動的にログインするため機能します)

  2. Apache で /alfresco と /share の両方に ajp エントリを設定します。

    アルフレスコ エクスプローラー

    ProxyPass /alfresco ajp://127.0.0.1:8009/alfresco

    ProxyPassReverse /alfresco ajp://127.0.0.1:8009/alfresco

    アルフレスコシェア

    ProxyPass /share ajp://127.0.0.1:8009/share

    ProxyPassReverse /share ajp://127.0.0.1:8009/share

  3. Tomcat ajpエントリのセットアップ

  4. /tomcat/shared/classes/alfresco-global.properties を設定します

    authentication.chain=external1:external,alfrescoNtlm1:alfrescoNtlm external.authentication.proxyUserName= external.authentication.proxyHeader= external.authentication.enabled=true

  5. share-config-custom.xml に、以下の提案された xml エントリを入れました。

引用符

<alfresco-config>

<!-- Repository Library config section -->
<config evaluator="string-compare" condition="RepositoryLibrary" replace="true">
<!--
Whether the link to the Repository Library appears in the header component or not.
-->
<visible>true</visible>
</config>

<config evaluator="string-compare" condition="Remote">
<remote>
<endpoint>
<id>alfresco-noauth</id>
<name>Alfresco - unauthenticated access</name>
<description>Access to Alfresco Repository WebScripts that do not require authentication</description>
<connector-id>alfresco</connector-id>
<endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
<identity>none</identity>
</endpoint>

<endpoint>
<id>alfresco</id>
<name>Alfresco - user access</name>
<description>Access to Alfresco Repository WebScripts that require user authentication</description>
<connector-id>alfresco</connector-id>
<endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
<identity>user</identity>
</endpoint>

<endpoint>
<id>alfresco-feed</id>
<name>Alfresco Feed</name>
<description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
<connector-id>http</connector-id>
<endpoint-url>http://localhost:8080/alfresco/s</endpoint-url>
<basic-auth>true</basic-auth>
<identity>user</identity>
</endpoint>

<endpoint>
<id>activiti-admin</id>
<name>Activiti Admin UI - user access</name>
<description>Access to Activiti Admin UI, that requires user authentication</description>
<connector-id>activiti-admin-connector</connector-id>
<endpoint-url>http://localhost:8080/alfresco/activiti-admin</endpoint-url>
<identity>user</identity>
</endpoint>
</remote>
</config>

<config evaluator="string-compare" condition="Remote">
<remote>
<keystore>
<path>alfresco/web-extension/alfresco-system.p12</path>
<type>pkcs12</type>
<password>alfresco-system</password>
</keystore>

<connector>
<id>alfrescoCookie</id>
<name>Alfresco Connector</name>
<description>Connects to an Alfresco instance using cookie-based authentication</description>
<class>org.alfresco.web.site.servlet.SlingshotAlfrescoConnector</class>
</connector>

<endpoint>
<id>alfresco</id>
<name>Alfresco - user access</name>
<description>Access to Alfresco Repository WebScripts that require user authentication</description>
<connector-id>alfrescoCookie</connector-id>
<endpoint-url>http://localhost:8080/alfresco/wcs</endpoint-url>
<identity>user</identity>
<external-auth>true</external-auth>
</endpoint>
</remote>
</config>

引用符

4

1 に答える 1

0

「alfrescoHeader」というコネクタを定義してみてください。

     <connector>
        <id>alfrescoHeader</id>
        <name>Alfresco Connector</name>
        <description>Connects to an Alfresco instance using header and cookie-based authentication</description>
        <class>org.alfresco.web.site.servlet.SlingshotAlfrescoConnector</class>
        <userHeader>X-Alfresco-Remote-User</userHeader>
     </connector>

もちろん、ヘッダー名を使用しているものに変更します。次に、それを alfresco エンドポイントで使用します。

     <endpoint>
        <id>alfresco</id>
        <name>Alfresco - user access</name>
        <description>Access to Alfresco Repository WebScripts that require user authentication</description>
        <connector-id>alfrescoHeader</connector-id>
        <endpoint-url>http://localhost:8080/alfresco/wcs</endpoint-url>
        <identity>user</identity>
        <external-auth>true</external-auth>
     </endpoint>
于 2013-02-06T14:32:29.110 に答える