SharePoint Connector sharepoint-connector

CAUTION
AEM 6.4 has reached the end of extended support and this documentation is no longer updated. For further details, see our technical support periods. Find the supported versions here.

Day JCR Connector for Microsoft SharePoint 2010 and Microsoft SharePoint 2013, version 4.0.

This article includes details around the Adobe JCR Connector for Microsoft SharePoint 2010 and Microsoft SharePoint 2013, version 4.0.

The SharePoint connector supports the following base functionalities:

  • Reading content and metadata from SharePoint.
  • Acknowledging SharePoint security settings for accessed content by applying native SharePoint authentication and authorization
  • Content Integration using Content Finder
  • Using AEM components, such as External Resource to display SharePoint images and videos
  • Synchronizing SharePoint with AEM Assets

All functionalities are implemented using the native SharePoint web services as the interface to SharePoint content and services.

NOTE
SharePoint Connector is also supported with AEM 6.1 service pack 2. The connector no longer supports virtual repository mount and, therefore, it cannot be mounted. If you want to access the Sharepoint repository using Java APIs, use the Sharepoint connector’s JCR repository implementation in your project.
Installation, configuration, management, and IT operations of the SharePoint server and related IT infrastructure are outside the scope of this document. See vendor documentation on SharePoint for information about these topics. The connector requires these parts of the infrastructure to be properly installed, configured, and operated.

Getting started getting-started

To get started with the connector, do the following:

  • Ensure that you have at least Java 7 installed.

  • Download the connector package distribution file from Package Share.

  • Copy a valid license.properties file to the directory that contains the cq-quickstart-6.4.0.jar file.

  • Double-click/tap the .jar file to start AEM, or start it from the command line.

  • Install the connector package from Package Manager.

  • Configure the connector options.

Installing SharePoint connector installing-sharepoint-connector

The connector is a content package that facilitates easy installation. Install the package using Package Manager, and then set the SharePoint server URL
and other configuration options. The SharePoint content is available in the AEM repository.

Installation requirements installation-requirements

The connector requires the following:

  • Java Runtime Environment 1.7 or later
  • SharePoint Web Services available through the network
  • SharePoint server URL
  • User credentials and permissions for CRX and SharePoint repositories
  • Supported platforms

The SharePoint connector is available for downloading from packageshare.

Supported Platforms supported-platforms

The connector supports the following:

  • AEM versions:

    • AEM 6.4, 6.3
  • Microsoft SharePoint versions:

    • Microsoft Office SharePoint Server (MOSS) 2010
    • Microsoft Office SharePoint Server (MOSS) 2013
  • If you require support for custom deployments of the connector (OEM, special requirements, customized authentication methods), contact the Adobe office for your region.

NOTE
The connector only supports configurations officially supported by Microsoft. See MOSS 2010 and MOSS 2013 system requirements.

Standard installation standard-installation

AEM Package Share is used to distribute product features, examples, and hot fixes. For details, see the Package Share documentation.

To access Package Share on the AEM Welcome page, tap/click Tools and then select Package Share. You require a valid Adobe ID that includes your company email address. In addition, after logging in to your account, apply for Package Share access.

Integrating with AEM integrating-with-aem

To install the connector content package.

  1. Open an Adobe Support ticket to request for the connector featurepack.

  2. Download the package when it is available and then open Package Manager for your AEM instance.

  3. Tap/click Install from the package description page.

  4. From the Install Package dialog, tap/click Install.

    Note: Make sure that you are logged-in as administrator.

  5. When the package is installed, tap/click Close.

Configuring SharePoint connector configuring-sharepoint-connector

After you install the SharePoint connector, configure the application and the SharePoint layers for the connector.

Set the SharePoint server URL to make your SharePoint repository JCR compliant. You can set extra parameters to configure the connection with the SharePoint server. In addition, configure authentication with the SharePoint connector.

Configuring the connection with the SharePoint server configuring-the-connection-with-the-sharepoint-server

