Skip to main content
Compatible with Fusion version: 4.1.0 through 5.12.0
The connector crawls folders, files, and metadata to fetch and index folder structure, binary content such as PDFs, DOCX, and images, and metadata such as title, creator, and modification date.
ImportantV1 deprecation and removal noticeStarting in Fusion 5.12.0, all V1 connectors are deprecated. This means they are no longer being actively developed and will be removed in Fusion 5.13.0.The replacement for this connector is using the Alfresco recipe with the REST V2 connector.If you are using this connector, you must migrate to the replacement connector or a supported alternative before upgrading to Fusion 5.13.0. We recommend migrating to the replacement connector as soon as possible to avoid any disruption to your workflows.
This connector was developed for the Alfresco Community content repositories and was not tested on any other versions of Alfresco Community, Alfresco Content Services, or any other CMIS server. Connector flow

Prerequisites

Perform these prerequisites to ensure the connector can reliably access, crawl, and index your data. Proper setup helps avoid configuration or permission errors, so use the following guidelines to keep your content available for discovery and search in Fusion. The connector uses the Alfresco Search v1 API and Node API, so ensure the following endpoints are accessible:
  • /alfresco/api/-default-/public/search/versions/1/search
  • /alfresco/api/-default-/public/alfresco/versions/1/nodes/{id}
  • /alfresco/api/-default-/public/authentication/versions/1/tickets
Create a dedicated Alfresco user account with the following:
  • Read access to the desired folder paths.
  • Permission to access content metadata and binary files.
  • If using security trimming, allow access to /groups and /people endpoints to fetch user and group access metadata.
Before using the connector, confirm the user can access the Alfresco REST API:
curl -u USERNAME:PASSWORD "\https://alfresco.DOMAIN.com/alfresco/api/-default-/public/search/versions/1/search"
You should get a JSON response with search results or an empty result set.

Authentication

Setting up the correct authentication according to your organization’s data governance policies helps keep sensitive data secure while allowing authorized indexing. If authentication is required to access your data, you will need the username and password of an Alfresco user with REST API and read access. If using authentication, create or identify a service user in Alfresco with the following:
  • Read access to the desired content paths.
  • Permission to access metadata and download binary files.
  • Access to /people and /groups endpoints if you’re enabling security trimming.

Learn more

The Alfresco Connector is a crawler for the Alfresco server, which adheres to the Content Management Interoperability Services (CMIS) standard.If you are having issues with your Alfresco datasource, try the troubleshooting steps below:

Check the CMIS connection URL

Use the following command to validate the CMIS connection URL is correct(replace the username, hostname and port):
curl -v -u <username> "https://<hostname>:<port>/alfresco/api/-default-/public/cmis/versions/1.1/atom"
The expected response should be a 200 HTTP status response and an XML file describing the CMIS 1.1 AtomPub Service Document. As a first step, the connector will retrieve and load the AtomPub service document and the information there will be useful for future requests.

Validate URI templates

The CMIS 1.1 AtomPub service document describes the format of the URLs. For example:
<cmisra:uritemplate>
    <cmisra:template>https://<hostname>:<port>/alfresco/api/-default-/public/cmis/versions/1.1/atom/id?
                    id={id}&amp;filter={filter}&amp;includeAllowableActions={includeAllowableActions}
                    &amp;includeACL={includeACL}&amp;includePolicyIds={includePolicyIds}
                    &amp;includeRelationships={includeRelationships}
                    &amp;renditionFilter={renditionFilter}
    </cmisra:template>
    <cmisra:type>objectbyid</cmisra:type>
    <cmisra:mediatype>application/atom+xml;type=entry</cmisra:mediatype>
</cmisra:uritemplate>
Those template URIs will be used to build the requests the connector will require to retrieve data from Alfresco server.To test if the URI templates are correct, run any of the URI templates on that document, replace the necessary parameters and IDs. For example, to retrieve the root folder using the path parameter: path=/
curl -v -u admin "https://<hostname>:<port>/alfresco/api/-default-/public/cmis/versions/1.1/atom/path?path=/&amp;filter=&amp;includeAllowableActions=&amp;includeACL=&amp;includePolicyIds=&amp;includeRelationships=&amp;renditionFilter="
The expected response should be a 200 HTTP status response and an XML file describing the root folder. It’s possible to use other URI template queries to validate they are correct.

Check Alfresco opencmis properties

If a request using the URI template returns a non OK HTTP status, probably the Alfresco opencmis properties are incorrect. To check that:
  • Go to the Alfresco admin console:
http://<your-host-name>:<alfresco-port>/alfresco/service/enterprise/admin
  • Under the Support Tools section, go to the JMX Settings
  • Click the Export button, under the Export System Settings section.
  • That will download a file that is listing all the current Alfresco server properties.
  • Look for the property: opencmis.server.value. The URI templates will be built using the URL set in that property.
  • If the URL set in that property is incorrect change it.
  • It would be necessary to change other properties too:
opencmis.context.override=true
opencmis.context.value=
opencmis.servletpath.override=true
opencmis.servletpath.value=
opencmis.server.override=true
opencmis.server.value=https://<hostname>:<port>/alfresco/api
  • Change those properties in the alfresco-global.properties file.
It’s important to configure that value with a correct URL, otherwise the requests will fail and documents can not be indexed.Configurations taken from a related question in the Alfresco forum.

Configuration

When entering configuration values in the UI, use unescaped characters, such as \t for the tab character. When entering configuration values in the API, use escaped characters, such as \\t for the tab character.

Security Trimming

The Alfresco V1 connector has a security trimming feature. You can activate security trimming using the ENABLE SECURITY TRIMMING checkbox in the UI.
I