SharePoint

Overview

SharePoint is a web-based collaboration platform by Microsoft that facilitates document management, content sharing, and team collaboration within organizations, providing a centralized space for information and workflow integration.

Entitle can manage Groups in SharePoint.

This page will provide you with instructions on how to integrate Entitle and SharePoint.

General guidelines

To integrate your SharePoint with Entitle, you will need to:

  • Create an application on Entra ID, and extract tenant and client IDs.
  • Generate a certificate and a private key pair.
  • Provide Entitle with adequate permissions for the application.
  • Upload the certificate to the registered Entra ID application, and extract a thumbprint.

Set up SharePoint to work with Entitle

Stage 1: Generate a certificate and a private key

❕To use SharePoint's API - a certificate has to be created. The certificate will be uploaded to your Entra ID app later in this guide, while the key that will be generated will be added to Entitle's configuration.

  1. Open your terminal, and run the following command:
openssl req -x509 -new -nodes -newkey rsa:4096 -keyout key.pem -out cert.pem -days 3650

📘

Note

the days value refers to the number of days for the certificate to be valid. You can select a different amount of days, however it will require updating the integration setup each time the certificate expires and recreated.

  1. Run the following command to escape new lines from the newly created key:
cat key.pem | sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/\\n/g' -e '$s/$/\\n/'
  1. Copy the resulted key, as you will use it later in this guide as well.

Stage 2: Create an application

  1. Go to the Microsoft Azure portal.

  2. Click on Microsoft Entra ID.

  3. Click on the App registrations tab in the left-side menu.

  4. Then, click on New registration.

  5. Give your app a Name and leave the rest as is. Then, click on Register.

  1. Copy your Application (client) ID and Directory (tenant) ID for later.
  2. Click on Add a certificate or secret on the right side.
  1. Click on Upload certificate.
  1. On the pop-up window to your right, upload the certificate file (called cert.pem) you created on Stage 1, and click Add.
  1. Copy the thumbprint value, as you will use it later in this guide.

Stage 3: Assign permissions to Graph API

  1. Go to API permissions.
  1. Click on Add a Permission.
  1. Then select SharePoint.
  1. Select Application permissions.
  1. Using the search bar that appears, find the following permission and select it:
Sites.FullControl.All
  1. Click the Add Permissions button.
  1. Go back to all APIs, and then pick Microsoft Graph.
  1. Choose Application permissions.
  1. Using the search bar that appears, find the following permissions and select them:
Sites.Read.All
User.Read
User.Read.All
  1. When you are done selecting all permissions, click on Add permissions at the bottom of the screen.
  1. Click on Grant admin consent for Default Directory, and then click Yes.

Creating the integration in Entitle

All that is left to do is create an integration on the Entitle application (for more information on how to create a new Entitle integration, see Here).

  1. Log into Entitle and navigate to the Integrations page.

  2. After clicking the Add Integration button, type SharePoint in the Application field. You can find more information about integration creation in Entitle here.

  3. Don’t forget to set the Save on field with your configuration, i.e. your own hosted agent or Entitle’s cloud.

  4. Paste the client ID copied on Stage 2: step 6 on the client_id field.

  5. Paste the thumbprint copied on Stage 2: step 9 on the thumbprint field.

  6. Paste the tenant ID copied on Stage 2: step 6 on the tenant field.

  7. Paste the private_key copied on Stage 1: step 3 on the private_key field.

Example Connection JSON:

{
  "client_id": "The value of Application (client) ID from Stage 2: step 6",
  "thumbprint": "The thumbprint value from Stage 2: step 9",
  "tenant": "The value of Directory (tenant) ID from Stage 2: step 6",
  "private_key": "The Private Key value from Stage 1: step 3"
}
  1. Click Save and you are done!🎉