Latest version: v1.3.0
Compatible with Fusion version: 5.9.4 and later
This connector retrieves data from an Adobe Experience Manager (AEM) repository. The AEM V2 connector is compatible with AEM version 6.5. Connector flow The AEM V2 connector supports the following:
  • Full crawling and recrawling of pages and assets in Adobe Experience Manager
  • Basic authentication
    In Fusion 5, the username and password fields have moved under Authentication Settings > Login Settings.
  • OAuth authentication
  • Security trimming to filter results based on user permissions
    • Filter document crawling by including and excluding paths and configuring content properties when setting up the connector.
  • Specific wait time between fetch requests to throttle crawls, if necessary
  • Optional crawling of child paths
Check for duplicate data when crawling child paths. For example, if the connector indexes both cq:Page and cq:PageContent then the results could include duplicated data.
The v1.3.0 version of this connector is only compatible with Fusion 5.9.4 and later when using security trimming. The v1.3.0 connector version uses Graph Security Trimming and not regular security trimming. It is imperative to treat this as a new connector, as configurations do not transfer over due to disparities between newer versions and previous ones. A full crawl is mandatory.

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.

AEM instance

  • AEM Author instance must be reachable over HTTP/HTTPS.
  • The QueryBuilder JSON API must be enabled. It’s typically located at /bin/querybuilder.json.
  • The JCR Download endpoints must be accessible, such as /crx/de/download.jsp or direct node paths.

Configure an AEM service account

Create a service account with the following:
  • Read access to content paths being crawled
  • Access to user and group APIs if using security trimming
  • Permissions to access the following:
    • Page metadata, such as cq:Page or jcr:content
    • Binary attachments such as PDFs and DOCX files
    • JCR nodes and properties
    • If using group mapping, access to /libs/cq/security/userinfo.json or equivalent endpoints

Content Paths

  • You must define one or more JCR root paths to crawl, such as /content/SITE_NAME/en.
  • Optionally provide:
    • Exclude path regexes to filter out subtrees
    • Attachment extension types
    • JCR property include/exclude filters

Authentication

Setting up the correct authentication according to your organization’s data governance policies helps keep sensitive data secure while allowing authorized indexing. The AEM V2 connector supports two modes of authenticating to your AEM instance: basic HTTP and OAuth. Fusion handles session management as needed, including cookie handling and token renewal. Basic HTTP authentication:
  • Provide a standard AEM username and password with read access to JCR paths.
  • If using security trimming, the AEM account also requires read access to the user and groups APIs.
OAuth 2.0 authentication:
  • Paste in an Access Token and optional Refresh Token.
  • If you do not have a pre-obtained token, the connector can fetch a token using JWT authentication.

Remote connectors

V2 connectors support running remotely in Fusion versions 5.7.1 and later. Refer to Configure Remote V2 Connectors.
Below is an example configuration showing how to specify the file system to index under the connector-plugins entry in your values.yaml file:
additionalVolumes:
- name: fusion-data1-pvc
    persistentVolumeClaim:
    claimName: fusion-data1-pvc
- name: fusion-data2-pvc
    persistentVolumeClaim:
    claimName: fusion-data2-pvc
additionalVolumeMounts:
- name: fusion-data1-pvc
    mountPath: "/connector/data1"
- name: fusion-data2-pvc
    mountPath: "/connector/data2"
You may also need to specify the user that is authorized to access the file system, as in this example:
securityContext:
    fsGroup: 1002100000
    runAsUser: 1002100000

Configuration