Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Alfresco 5.0.2

手順  procedure

Alfresco 6.2+, 7.0+

  1. Edit /opt/alfresco/content-services/tomcat/

    webapps/alfresco/WEB-INF/libにcors-filter-1.9.3.jar,java-property-utils-1.9.1.jarが配置されていることを確認します。

    Make sure "cors-filter-1.9.3.jar,java-property-utils-1.9.1.jar" were located in "/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/lib".

    /opt/alfresco

    shared/classes/alfresco-global.properties

    Code Block
    cors.enabled=true
    cors.allowSubdomains=true
    cors.allowed.origins=https://alfresco.sample.net,https://confluence.sample.net
    cors.allowed.methods=GET,HEAD,POST,PUT,DELETE,OPTIONS
    cors.allowed.headers=Accept,Access-Control-Request-Headers,Access-Control-Request-Method,Authorization,Content-Type,Cache-Control,X-Requested-With,X-CSRF-Token
    cors.exposed.headers=Access-Control-Allow-Origin,Access-Control-Allow-Credentials
    cors.support.credentials=true
    cors.preflight.maxage=10
    cors.allowGenericHttpRequests=true


  2. Specify The URL to allow on the cross-domain to cors.allowed.origins value.
    (
    Asterisk can NOT be used here, but Please specify the appropriate both Confluence and Alfresco domain.)
  3. Edit /opt/alfresco/content-services/tomcat/conf/server.xml

    Code Block
     <Connector port="8080" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   URIEncoding="UTF-8"
                   redirectPort="8443" relaxedPathChars="[]|" relaxedQueryChars="[]|{}^\`"/>


  4. Add relaxedPathChars and relaxedQueryChars if they are not.
  5. Restart Alfresco

