Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
APPLIES TO: All API Management tiers
In this article, you learn about configuring identity providers for managed connections in your Azure API Management instance. Settings for the following common providers are shown:
- Microsoft Entra
- Generic OAuth 2
You configure a credential provider in the credential manager in your API Management instance. For a step-by-step example of configuring a Microsoft Entra provider and connection, see Configure credential manager - Microsoft Graph API.
Prerequisites
To configure any of the supported providers in API Management, first configure an OAuth 2.0 app in the identity provider that will be used to authorize API access. For configuration details, see the provider's developer documentation.
If you're creating a credential provider that uses the authorization code grant type, configure a redirect URL (sometimes called an Authorization Callback URL or a similar name) in the app. For the value, enter
https://authorization-manager.consent.azure-apim.net/redirect/apim/<API-management-instance-name>.Depending on your scenario, configure app settings like scopes (API permissions).
Minimally, retrieve the following app credentials that will be configured in API Management: the app's client ID and client secret.
Depending on the provider and your scenario, you might need to retrieve other settings, like authorization endpoint URLs or scopes.
The provider's authorization endpoints must be reachable over the internet from your API Management instance. If your API Management instance is secured in a virtual network, configure network or firewall rules to allow access to the provider's endpoints.
Microsoft Entra provider
API Management credential manager supports the Microsoft Entra identity provider, which is the identity service in Azure that provides identity management and access control capabilities. It enables users to securely sign in via industry-standard protocols.
Supported grant types: authorization code, client credentials
Note
Currently, the Microsoft Entra credential provider supports only Azure Active Directory v1.0 endpoints.
Microsoft Entra provider settings
| Property | Description | Required | Default |
|---|---|---|---|
| Credential provider name | The name of the credential provider resource in API Management. | Yes | N/A |
| Identity provider | Select Azure Active Directory v1. | Yes | N/A |
| Grant type | The OAuth 2.0 authorization grant type to use. Depending on your scenario, select either Authorization code or Client credentials. |
Yes | Authorization code |
| Authorization URL | The authorization URL. | No | https://login.microsoftonline.com |
| Client ID | The application (client) ID used to identify the Microsoft Entra app. | Yes | N/A |
| Client secret | The client secret used for the Microsoft Entra app. | Yes | N/A |
| Resource URL | The URL of the resource that requires authorization. Example: https://graph.microsoft.com |
Yes | N/A |
| Tenant ID | The tenant ID of your Microsoft Entra app. | No | common |
| Scopes | One or more API permissions for your Microsoft Entra app, separated by spaces. Example: ChannelMessage.Read.All User.Read |
No | API permissions set in the Microsoft Entra app |
Generic OAuth providers
You can use three generic providers for configuring connections:
- Generic OAuth 2.0
- Generic OAuth 2.0 with PKCE
- Generic OAuth 2.1 with PKCE with DCR
A generic provider enables you to use your own OAuth identity provider, based on your specific needs.
Note
We recommend using a PKCE provider for improved security if your identity provider supports it. For more information, see Proof Key for Code Exchange.
Supported grant types: authorization code, client credentials (depends on provider)
Generic credential provider settings
| Property | Description | Required | Default |
|---|---|---|---|
| Credential provider name | The name of credential provider resource in API Management. | Yes | N/A |
| Identity provider | Select OAuth 2.0, OAuth 2.0 with PKCE, or OAuth 2.1 with PKCE with DCR. | Yes | N/A |
| Grant type | The OAuth 2.0 authorization grant type to use. Depending on your scenario and your identity provider, select either Authorization code or Client credentials. |
Yes | Authorization code |
| Authorization URL | The authorization endpoint URL. | Yes, for PKCE | UNUSED for OAuth 2.0 |
| Client ID | The ID used to identify an app to the identity provider's authorization server. | Yes | N/A |
| Client secret | The secret used by the app to authenticate with the identity provider's authorization server. | Yes | N/A |
| Refresh URL | The URL that your app makes a request to in order to exchange a refresh token for a renewed access token. | Yes, for PKCE | UNUSED for OAuth 2.0 |
| Server URL | The base server URL. | Yes, for OAuth 2.1 with PKCE with DCR | N/A |
| Token URL | The URL on the identity provider's authorization server that's used to programmatically request tokens. | Yes | N/A |
| Scopes | One or more specific actions the app is allowed to do or information that it can request on a user's behalf from an API, separated by spaces. Example: user web api openid |
No | N/A |
Other identity providers
API Management supports several providers for popular SaaS offerings, including GitHub, LinkedIn, and others. You can select from a list of these providers in the Azure portal when you create a credential provider.
Supported grant types: authorization code
Required settings for these providers differ, depending on the provider, but are similar to those for the generic OAuth providers. Consult the developer documentation for each provider.
Related content
- Learn more about managing connections in API Management.
- Create a connection for Microsoft Entra ID or GitHub.