# Microsoft Exchange for Authentication via SAML

{% hint style="info" %}
This guide provides step-by-step instructions for configuring ADFS (Active Directory Federation Services) as a Service Provider (SP) to enable authentication for OWA (Outlook Web App) and EAC (Exchange Admin Center). It outlines the process of using Hideez Server as an IdP for authentication in Microsoft Exchange via SAML.
{% endhint %}

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FKzsTbA9SvOjDb9W7stc9%2Fhes-adfs-owa.png?alt=media&#x26;token=fdcb2edf-f6f9-4eaa-a9d6-6730e6126179" alt=""><figcaption></figcaption></figure>

## **1. Initial Setup**

#### **Prerequisites**

{% hint style="info" %}
Before proceeding, ensure the following components are already deployed and configured in your organization:

1. **Active Directory (AD)** is installed and configured.
2. **Microsoft Exchange** is operational and accessible.
3. A **Certificate Authority (CA)** is set up and configured.
4. Users can log in to **Outlook Web App (OWA)** via their browsers using Active Directory (AD) credentials.
5. All steps are performed by a user with **Domain Admins** and **Enterprise Admins** roles.
6. The ADFS server will be installed on a new, separate server within the Active Directory (AD) environment.
   {% endhint %}

## **2. Configure AD FS and OWA**

### **Step 1: Export AD FS Signing Certificate and Import to Exchange Server**

{% hint style="info" %}
The AD FS server uses a token-signing certificate for encrypted communication and authentication between the AD FS server, Active Directory domain controllers, and Exchange servers. This self-signed certificate is automatically copied over to the Web Application Proxy server during the installation but is required to be manually imported into the Trusted Root Certificate store on all of the Exchange servers in the organization.
{% endhint %}

1. To export the certificate, log onto the AD FS server, launch the AD FS Management Console, navigate to AD FS -> Service -> Certificate

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FuJjSNvXMzNoJK0Xy9Rh7%2Fimage.png?alt=media&#x26;token=eab1f8b3-e9a2-4c37-a430-87d77fe34c2a" alt="" width="563"><figcaption></figcaption></figure>

2. Select the certificate listed under Token-signing, right click and select on View Certificate…:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2Fb8EgvhUBjFZofyyO4aFN%2Fimage.png?alt=media&#x26;token=70b271ac-557a-4cbc-978f-0ebc8c638d08" alt="" width="563"><figcaption></figcaption></figure>

3. The general properties of the certificate will be displayed:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FvOUSWY1umuWxRMQi5yss%2Fimage.png?alt=media&#x26;token=b667137e-9fdc-40e6-8ca4-27f965b9f81f" alt="" width="304"><figcaption></figcaption></figure>

4. Proceed and navigate to the Details tab and click on the Copy to File… button:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FJHyAMurp7yNIn217uxWR%2Fimage.png?alt=media&#x26;token=b4e9f30c-e733-44b7-9791-53da2fb25d67" alt="" width="303"><figcaption></figcaption></figure>

5. Go through the Certificate Export Wizard to export the certificate:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2Ff96Hl0MItJaiKxIcDW07%2Fimage.png?alt=media&#x26;token=a39bbbca-b5dc-4297-817d-e0fc4c9a5c85" alt="" width="563"><figcaption></figcaption></figure>

6. Select DER encoded X.509 (.CER) format and proceed with the export:

<div><figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FpxWCToc8xxJZjgtnYx0n%2FScreenshot_76.png?alt=media&#x26;token=fcd721bc-78bc-47ca-addb-fd7c377538d5" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FDvrxFcqnUqVt0DqeyQCJ%2FScreenshot_2.png?alt=media&#x26;token=f5ed9bbf-1d92-4924-ad88-583721b55a41" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FMNKph28EmfhZlKb1e20q%2FScreenshot_3.png?alt=media&#x26;token=d26bd568-3e4e-4941-9062-40a72491ccc9" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FTCTR3Z9dcqtQW0825KUg%2FScreenshot_4.png?alt=media&#x26;token=37bfffe5-783f-42c3-8a48-00ded1f0def4" alt=""><figcaption></figcaption></figure></div>