To set the URL of the SharePoint server and advanced options, perform these steps:

  1. Navigate to the OSGi Management Console: http://localhost:4502/system/console/configMgr.
  2. Search for the Day JCR Connector for Microsoft Sharepoint bundle.
  3. Edit the configuration values.
  4. Set the SharePoint Server URL as the value of Workspaces.
  5. Tap/click Save.

chlimage_1-81

‘Workspaces’ and ‘Default Workspace Name’ parameters:

By default the connector exposes a single JCR workspace. The SharePoint server which is exposed by this workspace is set through the ‘Sharepoint Server URL’ configuration parameter.

The connector can also be configured for multiple workspaces. In this case, each workspace is associated with the URL of the respective SharePoint server that is exposed through the workspace. To add a workspace, add a workspace definition to the Workspaces parameter. A workspace definition has the following format:
<name>= <url> where
<name> is the name of the JCR workspace and
<url> is the URL of the SharePoint server for that workspace.

In AEM, perform one more step apart from above configuration steps. Allow list the ‘com.day.cq.dam.cq-dam-jcr-connectors’ bundle.

To allow list bundles in AEM, perform the following steps:

  1. Navigate to the OSGi Management Console: http://localhost:4502/system/console/configMgr.

  2. Search for “Apache Sling Login Admin Whitelist” service.

  3. Select Bypass the whitelist.

  4. Add ‘com.day.cq.dam.cq-dam-jcr-connectors’ in whitelist bundles default

  5. Click Save.

chlimage_1-82

NOTE
If you configure multiple workspaces, specify the name of the default workspace in the Default Workspace Name parameter.

For additional information around authentication-related parameters, see Authentication.

Verifying the Sharepoint setup verifying-the-sharepoint-setup

After you configure the connector, verify the following:

  • SharePoint server runs, and the web services are accessible to the connector instance
  • SharePoint user credentials are valid and the user has necessary SharePoint permissions
  • The connector is installed and configured properly

Configuring DAM Sync with the SharePoint server configuring-dam-sync-with-the-sharepoint-server

To synchronize the SharePoint Assets with AEM, perform the following steps:

  1. Navigate to the OSGi Management Console: http://localhost:4502/system/console/configMgr.
  2. Search for “Default DAMAssetSynchronization” service.
  3. Edit the configuration values.
  4. Set the user name and the corresponding Password of the user having access on the SharePoint site.
  5. Click Save.

Enable the DAM Sync Service, which is disabled by default:

  1. Navigate to the OSGi Web Console Components: http://localhost:4502/system/console/components
  2. Search for “com.day.cq.dam.jcrconnectors.impl.AssetSynchronizationService.”
  3. Click Enable.

Optionally, you can configure the Synchronization delay between different synchronization cycles:

  1. Navigate to the OSGi Management Console: http://localhost:4502/system/console/configMgr
  2. Search for “DAY CQ DAM JCR Connector Asset Synchronization Service.”
  3. Edit the configuration values.
  4. Set the value of the Synchronization Period (in seconds).
  5. Click Save.

Configuring Authentication configuring-authentication

Sharepoint includes the Classic and Claims Based authentication methods, both of which support the following authentication types:

  • Basic
  • Forms-Based

In particular, the following types of authentication are available:

  • Classic-Basic
  • Classic-Forms-based
  • Claims-Basic
  • Claims-Forms-based

The AEM JCR Connector for Microsoft SharePoint 2010 and Microsoft SharePoint 2013, version 4.0. supports Claims-based authentication (which is suggested by Microsoft), which operates in the following modes:

  • Basic/NTLM authentication: The connector first tries to connect using basic authentication. If not available, it switches to NTLM-based authentication.
  • Forms-based authentication: Sharepoint validates users based on credentials that users type in a login form (typically a web page). The system issues a token for authenticated requests that contains a key for reestablishing the identity for subsequent requests.

