Microsoft.Web sites/config 'authsettingsV2'
Bicep resource definition
The sites/config resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Options for name property
The sites/config resource accepts different properties based on the value of the name property.
This article shows the properties that are available when you set name: 'authsettingsV2'
.
For other options, see:
- appsettings
- authsettings
- azurestorageaccounts
- backup
- connectionstrings
- logs
- metadata
- pushsettings
- slotConfigNames
- web
Resource format
To create a Microsoft.Web/sites/config resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Web/sites/config@2022-09-01' = {
name: 'authsettingsV2'
kind: 'string'
parent: resourceSymbolicName
properties: {
globalValidation: {
excludedPaths: [
'string'
]
redirectToProvider: 'string'
requireAuthentication: bool
unauthenticatedClientAction: 'string'
}
httpSettings: {
forwardProxy: {
convention: 'string'
customHostHeaderName: 'string'
customProtoHeaderName: 'string'
}
requireHttps: bool
routes: {
apiPrefix: 'string'
}
}
identityProviders: {
apple: {
enabled: bool
login: {
scopes: [
'string'
]
}
registration: {
clientId: 'string'
clientSecretSettingName: 'string'
}
}
azureActiveDirectory: {
enabled: bool
isAutoProvisioned: bool
login: {
disableWWWAuthenticate: bool
loginParameters: [
'string'
]
}
registration: {
clientId: 'string'
clientSecretCertificateIssuer: 'string'
clientSecretCertificateSubjectAlternativeName: 'string'
clientSecretCertificateThumbprint: 'string'
clientSecretSettingName: 'string'
openIdIssuer: 'string'
}
validation: {
allowedAudiences: [
'string'
]
defaultAuthorizationPolicy: {
allowedApplications: [
'string'
]
allowedPrincipals: {
groups: [
'string'
]
identities: [
'string'
]
}
}
jwtClaimChecks: {
allowedClientApplications: [
'string'
]
allowedGroups: [
'string'
]
}
}
}
azureStaticWebApps: {
enabled: bool
registration: {
clientId: 'string'
}
}
customOpenIdConnectProviders: {}
facebook: {
enabled: bool
graphApiVersion: 'string'
login: {
scopes: [
'string'
]
}
registration: {
appId: 'string'
appSecretSettingName: 'string'
}
}
gitHub: {
enabled: bool
login: {
scopes: [
'string'
]
}
registration: {
clientId: 'string'
clientSecretSettingName: 'string'
}
}
google: {
enabled: bool
login: {
scopes: [
'string'
]
}
registration: {
clientId: 'string'
clientSecretSettingName: 'string'
}
validation: {
allowedAudiences: [
'string'
]
}
}
legacyMicrosoftAccount: {
enabled: bool
login: {
scopes: [
'string'
]
}
registration: {
clientId: 'string'
clientSecretSettingName: 'string'
}
validation: {
allowedAudiences: [
'string'
]
}
}
twitter: {
enabled: bool
registration: {
consumerKey: 'string'
consumerSecretSettingName: 'string'
}
}
}
login: {
allowedExternalRedirectUrls: [
'string'
]
cookieExpiration: {
convention: 'string'
timeToExpiration: 'string'
}
nonce: {
nonceExpirationInterval: 'string'
validateNonce: bool
}
preserveUrlFragmentsForLogins: bool
routes: {
logoutEndpoint: 'string'
}
tokenStore: {
azureBlobStorage: {
sasUrlSettingName: 'string'
}
enabled: bool
fileSystem: {
directory: 'string'
}
tokenRefreshExtensionHours: int
}
}
platform: {
configFilePath: 'string'
enabled: bool
runtimeVersion: 'string'
}
}
}
Property values
sites/config-authsettingsV2
Name | Description | Value |
---|---|---|
name | The resource name See how to set names and types for child resources in Bicep. |
'authsettingsV2' |
kind | Kind of resource. | string |
parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: sites |
properties | SiteAuthSettingsV2 resource specific properties | SiteAuthSettingsV2Properties |
SiteAuthSettingsV2Properties
Name | Description | Value |
---|---|---|
globalValidation | The configuration settings that determines the validation flow of users using App Service Authentication/Authorization. | GlobalValidation |
httpSettings | The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization. | HttpSettings |
identityProviders | The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization. | IdentityProviders |
login | The configuration settings of the login flow of users using App Service Authentication/Authorization. | Login |
platform | The configuration settings of the platform of App Service Authentication/Authorization. | AuthPlatform |
GlobalValidation
Name | Description | Value |
---|---|---|
excludedPaths | The paths for which unauthenticated flow would not be redirected to the login page. | string[] |
redirectToProvider | 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". |
string |
requireAuthentication | true if the authentication flow is required any request is made; otherwise, false . |
bool |
unauthenticatedClientAction | The action to take when an unauthenticated client attempts to access the app. | 'AllowAnonymous' 'RedirectToLoginPage' 'Return401' 'Return403' |
HttpSettings
Name | Description | Value |
---|---|---|
forwardProxy | The configuration settings of a forward proxy used to make the requests. | ForwardProxy |
requireHttps | false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true . |
bool |
routes | The configuration settings of the paths HTTP requests. | HttpSettingsRoutes |
ForwardProxy
Name | Description | Value |
---|---|---|
convention | The convention used to determine the url of the request made. | 'Custom' 'NoProxy' 'Standard' |
customHostHeaderName | The name of the header containing the host of the request. | string |
customProtoHeaderName | The name of the header containing the scheme of the request. | string |
HttpSettingsRoutes
Name | Description | Value |
---|---|---|
apiPrefix | The prefix that should precede all the authentication/authorization paths. | string |
IdentityProviders
Name | Description | Value |
---|---|---|
apple | The configuration settings of the Apple provider. | Apple |
azureActiveDirectory | The configuration settings of the Azure Active directory provider. | AzureActiveDirectory |
azureStaticWebApps | The configuration settings of the Azure Static Web Apps provider. | AzureStaticWebApps |
customOpenIdConnectProviders | The map of the name of the alias of each custom Open ID Connect provider to the configuration settings of the custom Open ID Connect provider. |
object |
The configuration settings of the Facebook provider. | ||
gitHub | The configuration settings of the GitHub provider. | GitHub |
The configuration settings of the Google provider. | ||
legacyMicrosoftAccount | The configuration settings of the legacy Microsoft Account provider. | LegacyMicrosoftAccount |
The configuration settings of the Twitter provider. |
Apple
Name | Description | Value |
---|---|---|
enabled | false if the Apple provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the Apple registration. | AppleRegistration |
LoginScopes
Name | Description | Value |
---|---|---|
scopes | A list of the scopes that should be requested while authenticating. | string[] |
AppleRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
clientSecretSettingName | The app setting name that contains the client secret. | string |
AzureActiveDirectory
Name | Description | Value |
---|---|---|
enabled | false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true . |
bool |
isAutoProvisioned | Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling. This is an internal flag primarily intended to support the Azure Management Portal. Users should not read or write to this property. |
bool |
login | The configuration settings of the Azure Active Directory login flow. | AzureActiveDirectoryLogin |
registration | The configuration settings of the Azure Active Directory app registration. | AzureActiveDirectoryRegistration |
validation | The configuration settings of the Azure Active Directory token validation flow. | AzureActiveDirectoryValidation |
AzureActiveDirectoryLogin
Name | Description | Value |
---|---|---|
disableWWWAuthenticate | true if the www-authenticate provider should be omitted from the request; otherwise, false . |
bool |
loginParameters | Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". |
string[] |
AzureActiveDirectoryRegistration
Name | Description | Value |
---|---|---|
clientId | 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 |
string |
clientSecretCertificateIssuer | An alternative to the client secret thumbprint, that is the issuer of a certificate used for signing purposes. This property acts as a replacement for the Client Secret Certificate Thumbprint. It is also optional. |
string |
clientSecretCertificateSubjectAlternativeName | An alternative to the client secret thumbprint, that is the subject alternative name of a certificate used for signing purposes. This property acts as a replacement for the Client Secret Certificate Thumbprint. It is also optional. |
string |
clientSecretCertificateThumbprint | 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. |
string |
clientSecretSettingName | The app setting name that contains the client secret of the relying party application. | string |
openIdIssuer | 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://login.microsoftonline.com/v2.0/{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 |
string |
AzureActiveDirectoryValidation
Name | Description | Value |
---|---|---|
allowedAudiences | The list of audiences that can make successful authentication/authorization requests. | string[] |
defaultAuthorizationPolicy | The configuration settings of the default authorization policy. | DefaultAuthorizationPolicy |
jwtClaimChecks | The configuration settings of the checks that should be made while validating the JWT Claims. | JwtClaimChecks |
DefaultAuthorizationPolicy
Name | Description | Value |
---|---|---|
allowedApplications | The configuration settings of the Azure Active Directory allowed applications. | string[] |
allowedPrincipals | The configuration settings of the Azure Active Directory allowed principals. | AllowedPrincipals |
AllowedPrincipals
Name | Description | Value |
---|---|---|
groups | The list of the allowed groups. | string[] |
identities | The list of the allowed identities. | string[] |
JwtClaimChecks
Name | Description | Value |
---|---|---|
allowedClientApplications | The list of the allowed client applications. | string[] |
allowedGroups | The list of the allowed groups. | string[] |
AzureStaticWebApps
Name | Description | Value |
---|---|---|
enabled | false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true . |
bool |
registration | The configuration settings of the Azure Static Web Apps registration. | AzureStaticWebAppsRegistration |
AzureStaticWebAppsRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
Name | Description | Value |
---|---|---|
enabled | false if the Facebook provider should not be enabled despite the set registration; otherwise, true . |
bool |
graphApiVersion | The version of the Facebook api to be used while logging in. | string |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the Facebook provider. | AppRegistration |
AppRegistration
Name | Description | Value |
---|---|---|
appId | The App ID of the app used for login. | string |
appSecretSettingName | The app setting name that contains the app secret. | string |
GitHub
Name | Description | Value |
---|---|---|
enabled | false if the GitHub provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the GitHub provider. | ClientRegistration |
ClientRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
clientSecretSettingName | The app setting name that contains the client secret. | string |
Name | Description | Value |
---|---|---|
enabled | false if the Google provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the Google provider. | ClientRegistration |
validation | The configuration settings of the Azure Active Directory token validation flow. | AllowedAudiencesValidation |
AllowedAudiencesValidation
Name | Description | Value |
---|---|---|
allowedAudiences | The configuration settings of the allowed list of audiences from which to validate the JWT token. | string[] |
LegacyMicrosoftAccount
Name | Description | Value |
---|---|---|
enabled | false if the legacy Microsoft Account provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the legacy Microsoft Account provider. | ClientRegistration |
validation | The configuration settings of the legacy Microsoft Account provider token validation flow. | AllowedAudiencesValidation |
Name | Description | Value |
---|---|---|
enabled | false if the Twitter provider should not be enabled despite the set registration; otherwise, true . |
bool |
registration | The configuration settings of the app registration for the Twitter provider. | TwitterRegistration |
TwitterRegistration
Name | Description | Value |
---|---|---|
consumerKey | 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 |
string |
consumerSecretSettingName | The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. |
string |
Login
Name | Description | Value |
---|---|---|
allowedExternalRedirectUrls | 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. |
string[] |
cookieExpiration | The configuration settings of the session cookie's expiration. | CookieExpiration |
nonce | The configuration settings of the nonce used in the login flow. | Nonce |
preserveUrlFragmentsForLogins | true if the fragments from the request are preserved after the login request is made; otherwise, false . |
bool |
routes | The routes that specify the endpoints used for login and logout requests. | LoginRoutes |
tokenStore | The configuration settings of the token store. | TokenStore |
CookieExpiration
Name | Description | Value |
---|---|---|
convention | The convention used when determining the session cookie's expiration. | 'FixedTime' 'IdentityProviderDerived' |
timeToExpiration | The time after the request is made when the session cookie should expire. | string |
Nonce
Name | Description | Value |
---|---|---|
nonceExpirationInterval | The time after the request is made when the nonce should expire. | string |
validateNonce | false if the nonce should not be validated while completing the login flow; otherwise, true . |
bool |
LoginRoutes
Name | Description | Value |
---|---|---|
logoutEndpoint | The endpoint at which a logout request should be made. | string |
TokenStore
Name | Description | Value |
---|---|---|
azureBlobStorage | The configuration settings of the storage of the tokens if blob storage is used. | BlobStorageTokenStore |
enabled | true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false .The default is false . |
bool |
fileSystem | The configuration settings of the storage of the tokens if a file system is used. | FileSystemTokenStore |
tokenRefreshExtensionHours | 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. |
int |
BlobStorageTokenStore
Name | Description | Value |
---|---|---|
sasUrlSettingName | The name of the app setting containing the SAS URL of the blob storage containing the tokens. | string |
FileSystemTokenStore
Name | Description | Value |
---|---|---|
directory | The directory in which the tokens will be stored. | string |
AuthPlatform
Name | Description | Value |
---|---|---|
configFilePath | The path of the config file containing auth settings if they come from a file. If the path is relative, base will the site's root directory. |
string |
enabled | true if the Authentication / Authorization feature is enabled for the current app; otherwise, false . |
bool |
runtimeVersion | 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. |
string |
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Airflow Web App with PostgreSQL database on App Services |
A template for deploying Airflow Web App with PostgreSQL database on App Services |
EPiserverCMS in Azure |
This template allows you to create resources required for EpiServerCMS deployment in Azure |
Java CI/CD using Jenkins and Azure Web Apps |
This is a sample for Java CI/CD using Jenkins and Azure Web Apps. |
Orchard CMS Video Portal Web App |
This template provides a easy way to deploy Orchard CMS on Azure App Service Web Apps with the Azure Media Services module enabled and configured. |
PubNub Realtime Gateway for Azure Event Hubs |
The PubNub Realtime Gateway for Azure provides a realtime data stream bridge between the PubNub Data Stream Network and Azure Event Hubs. -- consider it a bi-directional bridge between PubNub and Azure! |
Scalable Umbraco CMS Web App |
This template provides a easy way to deploy umbraco CMS web app on Azure App Service Web Apps. |
Simple Umbraco CMS Web App |
This template provides a easy way to deploy umbraco CMS web app on Azure App Service Web Apps. |
WordPress on App Service with MySQL In App |
This template deploys a WordPress Web App on a Windows App Service with MySQL in app |
Enterprise Governance-AppService, SQL DB, AD, OMS, Runbooks |
Cloud adoption for an Enterprise, small or large, require responsible and efficient governance models to derive value from their cloud deployments. CloudWise (a code-name for the solution), is a composite solution available from Azure Partner QuickStarts, is an adoption enabler for Customers, System Integrators and Partners alike, that delivers a self-serviceable, automated governance and operations solution, focused on Optimizing Your Costs, Improve Your Application(s) Reliability, Reducing Business Risk. The solution highlights the core governance pillars of Visibility and Control. |
WebApp consuming a Azure SQL Private Endpoint |
This template shows how to create a Web app that consumes a private endpoint pointing to Azure SQL Server |
Moesif API Analytics and Monetization |
The template will log API calls from Azure API Management to Moesif API analytics and monetization platform |
Call custom APIs from Azure Logic Apps |
Although Logic Apps provides hundreds of connectors for various services, you might want to call APIs that run your own code. One of the easiest and most scalable ways to host your own web APIs is by using Azure App Service. This template deploys a Web app for your custom API and secures that API by using Azure Active Directory authentication. |
Application Gateway for a Web App with IP Restriction |
This template creates an application gateway in front of an Azure Web App with IP restriction enabled on the Web App. |
App Service Environment with Azure SQL backend |
This template creates an App Service Environment with an Azure SQL backend along with private endpoints along with associated resources typically used in an private/isolated environment. |
Provision a function app running on an App Service Plan |
This template provisions a function app on a dedicated hosting plan, meaning it will be run and billed just like any App Service site. |
Azure Function App with Event Hub and Managed Identity |
his template provisions an Azure Function app on a Linux Consumption plan, along with an Event Hub, Azure Storage, and Application Insights. The function app is able to use managed identity to connect to the Event Hub and Storage account |
Deploy an Azure Function Premium plan with vnet integration |
This template allows you to deploy an Azure Function Premium plan with regional virtual network integration enabled to a newly created virtual network. |
Provision a Mobile App with a SQL Database |
This template provisions a Mobile App, SQL Database, and Notification Hub. It configures a connection string in the mobile app for the database and notification hub. |
Web App with Private Endpoint |
This template allows you to create a Web App and expose it through Private Endpoint |
Application Gateway with internal API Management and Web App |
Application Gateway routing Internet traffic to a virtual network (internal mode) API Management instance which services a web API hosted in an Azure Web App. |
Create Azure Web app with Blob Storage connection string |
Creates an Azure Web app with Blob Storage connection string, Template originally authored by Jeff Bowles of Microsoft |
Web App with diagnostics logging to Blob Container |
Deploy a Web App with diagnostics logging to Storage Account Blob Container enabled. |
Create a web app on Azure with Java 13 and Tomcat 9 enabled |
This template creates a web app on azure with Java 13 and Tomcat 9 enabled allowing you to run Java applications in Azure. Template was authored by Donovan Brown of Microsoft. |
Web App w/ Application Insights sending to Log Analytics |
This template will is to help support the new API versions of microsoft.insights/components. Starting with 2020-02-02-preview WorkspaceID will be required when creating Application Inisghts.This template will deploy the App Service Plan, App Service, Application Insights, Log Analytics Workspace and hook it all together. |
Web App with Managed Identity, SQL Server and ΑΙ |
Simple example to deploy Azure infrastructure for app + data + managed identity + monitoring |
Create a Web App + Redis Cache + SQL DB with a template |
This template creates an Azure Web App with Redis cache and a SQL Database. |
Provision a Web App with a SQL Database |
This template provisions a Web App, a SQL Database, AutoScale settings, Alert rules, and App Insights. It configures a connection string in the web app for the database. |
Create a Web App plus Redis Cache using a template |
This template creates an Azure Web App with Redis cache. |
Web App with custom Deployment slots |
This template provides an easy way to deploy a web app with custom deployment slots on Azure Web Apps. |
Airflow Docker Web App on Linux with PostgreSQL |
This template provides a easy way to deploy a puckel/docker-airflow image (latest tag) on a Linux Web App with Azure database for PostgreSQL |
Sonarqube Docker Web App on Linux with Azure SQL |
This template deploys Sonarqube in an Azure App Service web app Linux container using the official Sonarqube image and backed by an Azure SQL Server. |
Sonarqube Docker Web App on Linux with MySQL |
This template provides a easy way to deploy a Sonarqube docker image (alpine tag) on a Linux Web App with Azure database for MySQL |
Sonarqube Docker Web App on Linux with PostgreSQL |
This template provides a easy way to deploy a Sonarqube docker image (alpine tag) on a Linux Web App with Azure database for PostgreSQL(Preview) |
Web App with Azure database for MySQL |
This template provides a easy way to deploy web app on Azure App Service Web Apps with Azure database for MySQL. |
Web App on Linux with PostgreSQL |
This template provides a easy way to deploy Web App on Linux with Azure database for PostgreSQL. |
Web App with VNet Injection and Private Endpoint |
This template allows you to create a secure end to end solution with two web apps, front end and back end, front end will consume securely the back through VNet injection and Private Endpoint |
ARM template resource definition
The sites/config resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Options for name property
The sites/config resource accepts different properties based on the value of the name property.
This article shows the properties that are available when you set name: 'authsettingsV2'
.
For other options, see:
- appsettings
- authsettings
- azurestorageaccounts
- backup
- connectionstrings
- logs
- metadata
- pushsettings
- slotConfigNames
- web
Resource format
To create a Microsoft.Web/sites/config resource, add the following JSON to your template.
{
"type": "Microsoft.Web/sites/config",
"apiVersion": "2022-09-01",
"name": "authsettingsV2",
"kind": "string",
"properties": {
"globalValidation": {
"excludedPaths": [ "string" ],
"redirectToProvider": "string",
"requireAuthentication": "bool",
"unauthenticatedClientAction": "string"
},
"httpSettings": {
"forwardProxy": {
"convention": "string",
"customHostHeaderName": "string",
"customProtoHeaderName": "string"
},
"requireHttps": "bool",
"routes": {
"apiPrefix": "string"
}
},
"identityProviders": {
"apple": {
"enabled": "bool",
"login": {
"scopes": [ "string" ]
},
"registration": {
"clientId": "string",
"clientSecretSettingName": "string"
}
},
"azureActiveDirectory": {
"enabled": "bool",
"isAutoProvisioned": "bool",
"login": {
"disableWWWAuthenticate": "bool",
"loginParameters": [ "string" ]
},
"registration": {
"clientId": "string",
"clientSecretCertificateIssuer": "string",
"clientSecretCertificateSubjectAlternativeName": "string",
"clientSecretCertificateThumbprint": "string",
"clientSecretSettingName": "string",
"openIdIssuer": "string"
},
"validation": {
"allowedAudiences": [ "string" ],
"defaultAuthorizationPolicy": {
"allowedApplications": [ "string" ],
"allowedPrincipals": {
"groups": [ "string" ],
"identities": [ "string" ]
}
},
"jwtClaimChecks": {
"allowedClientApplications": [ "string" ],
"allowedGroups": [ "string" ]
}
}
},
"azureStaticWebApps": {
"enabled": "bool",
"registration": {
"clientId": "string"
}
},
"customOpenIdConnectProviders": {},
"facebook": {
"enabled": "bool",
"graphApiVersion": "string",
"login": {
"scopes": [ "string" ]
},
"registration": {
"appId": "string",
"appSecretSettingName": "string"
}
},
"gitHub": {
"enabled": "bool",
"login": {
"scopes": [ "string" ]
},
"registration": {
"clientId": "string",
"clientSecretSettingName": "string"
}
},
"google": {
"enabled": "bool",
"login": {
"scopes": [ "string" ]
},
"registration": {
"clientId": "string",
"clientSecretSettingName": "string"
},
"validation": {
"allowedAudiences": [ "string" ]
}
},
"legacyMicrosoftAccount": {
"enabled": "bool",
"login": {
"scopes": [ "string" ]
},
"registration": {
"clientId": "string",
"clientSecretSettingName": "string"
},
"validation": {
"allowedAudiences": [ "string" ]
}
},
"twitter": {
"enabled": "bool",
"registration": {
"consumerKey": "string",
"consumerSecretSettingName": "string"
}
}
},
"login": {
"allowedExternalRedirectUrls": [ "string" ],
"cookieExpiration": {
"convention": "string",
"timeToExpiration": "string"
},
"nonce": {
"nonceExpirationInterval": "string",
"validateNonce": "bool"
},
"preserveUrlFragmentsForLogins": "bool",
"routes": {
"logoutEndpoint": "string"
},
"tokenStore": {
"azureBlobStorage": {
"sasUrlSettingName": "string"
},
"enabled": "bool",
"fileSystem": {
"directory": "string"
},
"tokenRefreshExtensionHours": "int"
}
},
"platform": {
"configFilePath": "string",
"enabled": "bool",
"runtimeVersion": "string"
}
}
}
Property values
sites/config-authsettingsV2
Name | Description | Value |
---|---|---|
type | The resource type | 'Microsoft.Web/sites/config' |
apiVersion | The resource api version | '2022-09-01' |
name | The resource name See how to set names and types for child resources in JSON ARM templates. |
'authsettingsV2' |
kind | Kind of resource. | string |
properties | SiteAuthSettingsV2 resource specific properties | SiteAuthSettingsV2Properties |
SiteAuthSettingsV2Properties
Name | Description | Value |
---|---|---|
globalValidation | The configuration settings that determines the validation flow of users using App Service Authentication/Authorization. | GlobalValidation |
httpSettings | The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization. | HttpSettings |
identityProviders | The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization. | IdentityProviders |
login | The configuration settings of the login flow of users using App Service Authentication/Authorization. | Login |
platform | The configuration settings of the platform of App Service Authentication/Authorization. | AuthPlatform |
GlobalValidation
Name | Description | Value |
---|---|---|
excludedPaths | The paths for which unauthenticated flow would not be redirected to the login page. | string[] |
redirectToProvider | 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". |
string |
requireAuthentication | true if the authentication flow is required any request is made; otherwise, false . |
bool |
unauthenticatedClientAction | The action to take when an unauthenticated client attempts to access the app. | 'AllowAnonymous' 'RedirectToLoginPage' 'Return401' 'Return403' |
HttpSettings
Name | Description | Value |
---|---|---|
forwardProxy | The configuration settings of a forward proxy used to make the requests. | ForwardProxy |
requireHttps | false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true . |
bool |
routes | The configuration settings of the paths HTTP requests. | HttpSettingsRoutes |
ForwardProxy
Name | Description | Value |
---|---|---|
convention | The convention used to determine the url of the request made. | 'Custom' 'NoProxy' 'Standard' |
customHostHeaderName | The name of the header containing the host of the request. | string |
customProtoHeaderName | The name of the header containing the scheme of the request. | string |
HttpSettingsRoutes
Name | Description | Value |
---|---|---|
apiPrefix | The prefix that should precede all the authentication/authorization paths. | string |
IdentityProviders
Name | Description | Value |
---|---|---|
apple | The configuration settings of the Apple provider. | Apple |
azureActiveDirectory | The configuration settings of the Azure Active directory provider. | AzureActiveDirectory |
azureStaticWebApps | The configuration settings of the Azure Static Web Apps provider. | AzureStaticWebApps |
customOpenIdConnectProviders | The map of the name of the alias of each custom Open ID Connect provider to the configuration settings of the custom Open ID Connect provider. |
object |
The configuration settings of the Facebook provider. | ||
gitHub | The configuration settings of the GitHub provider. | GitHub |
The configuration settings of the Google provider. | ||
legacyMicrosoftAccount | The configuration settings of the legacy Microsoft Account provider. | LegacyMicrosoftAccount |
The configuration settings of the Twitter provider. |
Apple
Name | Description | Value |
---|---|---|
enabled | false if the Apple provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the Apple registration. | AppleRegistration |
LoginScopes
Name | Description | Value |
---|---|---|
scopes | A list of the scopes that should be requested while authenticating. | string[] |
AppleRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
clientSecretSettingName | The app setting name that contains the client secret. | string |
AzureActiveDirectory
Name | Description | Value |
---|---|---|
enabled | false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true . |
bool |
isAutoProvisioned | Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling. This is an internal flag primarily intended to support the Azure Management Portal. Users should not read or write to this property. |
bool |
login | The configuration settings of the Azure Active Directory login flow. | AzureActiveDirectoryLogin |
registration | The configuration settings of the Azure Active Directory app registration. | AzureActiveDirectoryRegistration |
validation | The configuration settings of the Azure Active Directory token validation flow. | AzureActiveDirectoryValidation |
AzureActiveDirectoryLogin
Name | Description | Value |
---|---|---|
disableWWWAuthenticate | true if the www-authenticate provider should be omitted from the request; otherwise, false . |
bool |
loginParameters | Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". |
string[] |
AzureActiveDirectoryRegistration
Name | Description | Value |
---|---|---|
clientId | 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 |
string |
clientSecretCertificateIssuer | An alternative to the client secret thumbprint, that is the issuer of a certificate used for signing purposes. This property acts as a replacement for the Client Secret Certificate Thumbprint. It is also optional. |
string |
clientSecretCertificateSubjectAlternativeName | An alternative to the client secret thumbprint, that is the subject alternative name of a certificate used for signing purposes. This property acts as a replacement for the Client Secret Certificate Thumbprint. It is also optional. |
string |
clientSecretCertificateThumbprint | 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. |
string |
clientSecretSettingName | The app setting name that contains the client secret of the relying party application. | string |
openIdIssuer | 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://login.microsoftonline.com/v2.0/{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 |
string |
AzureActiveDirectoryValidation
Name | Description | Value |
---|---|---|
allowedAudiences | The list of audiences that can make successful authentication/authorization requests. | string[] |
defaultAuthorizationPolicy | The configuration settings of the default authorization policy. | DefaultAuthorizationPolicy |
jwtClaimChecks | The configuration settings of the checks that should be made while validating the JWT Claims. | JwtClaimChecks |
DefaultAuthorizationPolicy
Name | Description | Value |
---|---|---|
allowedApplications | The configuration settings of the Azure Active Directory allowed applications. | string[] |
allowedPrincipals | The configuration settings of the Azure Active Directory allowed principals. | AllowedPrincipals |
AllowedPrincipals
Name | Description | Value |
---|---|---|
groups | The list of the allowed groups. | string[] |
identities | The list of the allowed identities. | string[] |
JwtClaimChecks
Name | Description | Value |
---|---|---|
allowedClientApplications | The list of the allowed client applications. | string[] |
allowedGroups | The list of the allowed groups. | string[] |
AzureStaticWebApps
Name | Description | Value |
---|---|---|
enabled | false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true . |
bool |
registration | The configuration settings of the Azure Static Web Apps registration. | AzureStaticWebAppsRegistration |
AzureStaticWebAppsRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
Name | Description | Value |
---|---|---|
enabled | false if the Facebook provider should not be enabled despite the set registration; otherwise, true . |
bool |
graphApiVersion | The version of the Facebook api to be used while logging in. | string |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the Facebook provider. | AppRegistration |
AppRegistration
Name | Description | Value |
---|---|---|
appId | The App ID of the app used for login. | string |
appSecretSettingName | The app setting name that contains the app secret. | string |
GitHub
Name | Description | Value |
---|---|---|
enabled | false if the GitHub provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the GitHub provider. | ClientRegistration |
ClientRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
clientSecretSettingName | The app setting name that contains the client secret. | string |
Name | Description | Value |
---|---|---|
enabled | false if the Google provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the Google provider. | ClientRegistration |
validation | The configuration settings of the Azure Active Directory token validation flow. | AllowedAudiencesValidation |
AllowedAudiencesValidation
Name | Description | Value |
---|---|---|
allowedAudiences | The configuration settings of the allowed list of audiences from which to validate the JWT token. | string[] |
LegacyMicrosoftAccount
Name | Description | Value |
---|---|---|
enabled | false if the legacy Microsoft Account provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the legacy Microsoft Account provider. | ClientRegistration |
validation | The configuration settings of the legacy Microsoft Account provider token validation flow. | AllowedAudiencesValidation |
Name | Description | Value |
---|---|---|
enabled | false if the Twitter provider should not be enabled despite the set registration; otherwise, true . |
bool |
registration | The configuration settings of the app registration for the Twitter provider. | TwitterRegistration |
TwitterRegistration
Name | Description | Value |
---|---|---|
consumerKey | 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 |
string |
consumerSecretSettingName | The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. |
string |
Login
Name | Description | Value |
---|---|---|
allowedExternalRedirectUrls | 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. |
string[] |
cookieExpiration | The configuration settings of the session cookie's expiration. | CookieExpiration |
nonce | The configuration settings of the nonce used in the login flow. | Nonce |
preserveUrlFragmentsForLogins | true if the fragments from the request are preserved after the login request is made; otherwise, false . |
bool |
routes | The routes that specify the endpoints used for login and logout requests. | LoginRoutes |
tokenStore | The configuration settings of the token store. | TokenStore |
CookieExpiration
Name | Description | Value |
---|---|---|
convention | The convention used when determining the session cookie's expiration. | 'FixedTime' 'IdentityProviderDerived' |
timeToExpiration | The time after the request is made when the session cookie should expire. | string |
Nonce
Name | Description | Value |
---|---|---|
nonceExpirationInterval | The time after the request is made when the nonce should expire. | string |
validateNonce | false if the nonce should not be validated while completing the login flow; otherwise, true . |
bool |
LoginRoutes
Name | Description | Value |
---|---|---|
logoutEndpoint | The endpoint at which a logout request should be made. | string |
TokenStore
Name | Description | Value |
---|---|---|
azureBlobStorage | The configuration settings of the storage of the tokens if blob storage is used. | BlobStorageTokenStore |
enabled | true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false .The default is false . |
bool |
fileSystem | The configuration settings of the storage of the tokens if a file system is used. | FileSystemTokenStore |
tokenRefreshExtensionHours | 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. |
int |
BlobStorageTokenStore
Name | Description | Value |
---|---|---|
sasUrlSettingName | The name of the app setting containing the SAS URL of the blob storage containing the tokens. | string |
FileSystemTokenStore
Name | Description | Value |
---|---|---|
directory | The directory in which the tokens will be stored. | string |
AuthPlatform
Name | Description | Value |
---|---|---|
configFilePath | The path of the config file containing auth settings if they come from a file. If the path is relative, base will the site's root directory. |
string |
enabled | true if the Authentication / Authorization feature is enabled for the current app; otherwise, false . |
bool |
runtimeVersion | 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. |
string |
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Airflow Web App with PostgreSQL database on App Services |
A template for deploying Airflow Web App with PostgreSQL database on App Services |
EPiserverCMS in Azure |
This template allows you to create resources required for EpiServerCMS deployment in Azure |
Java CI/CD using Jenkins and Azure Web Apps |
This is a sample for Java CI/CD using Jenkins and Azure Web Apps. |
Orchard CMS Video Portal Web App |
This template provides a easy way to deploy Orchard CMS on Azure App Service Web Apps with the Azure Media Services module enabled and configured. |
PubNub Realtime Gateway for Azure Event Hubs |
The PubNub Realtime Gateway for Azure provides a realtime data stream bridge between the PubNub Data Stream Network and Azure Event Hubs. -- consider it a bi-directional bridge between PubNub and Azure! |
Scalable Umbraco CMS Web App |
This template provides a easy way to deploy umbraco CMS web app on Azure App Service Web Apps. |
Simple Umbraco CMS Web App |
This template provides a easy way to deploy umbraco CMS web app on Azure App Service Web Apps. |
WordPress on App Service with MySQL In App |
This template deploys a WordPress Web App on a Windows App Service with MySQL in app |
Enterprise Governance-AppService, SQL DB, AD, OMS, Runbooks |
Cloud adoption for an Enterprise, small or large, require responsible and efficient governance models to derive value from their cloud deployments. CloudWise (a code-name for the solution), is a composite solution available from Azure Partner QuickStarts, is an adoption enabler for Customers, System Integrators and Partners alike, that delivers a self-serviceable, automated governance and operations solution, focused on Optimizing Your Costs, Improve Your Application(s) Reliability, Reducing Business Risk. The solution highlights the core governance pillars of Visibility and Control. |
WebApp consuming a Azure SQL Private Endpoint |
This template shows how to create a Web app that consumes a private endpoint pointing to Azure SQL Server |
Moesif API Analytics and Monetization |
The template will log API calls from Azure API Management to Moesif API analytics and monetization platform |
Call custom APIs from Azure Logic Apps |
Although Logic Apps provides hundreds of connectors for various services, you might want to call APIs that run your own code. One of the easiest and most scalable ways to host your own web APIs is by using Azure App Service. This template deploys a Web app for your custom API and secures that API by using Azure Active Directory authentication. |
Application Gateway for a Web App with IP Restriction |
This template creates an application gateway in front of an Azure Web App with IP restriction enabled on the Web App. |
App Service Environment with Azure SQL backend |
This template creates an App Service Environment with an Azure SQL backend along with private endpoints along with associated resources typically used in an private/isolated environment. |
Provision a function app running on an App Service Plan |
This template provisions a function app on a dedicated hosting plan, meaning it will be run and billed just like any App Service site. |
Azure Function App with Event Hub and Managed Identity |
his template provisions an Azure Function app on a Linux Consumption plan, along with an Event Hub, Azure Storage, and Application Insights. The function app is able to use managed identity to connect to the Event Hub and Storage account |
Deploy an Azure Function Premium plan with vnet integration |
This template allows you to deploy an Azure Function Premium plan with regional virtual network integration enabled to a newly created virtual network. |
Provision a Mobile App with a SQL Database |
This template provisions a Mobile App, SQL Database, and Notification Hub. It configures a connection string in the mobile app for the database and notification hub. |
Web App with Private Endpoint |
This template allows you to create a Web App and expose it through Private Endpoint |
Application Gateway with internal API Management and Web App |
Application Gateway routing Internet traffic to a virtual network (internal mode) API Management instance which services a web API hosted in an Azure Web App. |
Create Azure Web app with Blob Storage connection string |
Creates an Azure Web app with Blob Storage connection string, Template originally authored by Jeff Bowles of Microsoft |
Web App with diagnostics logging to Blob Container |
Deploy a Web App with diagnostics logging to Storage Account Blob Container enabled. |
Create a web app on Azure with Java 13 and Tomcat 9 enabled |
This template creates a web app on azure with Java 13 and Tomcat 9 enabled allowing you to run Java applications in Azure. Template was authored by Donovan Brown of Microsoft. |
Web App w/ Application Insights sending to Log Analytics |
This template will is to help support the new API versions of microsoft.insights/components. Starting with 2020-02-02-preview WorkspaceID will be required when creating Application Inisghts.This template will deploy the App Service Plan, App Service, Application Insights, Log Analytics Workspace and hook it all together. |
Web App with Managed Identity, SQL Server and ΑΙ |
Simple example to deploy Azure infrastructure for app + data + managed identity + monitoring |
Create a Web App + Redis Cache + SQL DB with a template |
This template creates an Azure Web App with Redis cache and a SQL Database. |
Provision a Web App with a SQL Database |
This template provisions a Web App, a SQL Database, AutoScale settings, Alert rules, and App Insights. It configures a connection string in the web app for the database. |
Create a Web App plus Redis Cache using a template |
This template creates an Azure Web App with Redis cache. |
Web App with custom Deployment slots |
This template provides an easy way to deploy a web app with custom deployment slots on Azure Web Apps. |
Airflow Docker Web App on Linux with PostgreSQL |
This template provides a easy way to deploy a puckel/docker-airflow image (latest tag) on a Linux Web App with Azure database for PostgreSQL |
Sonarqube Docker Web App on Linux with Azure SQL |
This template deploys Sonarqube in an Azure App Service web app Linux container using the official Sonarqube image and backed by an Azure SQL Server. |
Sonarqube Docker Web App on Linux with MySQL |
This template provides a easy way to deploy a Sonarqube docker image (alpine tag) on a Linux Web App with Azure database for MySQL |
Sonarqube Docker Web App on Linux with PostgreSQL |
This template provides a easy way to deploy a Sonarqube docker image (alpine tag) on a Linux Web App with Azure database for PostgreSQL(Preview) |
Web App with Azure database for MySQL |
This template provides a easy way to deploy web app on Azure App Service Web Apps with Azure database for MySQL. |
Web App on Linux with PostgreSQL |
This template provides a easy way to deploy Web App on Linux with Azure database for PostgreSQL. |
Web App with VNet Injection and Private Endpoint |
This template allows you to create a secure end to end solution with two web apps, front end and back end, front end will consume securely the back through VNet injection and Private Endpoint |
Terraform (AzAPI provider) resource definition
The sites/config resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Options for name property
The sites/config resource accepts different properties based on the value of the name property.
This article shows the properties that are available when you set name: 'authsettingsV2'
.
For other options, see:
- appsettings
- authsettings
- azurestorageaccounts
- backup
- connectionstrings
- logs
- metadata
- pushsettings
- slotConfigNames
- web
Resource format
To create a Microsoft.Web/sites/config resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Web/sites/config@2022-09-01"
name = "authsettingsV2"
parent_id = "string"
body = jsonencode({
properties = {
globalValidation = {
excludedPaths = [
"string"
]
redirectToProvider = "string"
requireAuthentication = bool
unauthenticatedClientAction = "string"
}
httpSettings = {
forwardProxy = {
convention = "string"
customHostHeaderName = "string"
customProtoHeaderName = "string"
}
requireHttps = bool
routes = {
apiPrefix = "string"
}
}
identityProviders = {
apple = {
enabled = bool
login = {
scopes = [
"string"
]
}
registration = {
clientId = "string"
clientSecretSettingName = "string"
}
}
azureActiveDirectory = {
enabled = bool
isAutoProvisioned = bool
login = {
disableWWWAuthenticate = bool
loginParameters = [
"string"
]
}
registration = {
clientId = "string"
clientSecretCertificateIssuer = "string"
clientSecretCertificateSubjectAlternativeName = "string"
clientSecretCertificateThumbprint = "string"
clientSecretSettingName = "string"
openIdIssuer = "string"
}
validation = {
allowedAudiences = [
"string"
]
defaultAuthorizationPolicy = {
allowedApplications = [
"string"
]
allowedPrincipals = {
groups = [
"string"
]
identities = [
"string"
]
}
}
jwtClaimChecks = {
allowedClientApplications = [
"string"
]
allowedGroups = [
"string"
]
}
}
}
azureStaticWebApps = {
enabled = bool
registration = {
clientId = "string"
}
}
customOpenIdConnectProviders = {}
facebook = {
enabled = bool
graphApiVersion = "string"
login = {
scopes = [
"string"
]
}
registration = {
appId = "string"
appSecretSettingName = "string"
}
}
gitHub = {
enabled = bool
login = {
scopes = [
"string"
]
}
registration = {
clientId = "string"
clientSecretSettingName = "string"
}
}
google = {
enabled = bool
login = {
scopes = [
"string"
]
}
registration = {
clientId = "string"
clientSecretSettingName = "string"
}
validation = {
allowedAudiences = [
"string"
]
}
}
legacyMicrosoftAccount = {
enabled = bool
login = {
scopes = [
"string"
]
}
registration = {
clientId = "string"
clientSecretSettingName = "string"
}
validation = {
allowedAudiences = [
"string"
]
}
}
twitter = {
enabled = bool
registration = {
consumerKey = "string"
consumerSecretSettingName = "string"
}
}
}
login = {
allowedExternalRedirectUrls = [
"string"
]
cookieExpiration = {
convention = "string"
timeToExpiration = "string"
}
nonce = {
nonceExpirationInterval = "string"
validateNonce = bool
}
preserveUrlFragmentsForLogins = bool
routes = {
logoutEndpoint = "string"
}
tokenStore = {
azureBlobStorage = {
sasUrlSettingName = "string"
}
enabled = bool
fileSystem = {
directory = "string"
}
tokenRefreshExtensionHours = int
}
}
platform = {
configFilePath = "string"
enabled = bool
runtimeVersion = "string"
}
}
kind = "string"
})
}
Property values
sites/config-authsettingsV2
Name | Description | Value |
---|---|---|
type | The resource type | "Microsoft.Web/sites/config@2022-09-01" |
name | The resource name | "authsettingsV2" |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
kind | Kind of resource. | string |
properties | SiteAuthSettingsV2 resource specific properties | SiteAuthSettingsV2Properties |
SiteAuthSettingsV2Properties
Name | Description | Value |
---|---|---|
globalValidation | The configuration settings that determines the validation flow of users using App Service Authentication/Authorization. | GlobalValidation |
httpSettings | The configuration settings of the HTTP requests for authentication and authorization requests made against App Service Authentication/Authorization. | HttpSettings |
identityProviders | The configuration settings of each of the identity providers used to configure App Service Authentication/Authorization. | IdentityProviders |
login | The configuration settings of the login flow of users using App Service Authentication/Authorization. | Login |
platform | The configuration settings of the platform of App Service Authentication/Authorization. | AuthPlatform |
GlobalValidation
Name | Description | Value |
---|---|---|
excludedPaths | The paths for which unauthenticated flow would not be redirected to the login page. | string[] |
redirectToProvider | 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". |
string |
requireAuthentication | true if the authentication flow is required any request is made; otherwise, false . |
bool |
unauthenticatedClientAction | The action to take when an unauthenticated client attempts to access the app. | "AllowAnonymous" "RedirectToLoginPage" "Return401" "Return403" |
HttpSettings
Name | Description | Value |
---|---|---|
forwardProxy | The configuration settings of a forward proxy used to make the requests. | ForwardProxy |
requireHttps | false if the authentication/authorization responses not having the HTTPS scheme are permissible; otherwise, true . |
bool |
routes | The configuration settings of the paths HTTP requests. | HttpSettingsRoutes |
ForwardProxy
Name | Description | Value |
---|---|---|
convention | The convention used to determine the url of the request made. | "Custom" "NoProxy" "Standard" |
customHostHeaderName | The name of the header containing the host of the request. | string |
customProtoHeaderName | The name of the header containing the scheme of the request. | string |
HttpSettingsRoutes
Name | Description | Value |
---|---|---|
apiPrefix | The prefix that should precede all the authentication/authorization paths. | string |
IdentityProviders
Name | Description | Value |
---|---|---|
apple | The configuration settings of the Apple provider. | Apple |
azureActiveDirectory | The configuration settings of the Azure Active directory provider. | AzureActiveDirectory |
azureStaticWebApps | The configuration settings of the Azure Static Web Apps provider. | AzureStaticWebApps |
customOpenIdConnectProviders | The map of the name of the alias of each custom Open ID Connect provider to the configuration settings of the custom Open ID Connect provider. |
object |
The configuration settings of the Facebook provider. | ||
gitHub | The configuration settings of the GitHub provider. | GitHub |
The configuration settings of the Google provider. | ||
legacyMicrosoftAccount | The configuration settings of the legacy Microsoft Account provider. | LegacyMicrosoftAccount |
The configuration settings of the Twitter provider. |
Apple
Name | Description | Value |
---|---|---|
enabled | false if the Apple provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the Apple registration. | AppleRegistration |
LoginScopes
Name | Description | Value |
---|---|---|
scopes | A list of the scopes that should be requested while authenticating. | string[] |
AppleRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
clientSecretSettingName | The app setting name that contains the client secret. | string |
AzureActiveDirectory
Name | Description | Value |
---|---|---|
enabled | false if the Azure Active Directory provider should not be enabled despite the set registration; otherwise, true . |
bool |
isAutoProvisioned | Gets a value indicating whether the Azure AD configuration was auto-provisioned using 1st party tooling. This is an internal flag primarily intended to support the Azure Management Portal. Users should not read or write to this property. |
bool |
login | The configuration settings of the Azure Active Directory login flow. | AzureActiveDirectoryLogin |
registration | The configuration settings of the Azure Active Directory app registration. | AzureActiveDirectoryRegistration |
validation | The configuration settings of the Azure Active Directory token validation flow. | AzureActiveDirectoryValidation |
AzureActiveDirectoryLogin
Name | Description | Value |
---|---|---|
disableWWWAuthenticate | true if the www-authenticate provider should be omitted from the request; otherwise, false . |
bool |
loginParameters | Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". |
string[] |
AzureActiveDirectoryRegistration
Name | Description | Value |
---|---|---|
clientId | 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 |
string |
clientSecretCertificateIssuer | An alternative to the client secret thumbprint, that is the issuer of a certificate used for signing purposes. This property acts as a replacement for the Client Secret Certificate Thumbprint. It is also optional. |
string |
clientSecretCertificateSubjectAlternativeName | An alternative to the client secret thumbprint, that is the subject alternative name of a certificate used for signing purposes. This property acts as a replacement for the Client Secret Certificate Thumbprint. It is also optional. |
string |
clientSecretCertificateThumbprint | 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. |
string |
clientSecretSettingName | The app setting name that contains the client secret of the relying party application. | string |
openIdIssuer | 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://login.microsoftonline.com/v2.0/{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 |
string |
AzureActiveDirectoryValidation
Name | Description | Value |
---|---|---|
allowedAudiences | The list of audiences that can make successful authentication/authorization requests. | string[] |
defaultAuthorizationPolicy | The configuration settings of the default authorization policy. | DefaultAuthorizationPolicy |
jwtClaimChecks | The configuration settings of the checks that should be made while validating the JWT Claims. | JwtClaimChecks |
DefaultAuthorizationPolicy
Name | Description | Value |
---|---|---|
allowedApplications | The configuration settings of the Azure Active Directory allowed applications. | string[] |
allowedPrincipals | The configuration settings of the Azure Active Directory allowed principals. | AllowedPrincipals |
AllowedPrincipals
Name | Description | Value |
---|---|---|
groups | The list of the allowed groups. | string[] |
identities | The list of the allowed identities. | string[] |
JwtClaimChecks
Name | Description | Value |
---|---|---|
allowedClientApplications | The list of the allowed client applications. | string[] |
allowedGroups | The list of the allowed groups. | string[] |
AzureStaticWebApps
Name | Description | Value |
---|---|---|
enabled | false if the Azure Static Web Apps provider should not be enabled despite the set registration; otherwise, true . |
bool |
registration | The configuration settings of the Azure Static Web Apps registration. | AzureStaticWebAppsRegistration |
AzureStaticWebAppsRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
Name | Description | Value |
---|---|---|
enabled | false if the Facebook provider should not be enabled despite the set registration; otherwise, true . |
bool |
graphApiVersion | The version of the Facebook api to be used while logging in. | string |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the Facebook provider. | AppRegistration |
AppRegistration
Name | Description | Value |
---|---|---|
appId | The App ID of the app used for login. | string |
appSecretSettingName | The app setting name that contains the app secret. | string |
GitHub
Name | Description | Value |
---|---|---|
enabled | false if the GitHub provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the GitHub provider. | ClientRegistration |
ClientRegistration
Name | Description | Value |
---|---|---|
clientId | The Client ID of the app used for login. | string |
clientSecretSettingName | The app setting name that contains the client secret. | string |
Name | Description | Value |
---|---|---|
enabled | false if the Google provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the Google provider. | ClientRegistration |
validation | The configuration settings of the Azure Active Directory token validation flow. | AllowedAudiencesValidation |
AllowedAudiencesValidation
Name | Description | Value |
---|---|---|
allowedAudiences | The configuration settings of the allowed list of audiences from which to validate the JWT token. | string[] |
LegacyMicrosoftAccount
Name | Description | Value |
---|---|---|
enabled | false if the legacy Microsoft Account provider should not be enabled despite the set registration; otherwise, true . |
bool |
login | The configuration settings of the login flow. | LoginScopes |
registration | The configuration settings of the app registration for the legacy Microsoft Account provider. | ClientRegistration |
validation | The configuration settings of the legacy Microsoft Account provider token validation flow. | AllowedAudiencesValidation |
Name | Description | Value |
---|---|---|
enabled | false if the Twitter provider should not be enabled despite the set registration; otherwise, true . |
bool |
registration | The configuration settings of the app registration for the Twitter provider. | TwitterRegistration |
TwitterRegistration
Name | Description | Value |
---|---|---|
consumerKey | 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 |
string |
consumerSecretSettingName | The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. |
string |
Login
Name | Description | Value |
---|---|---|
allowedExternalRedirectUrls | 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. |
string[] |
cookieExpiration | The configuration settings of the session cookie's expiration. | CookieExpiration |
nonce | The configuration settings of the nonce used in the login flow. | Nonce |
preserveUrlFragmentsForLogins | true if the fragments from the request are preserved after the login request is made; otherwise, false . |
bool |
routes | The routes that specify the endpoints used for login and logout requests. | LoginRoutes |
tokenStore | The configuration settings of the token store. | TokenStore |
CookieExpiration
Name | Description | Value |
---|---|---|
convention | The convention used when determining the session cookie's expiration. | "FixedTime" "IdentityProviderDerived" |
timeToExpiration | The time after the request is made when the session cookie should expire. | string |
Nonce
Name | Description | Value |
---|---|---|
nonceExpirationInterval | The time after the request is made when the nonce should expire. | string |
validateNonce | false if the nonce should not be validated while completing the login flow; otherwise, true . |
bool |
LoginRoutes
Name | Description | Value |
---|---|---|
logoutEndpoint | The endpoint at which a logout request should be made. | string |
TokenStore
Name | Description | Value |
---|---|---|
azureBlobStorage | The configuration settings of the storage of the tokens if blob storage is used. | BlobStorageTokenStore |
enabled | true to durably store platform-specific security tokens that are obtained during login flows; otherwise, false .The default is false . |
bool |
fileSystem | The configuration settings of the storage of the tokens if a file system is used. | FileSystemTokenStore |
tokenRefreshExtensionHours | 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. |
int |
BlobStorageTokenStore
Name | Description | Value |
---|---|---|
sasUrlSettingName | The name of the app setting containing the SAS URL of the blob storage containing the tokens. | string |
FileSystemTokenStore
Name | Description | Value |
---|---|---|
directory | The directory in which the tokens will be stored. | string |
AuthPlatform
Name | Description | Value |
---|---|---|
configFilePath | The path of the config file containing auth settings if they come from a file. If the path is relative, base will the site's root directory. |
string |
enabled | true if the Authentication / Authorization feature is enabled for the current app; otherwise, false . |
bool |
runtimeVersion | 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. |
string |