### **Step 2:** Create a relying party trust and custom claim rules in AD FS for OWA (Outlook on the web)

With the AD FS prerequisites configured, proceed to create the relying party trust for OWA (Outlook on the web) on the AD FS server by launching the AD FS Management console:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FlwmHMF9JcgzgFSm2Y7d9%2Fimage.png?alt=media&#x26;token=532c9fa8-d7cd-4239-a17b-884c1fee5ea7" alt="" width="563"><figcaption></figcaption></figure>

Navigate to **AD FS -> Relying Party Trusts** and click on **Add Relying Party Trusts**…:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FoIVYllzMcrn3axg4skJE%2Fimage.png?alt=media&#x26;token=30337317-46f0-427b-8e73-8c140cb616d2" alt="" width="563"><figcaption></figcaption></figure>

Select Claims aware and click on Start:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FLEHfhKCQBgDG9jHgfr3A%2Fimage.png?alt=media&#x26;token=71049507-6bce-4f9c-a726-fe469bd93935" alt="" width="563"><figcaption></figcaption></figure>

Change the default Import data about the relying party published online or on a local network to Enter data about the relying party manually:

<div><figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FzxvYHG2ME4mu2S2mH8av%2Fdownload.png?alt=media&#x26;token=b53a6ef7-17ba-46d3-8be9-10a6ffea0566" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FNMPHtywqz7uumnNKCOfo%2Fdownload%20(1).png?alt=media&#x26;token=e53356a8-7627-49df-82e8-e2fc4a68d083" alt=""><figcaption></figcaption></figure></div>

Enter the Display name and Notes for Outlook on the web-relying party:

*Outlook on the web*