Alfresco 5.2 - 6.1

  1. Make sure /opt/alfresco-content-services/tomcat/webapps/alfresco/WEB-INF/

    web.xmlを編集します。
    To

    lib and cors-filter-2.5.jar, java-property-utils-1.9.1.jar is located.

  2. Edit /opt/alfresco-content-services/tomcat/webapps/alfresco/WEB-INF/web.xml
  3. Uncomment

    the filter element that are commented at

    <filter> between <!-- CORS Filter Begin

    → from<!

    --

    CORS Filter End -->. 

    > and <!-- CORS Filter Begin -->から<!-- CORS Filter End -->のコメント化されているfilter要素をコメント解除する。>

    Code Block
       <!-- CORS Filter Begin -->
       <filter>
          <filter-name>CORS</filter-name>
          <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
          <init-param>
             <param-name>cors.allowGenericHttpRequests</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.allowOrigin</param-name>
             <param-value>http://localhost:8081</param-value>
          </init-param>
          <init-param>
             <param-name>cors.allowSubdomains</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportedMethods</param-name>
             <param-value>GET, HEAD, POST, PUT, DELETE, OPTIONS</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportedHeaders</param-name>
             <param-value>origin, authorization, x-file-size, x-file-name, content-type, accept, x-file-type</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportsCredentials</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.maxAge</param-name>
             <param-value>3600</param-value>
          </init-param>
       </filter>
       <!-- CORS Filter End -->


  4. Specify

    the

    The URL to allow on the cross-domain to

    access "cros

    cors.allowOrigin

    "

    param-value of the init-param element

    .init-param要素のcors

    .

    allowOriginパラメーターで指定されているURLにクロスドメインでのアクセスを許可するURLを指定する。


    (

    ここではすべてのURLからのアクセスを許可する場合はアスタリスクとしていますが環境に応じて適切なURLを指定してください)(

    Asterisk is specified here, but Please specify the appropriate URL.)

    ( To allow all URL to access it specified asterisk, but please specify appropriate URL which according to you environment .)

    Code Block
          <init-param>
             <param-name>cors.allowOrigin</param-name>
             <!--param-value>http://localhost:8081</param-value-->
             <param-value>*</param-value>
          </init-param>


  5. <!-- CORS Filter Mappings Begin -->から<!-- CORS Filter Mappings End -->のコメント化されているfilter-mapping要素をコメント解除する。

    Uncomment the filter-mapping elments that are commented at the<
    Uncomment <filter-mapping> between <!-- CORS Filter Mappings Begin -->
    from
     and <!-- CORS Filter Mappings End -->.
    Code Block
       <!-- CORS Filter Mappings Begin -->
       <filter-mapping>
          <filter-name>CORS</filter-name>
          <url-pattern>/api/*</url-pattern>
          <url-pattern>/service/*</url-pattern>
          <url-pattern>/s/*</url-pattern>
          <url-pattern>/cmisbrowser/*</url-pattern>
       </filter-mapping>
       <!-- CORS Filter Mappings End -->


  6. Alfrescoを再起動します。Restart the
    Restart Alfresco
    . 

Alfresco 5.0.2 - 5.1

手順

  1. Make sure "cors-filter-21.9.43.jar,java-property-utils-1.9.1.jar" is located in "/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/lib".

  2. Edit /opt/alfresco/tomcat/webapps/alfresco/WEB-INF/libに配置します。web.xml

  3. Uncomment <filter> between <!-- CORS Filter Begin → and<!-- CORS Filter End -->

    Code Block
       <!-- CORS Filter Begin -->
       <filter>
          <filter-name>CORS</filter-name>
          <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
          <init-param>
             <param-name>cors.allowGenericHttpRequests</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.allowOrigin</param-name>
             <param-value>http://localhost:8081</param-value>
          </init-param>
          <init-param>
             <param-name>cors.allowSubdomains</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportedMethods</param-name>
             <param-value>GET, HEAD, POST, PUT, DELETE, OPTIONS</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportedHeaders</param-name>
          </init-param>
          <init-param>
             <param-name>cors.supportsCredentials</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.maxAge</param-name>
             <param-value>3600</param-value>
          </init-param>
       </filter>
       <!-- CORS Filter End -->


  4. Specify the URL to allow on the cross-domain to  "cros.allowOrigin" param-value of the init-param element.  

    (The following asterisk specified here, but please specify with appropriate URL according to environment)  

    Code Block
          <init-param>
             <param-name>cors.allowOrigin</param-name>
             <!--param-value>http://localhost:8081</param-value-->
             <param-value>*</param-value>
          </init-param>


  5. Uncomment  <filter-mapping>  between <!-- CORS Filter Mappings Begin --> and <!-- CORS Filter Mappings End --> .

    Code Block
       <!-- CORS Filter Mappings Begin -->
       <filter-mapping>
          <filter-name>CORS</filter-name>
          <url-pattern>/api/*</url-pattern>
          <url-pattern>/service/*</url-pattern>
          <url-pattern>/s/*</url-pattern>
          <url-pattern>/cmisbrowser/*</url-pattern>
       </filter-mapping>
       <!-- CORS Filter Mappings End -->


  6. Restart the Alfresco.

Alfresco 5.0.1

  1. Put cors-filter-2.4.jar and java-property-utils-1.9.1.ja.in /opt/alfresco/tomcat/webapps/alfresco/WEB-INF/lib directory.

  2. /opt/alfresco/tomcat/webapps/alfresco/WEB-INF/web.xmlを下記のように編集します。 Edit 'web.xml' in '/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/' as shown below. 

    Info
    <filter>要素のCORSはどこに設定しても問題は無し。
    Set <filter>element, 'CORS' anywhere.
    While, set<filter> can be put anywhere on web.xml 
    But, <filter-mapping> between ' must be put after "Global Localization Filter'" and before '"CMIS security context cleaning filter'.ただし、<filter-mapping>はGlobal Localization Filterの後、CMIS security context cleaning filterの前にする必要があるそうです。"


    Code Block
    themeRDark
       <filter>
          <filter-name>JSF Session Synchronized Filter</filter-name>
          <filter-class>org.alfresco.repo.web.filter.beans.SessionSynchronizedFilter</filter-class>
       </filter>
     
       <!-- ここから追加 Add descriptions start -->
       <filter>
          <filter-name>CORS</filter-name>
          <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
          <init-param>
             <param-name>cors.allowOrigin</param-name>
             <param-value>*</param-value>
          </init-param>
          <init-param>
             <param-name>cors.allowSubdomains</param-name>
             <param-value>true</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportedMethods</param-name>
             <param-value>GET, POST, HEAD, PUT, DELETE, OPTIONS</param-value>
          </init-param>
          <init-param>
             <param-name>cors.supportedHeaders</param-name>
             <param-value>Content-Type, Accept, Authorization</param-value>
          </init-param>
       </filter>
       <!-- ここまで追加 Add descriptions end -->
       <filter-mapping>
          <filter-name>Global Localization Filter</filter-name>
          <url-pattern>/*</url-pattern>
          <dispatcher>REQUEST</dispatcher>
       </filter-mapping>
     
       <!-- ここから追加 Add descriptions start -->
       <filter-mapping>
          <filter-name>CORS</filter-name>
          <url-pattern>/api/*</url-pattern>
          <url-pattern>/service/*</url-pattern>
          <url-pattern>/s/*</url-pattern>
          <url-pattern>/cmisbrowser/*</url-pattern>
       </filter-mapping>
       <!-- ここまで追加 Add descriptions end -->
     
       <filter-mapping>
          <filter-name>CMIS security context cleaning filter</filter-name>
          <url-pattern>/cmisws/*</url-pattern>
       </filter-mapping>


  3. Alfrescoを再起動します。 Reboot Restart the Alfresco.

Reference

About 'CORS'

Cross-origin resource sharing
W3C Cross-Origin Resource Sharing
Using CORS

AlfrescoのCORSモジュールに関する情報は下記となります。 Information  Information about 'CORS' module in 'Alfresco'.

...