Configuring Forms Based Authentication

Go to: http://localhost:4502/system/console/bundles

  1. Click OSGI -> Configuration
  2. Search “Day JCR Connector for Microsoft Sharepoint”
  3. Click “Edit the configuration values”
  4. Set the value of ‘Sharepoint Connection Factory’ as ‘com.day.crx.spi.sharepoint.security.FormsBasedAuthenticationConnectionFactory’
  5. Click Save

Configuring Basic Authentication (Windows)

  1. Disable Token Authentication.
  2. Go to http://localhost:4502/system/console/bundles.
  3. Click OSGI > Configuration.
  4. Search for Day JCR Connector for Microsoft Sharepoint.
  5. Click Edit the configuration values.
  6. Set the value of Sharepoint Connection Factory to com.day.crx.spi.sharepoint.security.WindowsAuthenticationConnectionFactory.
  7. Click Save.

Only a user who is authenticated on both AEM and SharePoint can access the SharePoint content through the connector.

You can also use the connector extension for authentication to create a custom authentication module, which, e.g., maps access by AEM users to specific SharePoint users. Create AEM users corresponding to SharePoint users (user name and password should match) to be able to see SharePoint content mapped to the connector instance.

To create a user in AEM:

  1. Login to http://localhost:9502/with the admin user.
  2. Click Tools.
  3. Click Security.
  4. Click Users.
  5. Click Create User
  6. Provide the user ID (User name having access on SharePoint)
  7. Provide the corresponding password
  8. Click the Green tick symbol to create the user

To add the user in the admin group:

  1. Go to Group Administration
  2. Click the ‘a’ node
  3. Click ‘administrators’
  4. Type the user ID create above in the text box before Browse button
  5. Click the Green tick symbol to add the user to admin group

Disable Token Authentication disable-token-authentication

  1. Download and install the package basic auth. zip from Package Share.

  2. Close Quickstart.

  3. Open the file \crx-quickstart\repository\repository.xml.

  4. Find the tag <LoginModule class="com.day.crx.core.CRXLoginModule"> ... </LoginModule>.

  5. Insert the tag <param name="disableTokenAuth" value="true"/> inside the tag mentioned in step 4.

  6. Save and close the xml file.

  7. Restart QuickStart and log in with your credentials.

Supporting different authentication methods of the SharePoint server supporting-different-authentication-methods-of-the-sharepoint-server

In its standard version, the connector supports the standard IIS Windows authentication (Basic) and Forms-based authentication (token based). The other authentication methods can be supported through the extensibility mechanism.

The following steps provide guidelines around extending the standard authentication to support various authentication methods of the SharePoint server:

  1. Implement com.day.crx.spi.sharepoint.security.SharepointConnectionFactory to handle the client side of your specific authentication process.

  2. Install the SharepointConnectionFactory implementation as a fragment bundle with fragment host com.day.crx.spi.crx2sharepoint-bundle.

    When using Maven, adapt the following configuration of the maven-bundle-plugin to the requirements of your project:

    code language-xml
               <plugin>
                   <groupId>org.apache.felix</groupId>
                   <artifactId>maven-bundle-plugin</artifactId>
                   <extensions>true</extensions>
                   <configuration>
                       <instructions>
                           <Export-Package />
                           <Private-Package>
                               <!-- your private package here -->
                           </Private-Package>
                           <Fragment-Host>
                               com.day.crx.spi.crx2sharepoint-bundle
                           </Fragment-Host>
                        </instructions>
                   </configuration>
               </plugin>
    
  3. Register the SharepointConnectionFactory implementation in the connector configuration. In the configuration window of the connector, click Advanced options. In the for Sharepoint Connection Factory field, specify the name of the implementation com.day.crx.spi.sharepoint.auth.CustomConnectionFactory.

  4. Restart the connector.

recommendation-more-help
5ce3024a-cbea-458b-8b2f-f9b8dda516e8