Web Apps - Update Auth Settings
Description for Updates the Authentication / Authorization settings associated with web app.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettings?api-version=2024-04-01
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
name
|
path | True |
string |
Name of web app. |
resource
|
path | True |
string |
Name of the resource group to which the resource belongs. Regex pattern: |
subscription
|
path | True |
string |
Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000). |
api-version
|
query | True |
string |
API Version |
Request Body
Name | Type | Description |
---|---|---|
kind |
string |
Kind of resource. |
properties.aadClaimsAuthorization |
string |
Gets a JSON string containing the Azure AD Acl settings. |
properties.additionalLoginParams |
string[] |
Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". |
properties.allowedAudiences |
string[] |
Allowed audience values to consider when validating JSON Web Tokens issued by
Azure Active Directory. Note that the |
properties.allowedExternalRedirectUrls |
string[] |
External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored. This is an advanced setting typically only needed by Windows Store application backends. Note that URLs within the current domain are always implicitly allowed. |
properties.authFilePath |
string |
The path of the config file containing auth settings. If the path is relative, base will the site's root directory. |
properties.clientId |
string |
The Client ID of this relying party application, known as the client_id. This setting is required for enabling OpenID Connection authentication with Azure Active Directory or other 3rd party OpenID Connect providers. More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html |
properties.clientSecret |
string |
The Client Secret of this relying party application (in Azure Active Directory, this is also referred to as the Key). This setting is optional. If no client secret is configured, the OpenID Connect implicit auth flow is used to authenticate end users. Otherwise, the OpenID Connect Authorization Code Flow is used to authenticate end users. More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html |
properties.clientSecretCertificateThumbprint |
string |
An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as a replacement for the Client Secret. It is also optional. |
properties.clientSecretSettingName |
string |
The app setting name that contains the client secret of the relying party application. |
properties.configVersion |
string |
The ConfigVersion of the Authentication / Authorization feature in use for the current app. The setting in this value can control the behavior of the control plane for Authentication / Authorization. |
properties.defaultProvider |
The default authentication provider to use when multiple providers are configured. This setting is only needed if multiple providers are configured and the unauthenticated client action is set to "RedirectToLoginPage". |
|
properties.enabled |
boolean |
|
properties.facebookAppId |
string |
The App ID of the Facebook app used for login. This setting is required for enabling Facebook Login. Facebook Login documentation: https://developers.facebook.com/docs/facebook-login |
properties.facebookAppSecret |
string |
The App Secret of the Facebook app used for Facebook Login. This setting is required for enabling Facebook Login. Facebook Login documentation: https://developers.facebook.com/docs/facebook-login |
properties.facebookAppSecretSettingName |
string |
The app setting name that contains the app secret used for Facebook Login. |
properties.facebookOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of Facebook Login authentication. This setting is optional. Facebook Login documentation: https://developers.facebook.com/docs/facebook-login |
properties.gitHubClientId |
string |
The Client Id of the GitHub app used for login. This setting is required for enabling Github login |
properties.gitHubClientSecret |
string |
The Client Secret of the GitHub app used for Github Login. This setting is required for enabling Github login. |
properties.gitHubClientSecretSettingName |
string |
The app setting name that contains the client secret of the Github app used for GitHub Login. |
properties.gitHubOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. This setting is optional |
properties.googleClientId |
string |
The OpenID Connect Client ID for the Google web application. This setting is required for enabling Google Sign-In. Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ |
properties.googleClientSecret |
string |
The client secret associated with the Google web application. This setting is required for enabling Google Sign-In. Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ |
properties.googleClientSecretSettingName |
string |
The app setting name that contains the client secret associated with the Google web application. |
properties.googleOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. This setting is optional. If not specified, "openid", "profile", and "email" are used as default scopes. Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ |
properties.isAuthFromFile |
string |
"true" if the auth config settings should be read from a file, "false" otherwise |
properties.issuer |
string |
The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. This URI is a case-sensitive identifier for the token issuer. More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html |
properties.microsoftAccountClientId |
string |
The OAuth 2.0 client ID that was created for the app used for authentication. This setting is required for enabling Microsoft Account authentication. Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm |
properties.microsoftAccountClientSecret |
string |
The OAuth 2.0 client secret that was created for the app used for authentication. This setting is required for enabling Microsoft Account authentication. Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm |
properties.microsoftAccountClientSecretSettingName |
string |
The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. |
properties.microsoftAccountOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. This setting is optional. If not specified, "wl.basic" is used as the default scope. Microsoft Account Scopes and permissions documentation: https://msdn.microsoft.com/en-us/library/dn631845.aspx |
properties.runtimeVersion |
string |
The RuntimeVersion of the Authentication / Authorization feature in use for the current app. The setting in this value can control the behavior of certain features in the Authentication / Authorization module. |
properties.tokenRefreshExtensionHours |
number |
The number of hours after session token expiration that a session token can be used to call the token refresh API. The default is 72 hours. |
properties.tokenStoreEnabled |
boolean |
|
properties.twitterConsumerKey |
string |
The OAuth 1.0a consumer key of the Twitter application used for sign-in. This setting is required for enabling Twitter Sign-In. Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in |
properties.twitterConsumerSecret |
string |
The OAuth 1.0a consumer secret of the Twitter application used for sign-in. This setting is required for enabling Twitter Sign-In. Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in |
properties.twitterConsumerSecretSettingName |
string |
The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. |
properties.unauthenticatedClientAction |
The action to take when an unauthenticated client attempts to access the app. |
|
properties.validateIssuer |
boolean |
Gets a value indicating whether the issuer should be a valid HTTPS url and be validated as such. |
Responses
Name | Type | Description |
---|---|---|
200 OK |
OK |
|
Other Status Codes |
App Service error response. |
Security
azure_auth
Azure Active Directory OAuth2 Flow
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name | Description |
---|---|
user_impersonation | impersonate your user account |
Examples
Update Auth Settings
Sample request
PUT https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/sitef6141/config/authsettings?api-version=2024-04-01
{
"properties": {
"enabled": true,
"runtimeVersion": "~1",
"unauthenticatedClientAction": "RedirectToLoginPage",
"tokenStoreEnabled": true,
"allowedExternalRedirectUrls": [
"sitef6141.customdomain.net",
"sitef6141.customdomain.info"
],
"defaultProvider": "Google",
"tokenRefreshExtensionHours": 120,
"clientId": "42d795a9-8abb-4d06-8534-39528af40f8e.apps.googleusercontent.com"
}
}
Sample response
{
"id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/sitef6141/config/authsettings",
"name": "authsettings",
"type": "Microsoft.Web/sites/authsettings",
"kind": "app",
"properties": {
"enabled": true,
"runtimeVersion": "~1",
"unauthenticatedClientAction": "RedirectToLoginPage",
"tokenStoreEnabled": true,
"allowedExternalRedirectUrls": [
"sitef6141.customdomain.net",
"sitef6141.customdomain.info"
],
"defaultProvider": "Google",
"tokenRefreshExtensionHours": 120,
"clientId": "42d795a9-8abb-4d06-8534-39528af40f8e.apps.googleusercontent.com"
}
}
Definitions
Name | Description |
---|---|
Built |
The default authentication provider to use when multiple providers are configured. This setting is only needed if multiple providers are configured and the unauthenticated client action is set to "RedirectToLoginPage". |
Default |
App Service error response. |
Details | |
Error |
Error model. |
Site |
Configuration settings for the Azure App Service Authentication / Authorization feature. |
Unauthenticated |
The action to take when an unauthenticated client attempts to access the app. |
BuiltInAuthenticationProvider
The default authentication provider to use when multiple providers are configured. This setting is only needed if multiple providers are configured and the unauthenticated client action is set to "RedirectToLoginPage".
Name | Type | Description |
---|---|---|
AzureActiveDirectory |
string |
|
string |
||
Github |
string |
|
string |
||
MicrosoftAccount |
string |
|
string |
DefaultErrorResponse
App Service error response.
Name | Type | Description |
---|---|---|
error |
Error model. |
Details
Name | Type | Description |
---|---|---|
code |
string |
Standardized string to programmatically identify the error. |
message |
string |
Detailed error description and debugging information. |
target |
string |
Detailed error description and debugging information. |
Error
Error model.
Name | Type | Description |
---|---|---|
code |
string |
Standardized string to programmatically identify the error. |
details |
Details[] |
Detailed errors. |
innererror |
string |
More information to debug error. |
message |
string |
Detailed error description and debugging information. |
target |
string |
Detailed error description and debugging information. |
SiteAuthSettings
Configuration settings for the Azure App Service Authentication / Authorization feature.
Name | Type | Description |
---|---|---|
id |
string |
Resource Id. |
kind |
string |
Kind of resource. |
name |
string |
Resource Name. |
properties.aadClaimsAuthorization |
string |
Gets a JSON string containing the Azure AD Acl settings. |
properties.additionalLoginParams |
string[] |
Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". |
properties.allowedAudiences |
string[] |
Allowed audience values to consider when validating JSON Web Tokens issued by
Azure Active Directory. Note that the |
properties.allowedExternalRedirectUrls |
string[] |
External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored. This is an advanced setting typically only needed by Windows Store application backends. Note that URLs within the current domain are always implicitly allowed. |
properties.authFilePath |
string |
The path of the config file containing auth settings. If the path is relative, base will the site's root directory. |
properties.clientId |
string |
The Client ID of this relying party application, known as the client_id. This setting is required for enabling OpenID Connection authentication with Azure Active Directory or other 3rd party OpenID Connect providers. More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html |
properties.clientSecret |
string |
The Client Secret of this relying party application (in Azure Active Directory, this is also referred to as the Key). This setting is optional. If no client secret is configured, the OpenID Connect implicit auth flow is used to authenticate end users. Otherwise, the OpenID Connect Authorization Code Flow is used to authenticate end users. More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html |
properties.clientSecretCertificateThumbprint |
string |
An alternative to the client secret, that is the thumbprint of a certificate used for signing purposes. This property acts as a replacement for the Client Secret. It is also optional. |
properties.clientSecretSettingName |
string |
The app setting name that contains the client secret of the relying party application. |
properties.configVersion |
string |
The ConfigVersion of the Authentication / Authorization feature in use for the current app. The setting in this value can control the behavior of the control plane for Authentication / Authorization. |
properties.defaultProvider |
The default authentication provider to use when multiple providers are configured. This setting is only needed if multiple providers are configured and the unauthenticated client action is set to "RedirectToLoginPage". |
|
properties.enabled |
boolean |
|
properties.facebookAppId |
string |
The App ID of the Facebook app used for login. This setting is required for enabling Facebook Login. Facebook Login documentation: https://developers.facebook.com/docs/facebook-login |
properties.facebookAppSecret |
string |
The App Secret of the Facebook app used for Facebook Login. This setting is required for enabling Facebook Login. Facebook Login documentation: https://developers.facebook.com/docs/facebook-login |
properties.facebookAppSecretSettingName |
string |
The app setting name that contains the app secret used for Facebook Login. |
properties.facebookOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of Facebook Login authentication. This setting is optional. Facebook Login documentation: https://developers.facebook.com/docs/facebook-login |
properties.gitHubClientId |
string |
The Client Id of the GitHub app used for login. This setting is required for enabling Github login |
properties.gitHubClientSecret |
string |
The Client Secret of the GitHub app used for Github Login. This setting is required for enabling Github login. |
properties.gitHubClientSecretSettingName |
string |
The app setting name that contains the client secret of the Github app used for GitHub Login. |
properties.gitHubOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. This setting is optional |
properties.googleClientId |
string |
The OpenID Connect Client ID for the Google web application. This setting is required for enabling Google Sign-In. Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ |
properties.googleClientSecret |
string |
The client secret associated with the Google web application. This setting is required for enabling Google Sign-In. Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ |
properties.googleClientSecretSettingName |
string |
The app setting name that contains the client secret associated with the Google web application. |
properties.googleOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. This setting is optional. If not specified, "openid", "profile", and "email" are used as default scopes. Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ |
properties.isAuthFromFile |
string |
"true" if the auth config settings should be read from a file, "false" otherwise |
properties.issuer |
string |
The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. This URI is a case-sensitive identifier for the token issuer. More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html |
properties.microsoftAccountClientId |
string |
The OAuth 2.0 client ID that was created for the app used for authentication. This setting is required for enabling Microsoft Account authentication. Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm |
properties.microsoftAccountClientSecret |
string |
The OAuth 2.0 client secret that was created for the app used for authentication. This setting is required for enabling Microsoft Account authentication. Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm |
properties.microsoftAccountClientSecretSettingName |
string |
The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. |
properties.microsoftAccountOAuthScopes |
string[] |
The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. This setting is optional. If not specified, "wl.basic" is used as the default scope. Microsoft Account Scopes and permissions documentation: https://msdn.microsoft.com/en-us/library/dn631845.aspx |
properties.runtimeVersion |
string |
The RuntimeVersion of the Authentication / Authorization feature in use for the current app. The setting in this value can control the behavior of certain features in the Authentication / Authorization module. |
properties.tokenRefreshExtensionHours |
number |
The number of hours after session token expiration that a session token can be used to call the token refresh API. The default is 72 hours. |
properties.tokenStoreEnabled |
boolean |
|
properties.twitterConsumerKey |
string |
The OAuth 1.0a consumer key of the Twitter application used for sign-in. This setting is required for enabling Twitter Sign-In. Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in |
properties.twitterConsumerSecret |
string |
The OAuth 1.0a consumer secret of the Twitter application used for sign-in. This setting is required for enabling Twitter Sign-In. Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in |
properties.twitterConsumerSecretSettingName |
string |
The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. |
properties.unauthenticatedClientAction |
The action to take when an unauthenticated client attempts to access the app. |
|
properties.validateIssuer |
boolean |
Gets a value indicating whether the issuer should be a valid HTTPS url and be validated as such. |
type |
string |
Resource type. |
UnauthenticatedClientAction
The action to take when an unauthenticated client attempts to access the app.
Name | Type | Description |
---|---|---|
AllowAnonymous |
string |
|
RedirectToLoginPage |
string |