> For the complete documentation index, see [llms.txt](https://docs.elimity.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.elimity.com/reference-manual/v3.46.6/installation/identity-provider.md).

# Identity provider

All deployments of Elimity Insights must rely on an identity provider for authentication of user accounts. We implement single sign-on (SSO) using the OpenID Connect (OIDC) protocol, both Entra ID and Google Workspace support this. More specifically, use the following Elimity Insights server configuration options to set up SSO:  `oidcClientId`, `oidcClientSecret` and `oidcIssuer`. Refer to [our dedicated documentation](/reference-manual/v3.46.6/server-configuration.md) for additional details. The following sections provide more information about setting up SSO in Entra ID and Google workspace.

## Entra ID

### 1. Creating an app registration

Elimity Insights authenticates as an Entra ID enterprise application. Create a new app registration in Entra ID by following these steps:

1. Register a new application ('App registrations' > 'New registration')
   1. Name: e.g. `elimity-insights`
   2. Redirect URI platform: 'Web'
   3. Redirect URI value: `https://{host}/api/oidc/callback`, e.g. `https://example.elimity.com/api/oidc/callback`&#x20;
   4. Click 'Register'
   5. Note down the new registration's application ID and directory ID
2. Generate a client secret for the app registration ('Certificates & secrets' > 'Client secrets' > 'New client secret') and securely note down the secret value.

### 2. Configuring Elimity Insights

Having created a new app registration, you can now set the following configuration options for the Elimity Insights server:

<table data-full-width="true"><thead><tr><th>Configuration option</th><th>Value</th></tr></thead><tbody><tr><td><code>oidcClientId</code></td><td>Application ID you noted down in step 1.1.e</td></tr><tr><td><code>oidcClientSecret</code></td><td>Secret value you noted down in step 1.2</td></tr><tr><td><code>oidcProvider</code></td><td><code>https://login.microsoftonline.com/{tenantId}/v2.0</code> , replace <code>{tenantId}</code> with the directory ID you noted down in step 1.1.e</td></tr></tbody></table>

## Google Workspace

### 1. Creating an OAuth2 client

Follow the steps outlined in [Google's official documentation](https://support.google.com/cloud/answer/6158849) to create an OAuth2 client. Make sure you choose 'Web application' for the application type and add `https://{host}/api/oidc/callback` as an authorized redirect URI, replacing `{host}` your Elimity Insights server host. Note down the resulting client ID and secret.

### 2. Configuring Elimity Insights

Having created a new app registration, you can now set the following configuration options for the Elimity Insights server:

<table data-full-width="true"><thead><tr><th>Configuration option</th><th>Value</th></tr></thead><tbody><tr><td><code>oidcClientId</code></td><td>Client ID you noted down in step 1</td></tr><tr><td><code>oidcClientSecret</code></td><td>Secret value you noted down in step 1</td></tr><tr><td><code>oidcIssuer</code></td><td><code>https://accounts.google.com</code></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.elimity.com/reference-manual/v3.46.6/installation/identity-provider.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
