How to setup Mailbox access

Depending on how you deploy the Sendent for Outlook (cross-platform) solution, it requires mailbox access in a specific manner.

The guide distinguishes between Microsoft 365 Exchange and Exchange On-Premise deployments.

The settings that will be adjusted specifically affect the Docker Compose configuration.

By default, Sendent uses the legacy Exchange authentication, however, this may break in the future once Microsoft decides to disable it for Microsoft 365. For Exchange On-Premise configuration, scroll down to the very end or use the menu on the right.

Microsoft 365 

In case you're deploying Sendent for Outlook against your Microsoft 365 mailbox, apply the following steps.

Step 1. Create a new app-registration

  1. Access your Microsoft entra-environment at https://portal.azure.com
  2. From here navigate to 'App registration'. 
  3. Register a new app registration with the following settings.
Name Value Description
Name sendent-outlook

The app registration can be named anything; just make sure it's something easily identifiable for your reference.

Supported Account Type Single tenant Sendent for Outlook only supports Single tenant application access.
Redirect Uri (part 1) SPA Choose Single-Page application (SPA)
Redirect Uri (part 2) https://<yourcontainerdomain>/redirect.html Set the URL next to it, to your container domain, with /redirect.html at the very end. For example: https://outlook.sendent.com/redirect.html

Overview

Step 2. Setting up permissions

Once the app-registration is created, you will automatically be redirected to the actual app-registration details. Here, Sendent for Outlook must be given delegated API permissions. 

  1. Navigate to API permissions in the menu.
  2. Click Add a permission.
  3. On the side, a new menu will open, choose here Microsoft Graph
  4. Now the option will be presented to choose either for 'Delegated permissions' or 'Application permissions'. Here we choose for Delegated permissions.
  5. Now you can search for delegated permissions, and add the following permissions: Mail.ReadWrite and Mail.Send.

The overview should now look like the following. As the last step, Grant admin consent.

Step 3. Fine-tuning authentication

Now we navigate to the Authentication page within the app-registration. It should be noticed that the 'Single-page application Redirect URIs' should be set with https://<yourcontainerdomain>/redirect.html.

Add the same URI, as above for Front-channel logout URL (https://<yourcontainerdomain>/redirect.html). 

Enable Implicit grant and hybrid flows.

  • Access tokens
  • ID tokens

Validate that Supported account types is set to Single Tenant only.

Here's an overview on how it should look like: 

Step 4. Copying information

Within the app-registration, access the overview menu.

Here copy temporarily the Application (client) ID and Directory (tenant) ID to some notepad.

Step 5. Modifying docker compose

Set the following environment variables within your docker compose file.

Environment Settings Value Description
MS_AUTH_TYPE naa Should always be set to naa.
MS_APP_ID <app_registration_id> Place here the Application (client) ID you just copied.
MS_TENANT_ID <tenant_id> Place here the Directory (tenant) ID you just copied.

Example

version: '3.9'

services:
  sendent.outlook:
    image: rg.nl-ams.scw.cloud/sendent-public/sendent-outlook:latest
    build:
      context: .
      dockerfile: Dockerfile
    restart: on-failure
    environment:
     - MS_AUTH_TYPE=naa
     - MS_APP_ID=<app_registration_id>
     - MS_TENANT_ID=<tenant_id>
     - BASE_URL=https://outlook.sendent.com
    ports:
      - 4300:4300
    volumes:
      - ./docker-config:/usr/src/app/outlook-addin/docker-config
    networks:
      - node_network

networks:
  node_network:

Exchange On-Premise

In case you're deploying Sendent for Outlook against Exchange On-Premise, apply this step. 

Ensure to add the following environment variable is set in your docker compose file: 

MS_AUTH_TYPE=legacy_exchange

Example:

version: '3.9'

services:
  sendent.outlook:
    image: rg.nl-ams.scw.cloud/sendent-public/sendent-outlook:latest
    build:
      context: .
      dockerfile: Dockerfile
    restart: on-failure
    environment:
     - MS_AUTH_TYPE=legacy_exchange
     - BASE_URL=https://outlook.sendent.com
    ports:
      - 4300:4300
    volumes:
      - ./docker-config:/usr/src/app/outlook-addin/docker-config
    networks:
      - node_network

networks:
  node_network:

 

 


Was this article helpful?