Skip to main content

Overview of Exchange Online Connector

The Exchange Online (EXO) connector contains multiple Azure services, including microservices, web jobs, and Azure functions used for inventorying and managing Exchange Online in EmpowerID. This information can be managed in EmpowerID as well as synchronized with data in any connected back-end user directories.

Supported Features and Attribute Mappings

Azure Components Required by the Exchange Online Microservice

Key to the Exchange Online connector is the Exchange Online (EXO) microservice, which communicates with EmpowerID and your Exchange tenant to allow you to collect and manage your Exchange data in EmpowerID. To do so, the microservice needs to be deployed to each Exchange tenant, and each of those tenants needs to be configured with additional Azure components. The number of components needed differs depending on whether you are self-hosting or using EmpowerID SaaS.

Azure Components for Self-hosting EmpowerID

If you are not using EmpowerID SaaS and want EmpowerID to manage one or more of your Exchange tenants, you need to configure one of those tenants with all of the components shown on the “EmpowerID side” (left) of Figure 1. These components are necessary to inventory Exchange. In addition to these, you also need to configure each Exchange tenant to be managed by EmpowerID with all of the components shown on the “Self-hosted” side of Figure 1. The only exception to this is the Azure AD SCIM app service. This service only needs to be set up once within Azure.

info

All of the components shown on the EmpowerID side of the image are required whether you are self-hosting EmpowerID or using EmpowerID SaaS. The only difference is when using EmpowerID SaaS, you do not need to set up these components. EmpowerID takes care of that for you.

Figure 1 below image depicts the Azure components you need to configure when self-hosting EmpowerID. The purpose for each component is described in the table that follows the figure.

Figure 1: Azure components needed to configure Exchange Online when self-hosting EmpowerID

Table 1: Azure Components you need to configure when self-hosting EmpowerID

Azure ComponentPurpose
Key VaultStores secrets and certificate for the Azure functions and web jobs to access
Cosmo DBStores EXO information

Tracks inventory objects per schedule

Stores configuration needed by the EXO app service

Used by the AzGeneralService app service to persist data each time a call is made to the service
Az General Service App Service with Managed IdentityStores and retrieves configuration settings needed by EXO functions and web jobs
Storage AccountUsed to store EXO information for each site collection in blobs

Used to store the data necessary in the queues to trigger the web jobs
Service BusQueue stores differential data to be pushed to EmpowerID
Web Jobs App Service with Managed IdentityCall the EXO microservice to retrieve mailboxes and permissions and stores them in the blob
SPO Functions Function App with Managed IdentityFunction to register SharePoint tenants in Cosmos DB

Function to update SharePoint tenants in Cosmos DB

Function to delete SharePoint tenants in Cosmos DB

Function to claim inventory for SharePoint tenants in Cosmos DB

Function to process data in the service bus queue and pushes it to EmpowerID

All functions retrieve the configuration data from AzGeneralService App Service
Azure Components Required for each Exchange Online Tenant
Azure ComponentPurpose
Service Principal application 1Used to provide Azure AD authentication to the app service that hosts the Exchange Online microservice
Service Principal application 2Used to grant API permissions to Microsoft Graph and Exchange API endpoints
App ServiceUsed to host the Exchange Online app service
Key VaultStores certificate for certificate-based authentication between the microservice and the service principal registered in Azure for it

Stores an access policy that grants key, secret and certificate permissions to the Exchange Online app service hosting the microservice
Cosmo DBStores configuration information needed by the Exchange Online app service
Azure AD SCIM MicroserviceUsed to inventory and manage Azure AD information in EmpowerID. This microservice must be deployed to Azure before setting up the EXO microservice.

This microservice must be deployed to Azure before setting up the EXO microservice.

Azure Components Required for EmpowerID SaaS

If you are taking advantage of EmpowerID SaaS, the components you need to configure in Azure are minimal as EmpowerID configures everything needed to inventory Exchange (represented by the grayed-out components on the left side of Figure 2 below). As a SaaS customer, you only need to configure the components shown on the right side of the figure. If you are using EmpowerID to manage more than one Exchange tenant, you need to configure these components for each of those tenants.

Table 2: Azure Components you need to configure when using EmpowerID SaaS

Azure ComponentPurpose
Service Principal application 1Used to provide Azure AD authentication to the app service that hosts the Exchange Online microservice
Service Principal application 2Used to grant API permissions to Microsoft Graph endpoints
App ServiceUsed to host the Exchange Online app service
Key VaultStores certificate for certificate-based authentication between the microservice and the service principal registered in Azure for it

Stores an access policy that grants key, secret and certificate permissions to the Exchange Online app service hosting the microservice
Cosmo DBStores configuration information needed by the Exchange Online app service
Azure AD SCIM MicroserviceUsed to inventory and manage Azure AD information in EmpowerID. This microservice must be deployed to Azure before setting up the EXO microservice.

EmpowerID Items to Deploy

The SharePoint Online connector includes several components that you need to deploy to Azure from EmpowerID. These components and their related files are listed in the below table.

EmpowerID ComponentFile
AzGeneralService MicroserviceAzGeneralServices_MicroserviceV3.zip
Service Principal application 2Used to grant API permissions to Microsoft Graph endpoints
App ServiceUsed to host the Exchange Online app service
Key VaultStores certificate for certificate-based authentication between the microservice and the service principal registered in Azure for it

Stores an access policy that grants key, secret and certificate permissions to the Exchange Online app service hosting the microservice
Cosmo DBStores configuration information needed by the Exchange Online app service
Function AppUsed to update SharePoint user profiles
Azure AD SCIM MicroserviceUsed to inventory and manage Azure AD information in EmpowerID. This microservice must be deployed to Azure before setting up the EXO microservice. For details, see Connecting to Azure AD.