*This is a trust for* [*https://exch.lab.hideez.com/owa/* ](https://exch.lab.hideez.com/owa/)

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FUoYNvYygInCbEJJYVb2u%2Fimage.png?alt=media&#x26;token=1df0b410-5f6f-467b-bfcc-bd1862a6b29f" alt="" width="375"><figcaption></figcaption></figure>

Leave the Configure Certificate window as unconfigured and click on Next:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2F7VSURkYYXdYa8wThueOz%2Fimage.png?alt=media&#x26;token=144bc15c-d3cc-4c1a-9a5b-a29ea1322df3" alt="" width="375"><figcaption></figcaption></figure>

Check the Enable support for the WS-Federation Passive protocol checkbox and Enter the URL of the Outlook on the web address (e.g <https://exch.lab.hideez.com/owa/>):

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FDrQBKEbhjy3cl428z0Kp%2Fimage.png?alt=media&#x26;token=09dc0174-d625-433f-b1e9-cade239dc866" alt="" width="563"><figcaption></figcaption></figure>

Add the URL of the Outlook on the web address for the Relying party trust identifier:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FaGUYV2N6yhEPn9nVbnm6%2Fimage.png?alt=media&#x26;token=8701cca1-cbfc-48d6-a451-fd44e1c338f4" alt="" width="563"><figcaption></figcaption></figure>

Select **Permit everyone**:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2Ft2teGGLAj9JmO3pP9sEu%2Fimage.png?alt=media&#x26;token=c53ba6cc-8fb1-40ef-a179-0d9e71766e92" alt="" width="375"><figcaption></figcaption></figure>

On the **Ready to Add Trust** page, review the settings, and then click **Next** to save the relying party trust information:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FXlo0EB4eCiT1DF9U7Tp6%2Fimage.png?alt=media&#x26;token=e7056f20-46ea-4f80-a12d-c08db625045a" alt="" width="375"><figcaption></figcaption></figure>

Leave the Configure claims issuance policy for this application checked and click Close:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FbqcPO5Oe4GA4Dh6ap7Mf%2Fimage.png?alt=media&#x26;token=d5db7fa5-5294-4514-93b6-16aad62833cc" alt="" width="375"><figcaption></figcaption></figure>

### **Step 3:  Create Claim Rules in AD FS**

{% hint style="info" %}

1. Define a Relying Party Trust in AD FS for Outlook on the Web (OWA).

2. Create custom claim rules, such as the **Pass-Through UPN Rule**:
   * **Claim Rule Name**: *Pass Through UPN*
   * **Incoming Claim Type**: *UPN*
     {% endhint %}

3. In the Edit Claim Issuance Policy for Outlook on the web window, click on Add Rule…:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FvDImSO8lzQ9bPb0rGT6y%2FScreenshot_5.png?alt=media&#x26;token=44d44e82-27f3-4413-8fa1-cb4aa263322d" alt=""><figcaption></figcaption></figure>

2. Change the **Pass Through or Filter an Incoming Claim** and then click **Next**.

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FYD4wLprclB9BeGlThBAN%2FScreenshot_6.png?alt=media&#x26;token=c341bb14-72a5-4210-82fc-84a5b2a41b23" alt="" width="563"><figcaption></figcaption></figure>

3. Enter the following configuration for the parameters:

* **Claim Rule Name**: *Pass Through UPN*
* **Incoming Claim Type**: *UPN*

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FsLJZ2sIB4YtuKuf47dHd%2Fimage%20(1).png?alt=media&#x26;token=3853d3c9-30c6-4665-b3a5-5ce480432b16" alt="" width="563"><figcaption></figcaption></figure>

4. Click Finish.
5. Click OK to close the window

You should see the new Outlook on the web Relying Party Trust created:

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FFlUeeGXicTrdvYbt5Edn%2Fimage.png?alt=media&#x26;token=17349986-635c-43f6-a3b1-21d8322e68e5" alt="" width="563"><figcaption></figcaption></figure>

{% hint style="info" %}
Please note that **Steps 4, 5, and 6 are optional** and are intended for publishing Outlook to the internet. If this has already been configured in your environment, you can proceed directly to **step 7**.
{% endhint %}

### **Step 4 (Optional): Publish OWA via AD FS Web Application Proxy**

* Use the AD FS Web Application Proxy to securely expose OWA for external access.

### **Step 5 (Optional): Create Relying Party Trust for EAC**

* Repeat the steps for setting up a Relying Party Trust for the Exchange Admin Center (EAC).

### **Step 6 (Optional): Publish EAC via AD FS Web Application Proxy**

* Configure the Web Application Proxy for the Exchange Admin Center (EAC).

### **Step 7: Configure Exchange Organization to Use AD FS Authentication**

{% hint style="info" %}
There is no way to configure the Exchange organization to use AD FS authentication within the GUI so begin by launching the Exchange Management Shell from one of the Exchange servers.

The cmdlet to configure the Exchange organization to use AD FS for authentication is as follows:

```
Set-OrganizationConfig -AdfsIssuer https://<FederationServiceName>/adfs/ls/ -AdfsAudienceUris "<OotwURL>","<EACURL>" -AdfsSignCertificateThumbprint "<Thumbprint>"
```

{% endhint %}

* Example:

  ```powershell
  Set-OrganizationConfig -AdfsIssuer https://adfs.lab.hideez.com/adfs/ls/ -AdfsAudienceUris "https://exch.lab.hideez.com/owa/","https://exch.lab.hideez.com/ecp/" -AdfsSignCertificateThumbprint "7D533C61B531D056A0058BB0E2DDE4904E86FB7F"
  ```

This example uses the following values:

* **AD FS URL**: `https://adfs.lab.hideez.com/adfs/ls/`
* **Outlook on the web URL**: `https://exch.lab.hideez.com/owa/`
* **EAC URL**: `https://exch.lab.hideez.com/ecp/ecp/`
* **AD FS token-signing certificate thumbprint**: The `ADFS Signing - exch.lab.hideez.com` certificate that has the thumbprint value `7D533C61B531D056A0058BB0E2DDE4904E86FB7F.`

### **Step 8: Enable AD FS Authentication on Virtual Directories**

{% hint style="info" %}
For the Outlook on the web and EAC virtual directories, you need to configure AD FS authentication as the only available authentication method by disabling all other authentication methods.

* You need to configure the EAC virtual directory before you configure the Outlook on the web virtual directory.
* You'll likely want to configure AD FS authentication only on Internet-facing Exchange servers that clients use to connect to Outlook on the web and the EAC.
* By default, only Basic and Forms authentication are enabled for the Outlook on the web and EAC virtual directories.
  {% endhint %}

To use the Exchange Management Shell to configure an EAC or Outlook on the web virtual directory to only accept AD FS authentication, use the following syntax:

```
Set-OwaVirtualDirectory -Identity "OWA (Default Web Site)" -AdfsAuthentication $true -BasicAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -WindowsAuthentication $false
```

### **Step 9: Restart IIS on Exchange Server**

Restart Internet Information Services (IIS) on the Exchange server to apply the configuration changes.

1. Open IIS Manager on the Exchange server. An easy way to do this in Windows Server 2012 or later is to press Windows key + Q, type inetmgr, and select **Internet Information Services (IIS) Manager** in the results.
2. In IIS Manager, select the server.
3. In the **Actions** pane, click **Restart**.

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FuO6ssguBQvZIKNoTCdmc%2Fimage.png?alt=media&#x26;token=f9e15269-4894-4d94-8914-547d2d16a6a8" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
Please refer to the official Microsoft documentation for instructions on how to restart IIS on an Exchange Server:

[Restart IIS on Exchange Server | Microsoft Learn](https://learn.microsoft.com).
{% endhint %}

## **3. Configure AD FS in Service Provider (SP) Mode**

{% hint style="info" %}
AD FS operates as an Identity Provider (IdP) by default but can be configured to function as a Service Provider (SP) when integrating with third-party IdPs like Hideez Server.
{% endhint %}

### **Configure AD FS in SP Mode:**

#### **Add** Hideez Server as **IdP**:

* Open the AD FS Management Console.
* Navigate to **Claims Provider Trusts → Add Claims Provider Trust**.

<div><figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FNwTUkymoLkjVzy5R5ZZf%2FScreenshot_7.png?alt=media&#x26;token=8d2fe393-c1ce-4eeb-bea6-d3f61c5b67b7" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2Fu3c6dlizedtZZUBsSUQO%2FScreenshot_8.png?alt=media&#x26;token=8dcf6235-de0e-48f1-8150-b70f6a271efd" alt=""><figcaption></figcaption></figure></div>

* Upload the metadata XML file from the Hideez Server.

<div><figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FDsvnguJh30p8KLXqHS1F%2FScreenshot_9.png?alt=media&#x26;token=e3c5b477-5acc-4858-a8c9-12d06e4ed220" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FdOWoB4xkpk9ZsVduezdi%2FScreenshot_11.png?alt=media&#x26;token=f5a922b2-f299-4444-9744-71084f8d41f7" alt=""><figcaption></figcaption></figure></div>

* Assign a name to the Identity Provider (IdP), such as "Hideez IdP," then click **Next**, and finally, click **Finish**.

<div><figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FrB6GZ37tgJgzOXUy4MIa%2FScreenshot_12.png?alt=media&#x26;token=9b83ca5b-dd9d-47b0-8e7d-938112b863f5" alt="" width="563"><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2Fn6u92b0a8jDZr45Lm6zK%2FScreenshot_13.png?alt=media&#x26;token=847a4502-12f5-4911-b02f-fd2e23391726" alt=""><figcaption></figcaption></figure></div>

* You will see newly created **Claims Provider Trusts**

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FtmF64ytxBFwJcC2AGDsX%2Fimage.png?alt=media&#x26;token=5409c0eb-486b-4a53-bc28-a45d9708b05d" alt=""><figcaption></figcaption></figure>

#### **Create Claim Rules for the Claims Provider Trust**:

* Select the created Claims Provider Trust and click **Edit Claim Rules → Add Rule**.

<div><figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FIjI4F1ASS5TB4EaDPAwk%2FScreenshot_14.png?alt=media&#x26;token=603109fa-82bb-4ea2-b07e-ecc5899b2d1e" alt=""><figcaption></figcaption></figure> <figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2F8mslKuRp4ei1pHGMZ2ju%2FScreenshot_15.png?alt=media&#x26;token=f856f634-6c48-4c76-b877-b492fa88645a" alt=""><figcaption></figcaption></figure></div>

* Choose **Pass Through or Filter an Incoming Claim** and click **Next**.

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FH0wdPJRYwiAFfa2ZQgKn%2FScreenshot_16.png?alt=media&#x26;token=784a0395-a9b6-4a16-9d40-e9057a52fadc" alt="" width="563"><figcaption></figcaption></figure>

* Enter the following configuration:
  * **Claim Rule Name**: Pass Through UPN
  * **Incoming Claim Type**: UPN

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FiNun8udNHjpvH85veG0D%2FScreenshot_17.png?alt=media&#x26;token=0bfb6fd3-5a9b-4af3-abbb-cbd132668654" alt="" width="563"><figcaption></figcaption></figure>

* Click **Finish** to save the rule.

## **4. SAML Configuration for AD FS on Hideez Server**

1. Download metadata from AD FS:

* Example of URL: `https://adfs.lab.hideez.com/FederationMetadata/2007-06/FederationMetadata.xml`

2. Find in the `FederationMetadata.xml` the following information:

* `entityID`

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2F2udVZKsAnz3OGLYbMjZt%2Fimage.png?alt=media&#x26;token=83920313-88b2-47ef-b8d6-d48957e5a321" alt=""><figcaption></figcaption></figure>

* `AssertionConsumerService`

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FZyZ2XO5lfqhkqwd3padd%2Fimage.png?alt=media&#x26;token=63a9890c-0822-4010-bd43-220f5dcdfeef" alt=""><figcaption></figcaption></figure>

3. Identify the required fields on the Hideez Server and save them:

* **Name:**  `ADFS`
* **Entity ID:** `http://<AssertionConsumerService>/adfs/services/trust`
* **Assertion Consumer Service URL:** `https://<AssertionConsumerService>/adfs/ls/`
* **Map the attributes:** `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn`
* **User Attribute:** `Email`

{% hint style="info" %}
**Note:** When configuring attributes in **Hideez Server** or **Active Directory Federation Services (AD FS)**, the mapping values are constant. For your setup, they will remain the same as in the example provided.

**Example of a Constant Value:**

* **Mapping Attribute**: `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn`
* **User Attribute**: Email
  {% endhint %}

**Example:**

* **Name**: `ADFS`
* **Issuer / SP Entity ID:** `http://adfs.lab.hideez.com/adfs/services/trust`
* **Assertion Consumer Service:** `https://adfs.lab.hideez.com/adfs/ls/`&#x20;
* **Map the attributes:** `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn`
* **User Attribute:** `Email`

<figure><img src="https://1669663611-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRdTysrljwe610dPFG7tE%2Fuploads%2FHPAyg7efHW083sdNqQg7%2Fimage.png?alt=media&#x26;token=75a15d7c-6e7a-4d1a-87e1-91cdabdf7594" alt="" width="447"><figcaption></figcaption></figure>

{% hint style="info" %}
**Example Workflow:**

1. The user navigates to OWA: `https://exch.lab.hideez.com/owa/`.
2. OWA redirects the user to AD FS for authentication.
3. AD FS forwards the request to the third-party IdP (e.g., Hideez Server).
4. The IdP validates the request and returns the SAML response to AD FS.
5. AD FS processes the claims and forwards them to OWA, completing the authentication
   {% endhint %}

{% hint style="success" %}
**Additional Resources**:

* [Microsoft Documentation on AD FS and OWA](https://learn.microsoft.com/)
  {% endhint %}
