> ## Documentation Index
> Fetch the complete documentation index at: https://portkey-docs-migration-03-llm-providers.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Azure Entra

> Setup Azure Entra for SCIM provisioning with Portkey.

#### Azure Active Directory (Azure AD)

[Reference](https://learn.microsoft.com/en-us/azure/active-directory/app-provisioning/use-scim-to-provision-users-and-groups)

Setting up Azure Entra for SCIM provisioning consists of the following steps:

* **New Entra Application & SCIM Provisioning**
* **Application Roles**
* **SCIM Attribute Mapping Update**

***

##### New Entra Application

First, create a new Azure Entra application to set up SCIM provisioning with Portkey.

1. Navigate to the [Entra Applications Page](https://entra.microsoft.com/?culture=en-in\&country=in#view/Microsoft_AAD_IAM/AppGalleryBladeV2) and click **`Create your own application`**.

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/create.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=dea4b40974c6dca3a0fd92163062fe33" alt="Application Creation" width="1600" height="899" data-path="images/scim/azure/create.png" />

2. Complete the required fields to create a new application.

3. Once the application is created, navigate to the application's **Provisioning** page under the **Manage** section.

4. Click **`New Configuration`** to go to the provisioning settings page.

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/settings.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=a58e6e575765eb72f28525312a5e96ce" alt="Provisioning Settings" width="1586" height="1344" data-path="images/scim/azure/settings.png" />

5. Obtain the **Tenant URL** and **Secret Token** from the Portkey Admin Settings page (if SCIM is enabled for your organization).

   * [Portkey Settings Page](https://app.portkey.ai/settings/organisation/sso)

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/FLU5CTUxu6ITydYp/images/scim/portkey.png?fit=max&auto=format&n=FLU5CTUxu6ITydYp&q=85&s=b4ffb0df79fc26c892cd7aaae946fd45" alt="Portkey Admin Settings" width="1600" height="1052" data-path="images/scim/portkey.png" />

6. Fill in the values from the Portkey dashboard in Entra's provisioning settings and click **`Test Connection`**. If successful, click **`Create`**.

> If the test connection returns any errors, please contact us at [support@portkey.ai](mailto:support@portkey.ai).

***

##### Application Roles

Portkey supported roles should match Entra's application roles.

1. Navigate to **App Registrations** under **Enterprise Applications**, click **All Applications**, and select the application created earlier.
2. Go to the **App Roles** page and click **`Create app role`**.
   > Portkey supports two application-level roles:
   >
   > * **`member`**  (Organization Member)
   > * **`admin`**  (Organization Admin)
   > * **`owner`**  (Organization Owner)

<img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/roles.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=facdf4be0510a860c0f506186dd01df4" alt="App Roles" width="1600" height="482" data-path="images/scim/azure/roles.png" />

> Users assigned any other role will default to the **member** role.

3. To support group roles, create a role with the value **`group`** and a name in title-case (e.g., `Group` for the value `group`).

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/create-roles.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=2941a9cf4a95fcc9fce2a1683d7762f3" alt="Creating App Roles" width="1600" height="1015" data-path="images/scim/azure/create-roles.png" />

4. Assign users to the application with the desired role (e.g., **`owner`**, **`member`**, or **`admin`**) for the organization.

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/select-role.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=bb33a71e69b09e835637fe90f82d901e" alt="Assigning Roles" width="602" height="686" data-path="images/scim/azure/select-role.png" />

***

#### Attribute Mapping

###### Adding a New Attribute

1. Go to the **Provisioning** page and click **Attribute Mapping (Preview)** to access the attributes page.

2. Enable advanced options and click **`Edit attribute list for customappsso`**.

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/new-mapping.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=92604a528e76746fb924d329f8ff29d0" alt="Edit Attribute List" width="778" height="502" data-path="images/scim/azure/new-mapping.png" />

3. Add a new attribute called **`roles`** with the following properties:

   * **Multi-valued:** Enabled
   * **Type:** String

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/mapping-properties.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=bae5902a8133dc527a0fd6a261dc48ce" alt="Roles Attribute Properties" width="1544" height="214" data-path="images/scim/azure/mapping-properties.png" />

###### Adding a new mapping

1. Click on the **`Add new mapping`** link to add a new mapping. (refer to the above images).
2. Follow the values from the below image to add a new mapping.

<img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/new-mapping.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=23145944b0a67fcb55e2cf82e02725a4" alt="New Mapping Attributes" width="1488" height="1388" data-path="images/scim/new-mapping.png" />

3. Once done, save the changes.

###### Removing Unnecessary Attributes

Delete the following unsupported attributes:

* **preferredLanguage**
* **addresses (all fields)**
* **phoneNumbers**

***

#### Updating Attributes

**Update `displayName`**

1. Edit the **`displayName`** field to concatenate `firstName + lastName` instead of using the default `displayName` value from Entra records.

   <img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/azure/update-displayname.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=0434710460f69f61a7f06e830942cf12" alt="Update displayName Expression" width="1500" height="526" data-path="images/scim/azure/update-displayname.png" />

2. Save the changes and enable provisioning on the **Overview** page of the provisioning settings.

***

##### Group (Workspace) Provisioning

Portkey supports RBAC (Role-Based Access Control) for workspaces mapped to groups in Entra. Use the following naming convention for groups:

* **Format:** `ws-{group}-role-{role}`
  * **Role:** One of `admin`, `member`, or `manager`
* A user should belong to only one group per `{group}`.

**Example:**
For a `Sales` workspace:

* `ws-Sales-role-admin`
* `ws-Sales-role-manager`
* `ws-Sales-role-member`

Users assigned to these groups will inherit the corresponding role in Portkey.

<img src="https://mintcdn.com/portkey-docs-migration-03-llm-providers/PuoaWyxc9yXvYZ8X/images/scim/portkey-group-roles.png?fit=max&auto=format&n=PuoaWyxc9yXvYZ8X&q=85&s=c6ad676d699a2d2467646c9c011a31ab" alt="Entra Group Role Mapping" width="1600" height="425" data-path="images/scim/portkey-group-roles.png" />

***

### Support

If you face any issues with the group provisioning, please reach out to us at [here](mailto:support@portkey.ai).
