Microsoft.Web sites/config 2016-08-01
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.
Resource format
To create a Microsoft.Web/sites/config resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Web/sites/config@2016-08-01' = {
name: 'string'
// For remaining properties, see microsoft.web/sites/config objects
}
microsoft.web/sites/config objects
Set the name property to specify the type of object.
For appsettings, use:
{
kind: 'string'
name: 'appsettings'
properties: {
{customized property}: 'string'
}
}
For authsettings, use:
{
kind: 'string'
name: 'authsettings'
properties: {
additionalLoginParams: [
'string'
]
allowedAudiences: [
'string'
]
allowedExternalRedirectUrls: [
'string'
]
clientId: 'string'
clientSecret: 'string'
defaultProvider: 'string'
enabled: bool
facebookAppId: 'string'
facebookAppSecret: 'string'
facebookOAuthScopes: [
'string'
]
googleClientId: 'string'
googleClientSecret: 'string'
googleOAuthScopes: [
'string'
]
issuer: 'string'
microsoftAccountClientId: 'string'
microsoftAccountClientSecret: 'string'
microsoftAccountOAuthScopes: [
'string'
]
runtimeVersion: 'string'
tokenRefreshExtensionHours: int
tokenStoreEnabled: bool
twitterConsumerKey: 'string'
twitterConsumerSecret: 'string'
unauthenticatedClientAction: 'string'
}
}
For backup, use:
{
kind: 'string'
name: 'backup'
properties: {
backupSchedule: {
frequencyInterval: int
frequencyUnit: 'string'
keepAtLeastOneBackup: bool
retentionPeriodInDays: int
startTime: 'string'
}
databases: [
{
connectionString: 'string'
connectionStringName: 'string'
databaseType: 'string'
name: 'string'
}
]
enabled: bool
name: 'string'
storageAccountUrl: 'string'
type: 'string'
}
}
For connectionstrings, use:
{
kind: 'string'
name: 'connectionstrings'
properties: {
{customized property}: {
type: 'string'
value: 'string'
}
}
}
For logs, use:
{
kind: 'string'
name: 'logs'
properties: {
applicationLogs: {
azureBlobStorage: {
level: 'string'
retentionInDays: int
sasUrl: 'string'
}
azureTableStorage: {
level: 'string'
sasUrl: 'string'
}
fileSystem: {
level: 'string'
}
}
detailedErrorMessages: {
enabled: bool
}
failedRequestsTracing: {
enabled: bool
}
httpLogs: {
azureBlobStorage: {
enabled: bool
retentionInDays: int
sasUrl: 'string'
}
fileSystem: {
enabled: bool
retentionInDays: int
retentionInMb: int
}
}
}
}
For metadata, use:
{
kind: 'string'
name: 'metadata'
properties: {
{customized property}: 'string'
}
}
For pushsettings, use:
{
kind: 'string'
name: 'pushsettings'
properties: {
dynamicTagsJson: 'string'
isPushEnabled: bool
tagsRequiringAuth: 'string'
tagWhitelistJson: 'string'
}
}
For slotConfigNames, use:
{
kind: 'string'
name: 'slotConfigNames'
properties: {
appSettingNames: [
'string'
]
connectionStringNames: [
'string'
]
}
}
For web, use:
{
kind: 'string'
name: 'web'
properties: {
alwaysOn: bool
apiDefinition: {
url: 'string'
}
appCommandLine: 'string'
appSettings: [
{
name: 'string'
value: 'string'
}
]
autoHealEnabled: bool
autoHealRules: {
actions: {
actionType: 'string'
customAction: {
exe: 'string'
parameters: 'string'
}
minProcessExecutionTime: 'string'
}
triggers: {
privateBytesInKB: int
requests: {
count: int
timeInterval: 'string'
}
slowRequests: {
count: int
timeInterval: 'string'
timeTaken: 'string'
}
statusCodes: [
{
count: int
status: int
subStatus: int
timeInterval: 'string'
win32Status: int
}
]
}
}
autoSwapSlotName: 'string'
connectionStrings: [
{
connectionString: 'string'
name: 'string'
type: 'string'
}
]
cors: {
allowedOrigins: [
'string'
]
}
defaultDocuments: [
'string'
]
detailedErrorLoggingEnabled: bool
documentRoot: 'string'
experiments: {
rampUpRules: [
{
actionHostName: 'string'
changeDecisionCallbackUrl: 'string'
changeIntervalInMinutes: int
changeStep: int
maxReroutePercentage: int
minReroutePercentage: int
name: 'string'
reroutePercentage: int
}
]
}
handlerMappings: [
{
arguments: 'string'
extension: 'string'
scriptProcessor: 'string'
}
]
http20Enabled: bool
httpLoggingEnabled: bool
ipSecurityRestrictions: [
{
ipAddress: 'string'
subnetMask: 'string'
}
]
javaContainer: 'string'
javaContainerVersion: 'string'
javaVersion: 'string'
limits: {
maxDiskSizeInMb: int
maxMemoryInMb: int
maxPercentageCpu: int
}
linuxFxVersion: 'string'
loadBalancing: 'string'
localMySqlEnabled: bool
logsDirectorySizeLimit: int
managedPipelineMode: 'string'
minTlsVersion: 'string'
netFrameworkVersion: 'string'
nodeVersion: 'string'
numberOfWorkers: int
phpVersion: 'string'
publishingUsername: 'string'
push: {
kind: 'string'
properties: {
dynamicTagsJson: 'string'
isPushEnabled: bool
tagsRequiringAuth: 'string'
tagWhitelistJson: 'string'
}
}
pythonVersion: 'string'
remoteDebuggingEnabled: bool
remoteDebuggingVersion: 'string'
requestTracingEnabled: bool
requestTracingExpirationTime: 'string'
scmType: 'string'
tracingOptions: 'string'
use32BitWorkerProcess: bool
virtualApplications: [
{
physicalPath: 'string'
preloadEnabled: bool
virtualDirectories: [
{
physicalPath: 'string'
virtualPath: 'string'
}
]
virtualPath: 'string'
}
]
vnetName: 'string'
webSocketsEnabled: bool
}
}
Property values
ApiDefinitionInfo
Name | Description | Value |
---|---|---|
url | The URL of the API definition. | string |
ApplicationLogsConfig
Name | Description | Value |
---|---|---|
azureBlobStorage | Application logs to blob storage configuration. | AzureBlobStorageApplicationLogsConfig |
azureTableStorage | Application logs to azure table storage configuration. | AzureTableStorageApplicationLogsConfig |
fileSystem | Application logs to file system configuration. | FileSystemApplicationLogsConfig |
AutoHealActions
Name | Description | Value |
---|---|---|
actionType | Predefined action to be taken. | 'CustomAction' 'LogEvent' 'Recycle' |
customAction | Custom action to be taken. | AutoHealCustomAction |
minProcessExecutionTime | Minimum time the process must execute before taking the action |
string |
AutoHealCustomAction
Name | Description | Value |
---|---|---|
exe | Executable to be run. | string |
parameters | Parameters for the executable. | string |
AutoHealRules
Name | Description | Value |
---|---|---|
actions | Actions to be executed when a rule is triggered. | AutoHealActions |
triggers | Conditions that describe when to execute the auto-heal actions. | AutoHealTriggers |
AutoHealTriggers
Name | Description | Value |
---|---|---|
privateBytesInKB | A rule based on private bytes. | int |
requests | A rule based on total requests. | RequestsBasedTrigger |
slowRequests | A rule based on request execution time. | SlowRequestsBasedTrigger |
statusCodes | A rule based on status codes. | StatusCodesBasedTrigger[] |
AzureBlobStorageApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
retentionInDays | Retention in days. Remove blobs older than X days. 0 or lower means no retention. |
int |
sasUrl | SAS url to a azure blob container with read/write/list/delete permissions. | string |
AzureBlobStorageHttpLogsConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
retentionInDays | Retention in days. Remove blobs older than X days. 0 or lower means no retention. |
int |
sasUrl | SAS url to a azure blob container with read/write/list/delete permissions. | string |
AzureTableStorageApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
sasUrl | SAS URL to an Azure table with add/query/delete permissions. | string (required) |
BackupRequestProperties
Name | Description | Value |
---|---|---|
backupSchedule | Schedule for the backup if it is executed periodically. | BackupSchedule |
databases | Databases included in the backup. | DatabaseBackupSetting[] |
enabled | True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled. | bool |
name | Name of the backup. | string (required) |
storageAccountUrl | SAS URL to the container. | string (required) |
type | Type of the backup. | 'Clone' 'Default' 'Relocation' 'Snapshot' |
BackupSchedule
Name | Description | Value |
---|---|---|
frequencyInterval | How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and FrequencyUnit should be set to Day) | int (required) |
frequencyUnit | The unit of time for how often the backup should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7) | 'Day' 'Hour' (required) |
keepAtLeastOneBackup | True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise. | bool (required) |
retentionPeriodInDays | After how many days backups should be deleted. | int (required) |
startTime | When the schedule should start working. | string |
ConnectionStringDictionaryProperties
Name | Description | Value |
---|
ConnStringInfo
Name | Description | Value |
---|---|---|
connectionString | Connection string value. | string |
name | Name of connection string. | string |
type | Type of database. | 'ApiHub' 'Custom' 'DocDb' 'EventHub' 'MySql' 'NotificationHub' 'PostgreSQL' 'RedisCache' 'ServiceBus' 'SQLAzure' 'SQLServer' |
ConnStringValueTypePair
Name | Description | Value |
---|---|---|
type | Type of database. | 'ApiHub' 'Custom' 'DocDb' 'EventHub' 'MySql' 'NotificationHub' 'PostgreSQL' 'RedisCache' 'ServiceBus' 'SQLAzure' 'SQLServer' (required) |
value | Value of pair. | string (required) |
CorsSettings
Name | Description | Value |
---|---|---|
allowedOrigins | Gets or sets the list of origins that should be allowed to make cross-origin calls (for example: http://example.com:12345). Use "*" to allow all. |
string[] |
DatabaseBackupSetting
Name | Description | Value |
---|---|---|
connectionString | Contains a connection string to a database which is being backed up or restored. If the restore should happen to a new database, the database name inside is the new one. | string |
connectionStringName | Contains a connection string name that is linked to the SiteConfig.ConnectionStrings. This is used during restore with overwrite connection strings options. |
string |
databaseType | Database type (e.g. SqlAzure / MySql). | 'LocalMySql' 'MySql' 'PostgreSql' 'SqlAzure' (required) |
name | string |
EnabledConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
Experiments
Name | Description | Value |
---|---|---|
rampUpRules | List of ramp-up rules. | RampUpRule[] |
FileSystemApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
FileSystemHttpLogsConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
retentionInDays | Retention in days. Remove files older than X days. 0 or lower means no retention. |
int |
retentionInMb | Maximum size in megabytes that http log files can use. When reached old log files will be removed to make space for new ones. Value can range between 25 and 100. |
int Constraints: Min value = 25 Max value = 100 |
HandlerMapping
Name | Description | Value |
---|---|---|
arguments | Command-line arguments to be passed to the script processor. | string |
extension | Requests with this extension will be handled using the specified FastCGI application. | string |
scriptProcessor | The absolute path to the FastCGI application. | string |
HttpLogsConfig
Name | Description | Value |
---|---|---|
azureBlobStorage | Http logs to azure blob storage configuration. | AzureBlobStorageHttpLogsConfig |
fileSystem | Http logs to file system configuration. | FileSystemHttpLogsConfig |
IpSecurityRestriction
Name | Description | Value |
---|---|---|
ipAddress | IP address the security restriction is valid for. | string (required) |
subnetMask | Subnet mask for the range of IP addresses the restriction is valid for. | string |
microsoft.web/sites/config
Name | Description | Value |
---|---|---|
name | Set to 'appsettings' for type Microsoft.Web/sites/config. Set to 'authsettings' for type Microsoft.Web/sites/config. Set to 'backup' for type Microsoft.Web/sites/config. Set to 'connectionstrings' for type Microsoft.Web/sites/config. Set to 'logs' for type Microsoft.Web/sites/config. Set to 'metadata' for type Microsoft.Web/sites/config. Set to 'pushsettings' for type Microsoft.Web/sites/config. Set to 'slotConfigNames' for type Microsoft.Web/sites/config. Set to 'web' for type Microsoft.Web/sites/config. | 'appsettings' 'authsettings' 'backup' 'connectionstrings' 'logs' 'metadata' 'pushsettings' 'slotConfigNames' 'web' (required) |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'appsettings' (required) |
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 | Settings. | StringDictionaryProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'authsettings' (required) |
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 | SiteAuthSettings resource specific properties | SiteAuthSettingsProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'backup' (required) |
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 | BackupRequest resource specific properties | BackupRequestProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'connectionstrings' (required) |
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 | Connection strings. | ConnectionStringDictionaryProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'logs' (required) |
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 | SiteLogsConfig resource specific properties | SiteLogsConfigProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'metadata' (required) |
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 | Settings. | StringDictionaryProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'pushsettings' (required) |
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 | PushSettings resource specific properties | PushSettingsProperties |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'slotConfigNames' (required) |
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 | Core resource properties | SlotConfigNames |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'web' (required) |
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 | Core resource properties | SiteConfig |
NameValuePair
Name | Description | Value |
---|---|---|
name | Pair name. | string |
value | Pair value. | string |
PushSettings
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
properties | PushSettings resource specific properties | PushSettingsProperties |
PushSettingsProperties
Name | Description | Value |
---|---|---|
dynamicTagsJson | Gets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint. | string |
isPushEnabled | Gets or sets a flag indicating whether the Push endpoint is enabled. | bool (required) |
tagsRequiringAuth | Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint. Tags can consist of alphanumeric characters and the following: '_', '@', '#', '.', ':', '-'. Validation should be performed at the PushRequestHandler. |
string |
tagWhitelistJson | Gets or sets a JSON string containing a list of tags that are in the allowed list for use by the push registration endpoint. | string |
RampUpRule
Name | Description | Value |
---|---|---|
actionHostName | Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net. | string |
changeDecisionCallbackUrl | Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified. See TiPCallback site extension for the scaffold and contracts. https://www.siteextensions.net/packages/TiPCallback/ |
string |
changeIntervalInMinutes | Specifies interval in minutes to reevaluate ReroutePercentage. | int |
changeStep | In auto ramp up scenario this is the step to add/remove from <code>ReroutePercentage</code> until it reaches <code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>. Site metrics are checked every N minutes specified in <code>ChangeIntervalInMinutes</code>. Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified in <code>ChangeDecisionCallbackUrl</code>. |
int |
maxReroutePercentage | Specifies upper boundary below which ReroutePercentage will stay. | int |
minReroutePercentage | Specifies lower boundary above which ReroutePercentage will stay. | int |
name | Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment. | string |
reroutePercentage | Percentage of the traffic which will be redirected to <code>ActionHostName</code>. | int |
RequestsBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
timeInterval | Time interval. | string |
SiteAuthSettingsProperties
Name | Description | Value |
---|---|---|
additionalLoginParams | 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[] |
allowedAudiences | Allowed audience values to consider when validating JWTs issued by Azure Active Directory. Note that the <code>ClientID</code> value is always considered an allowed audience, regardless of this setting. |
string[] |
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[] |
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 |
clientSecret | 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 |
string |
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". |
'AzureActiveDirectory' 'Facebook' 'Google' 'MicrosoftAccount' 'Twitter' |
enabled | <code>true</code> if the Authentication / Authorization feature is enabled for the current app; otherwise, <code>false</code>. | bool |
facebookAppId | 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 |
string |
facebookAppSecret | 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 |
string |
facebookOAuthScopes | 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 |
string[] |
googleClientId | 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/ |
string |
googleClientSecret | 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/ |
string |
googleOAuthScopes | 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/ |
string[] |
issuer | 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 |
string |
microsoftAccountClientId | 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 |
string |
microsoftAccountClientSecret | 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 |
string |
microsoftAccountOAuthScopes | 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 |
string[] |
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 |
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 |
tokenStoreEnabled | <code>true</code> to durably store platform-specific security tokens that are obtained during login flows; otherwise, <code>false</code>. The default is <code>false</code>. |
bool |
twitterConsumerKey | 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 |
twitterConsumerSecret | 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 |
string |
unauthenticatedClientAction | The action to take when an unauthenticated client attempts to access the app. | 'AllowAnonymous' 'RedirectToLoginPage' |
SiteConfig
Name | Description | Value |
---|---|---|
alwaysOn | <code>true</code> if Always On is enabled; otherwise, <code>false</code>. | bool |
apiDefinition | Information about the formal API definition for the app. | ApiDefinitionInfo |
appCommandLine | App command line to launch. | string |
appSettings | Application settings. | NameValuePair[] |
autoHealEnabled | <code>true</code> if Auto Heal is enabled; otherwise, <code>false</code>. | bool |
autoHealRules | Auto Heal rules. | AutoHealRules |
autoSwapSlotName | Auto-swap slot name. | string |
connectionStrings | Connection strings. | ConnStringInfo[] |
cors | Cross-Origin Resource Sharing (CORS) settings. | CorsSettings |
defaultDocuments | Default documents. | string[] |
detailedErrorLoggingEnabled | <code>true</code> if detailed error logging is enabled; otherwise, <code>false</code>. | bool |
documentRoot | Document root. | string |
experiments | This is work around for polymorphic types. | Experiments |
handlerMappings | Handler mappings. | HandlerMapping[] |
http20Enabled | Http20Enabled: configures a web site to allow clients to connect over http2.0 | bool |
httpLoggingEnabled | <code>true</code> if HTTP logging is enabled; otherwise, <code>false</code>. | bool |
ipSecurityRestrictions | IP security restrictions. | IpSecurityRestriction[] |
javaContainer | Java container. | string |
javaContainerVersion | Java container version. | string |
javaVersion | Java version. | string |
limits | Site limits. | SiteLimits |
linuxFxVersion | Linux App Framework and version | string |
loadBalancing | Site load balancing. | 'LeastRequests' 'LeastResponseTime' 'RequestHash' 'WeightedRoundRobin' 'WeightedTotalTraffic' |
localMySqlEnabled | <code>true</code> to enable local MySQL; otherwise, <code>false</code>. | bool |
logsDirectorySizeLimit | HTTP logs directory size limit. | int |
managedPipelineMode | Managed pipeline mode. | 'Classic' 'Integrated' |
minTlsVersion | MinTlsVersion: configures the minimum version of TLS required for SSL requests | '1.0' '1.1' '1.2' |
netFrameworkVersion | .NET Framework version. | string |
nodeVersion | Version of Node.js. | string |
numberOfWorkers | Number of workers. | int |
phpVersion | Version of PHP. | string |
publishingUsername | Publishing user name. | string |
push | Push endpoint settings. | PushSettings |
pythonVersion | Version of Python. | string |
remoteDebuggingEnabled | <code>true</code> if remote debugging is enabled; otherwise, <code>false</code>. | bool |
remoteDebuggingVersion | Remote debugging version. | string |
requestTracingEnabled | <code>true</code> if request tracing is enabled; otherwise, <code>false</code>. | bool |
requestTracingExpirationTime | Request tracing expiration time. | string |
scmType | SCM type. | 'BitbucketGit' 'BitbucketHg' 'CodePlexGit' 'CodePlexHg' 'Dropbox' 'ExternalGit' 'ExternalHg' 'GitHub' 'LocalGit' 'None' 'OneDrive' 'Tfs' 'VSO' |
tracingOptions | Tracing options. | string |
use32BitWorkerProcess | <code>true</code> to use 32-bit worker process; otherwise, <code>false</code>. | bool |
virtualApplications | Virtual applications. | VirtualApplication[] |
vnetName | Virtual Network name. | string |
webSocketsEnabled | <code>true</code> if WebSocket is enabled; otherwise, <code>false</code>. | bool |
SiteLimits
Name | Description | Value |
---|---|---|
maxDiskSizeInMb | Maximum allowed disk size usage in MB. | int |
maxMemoryInMb | Maximum allowed memory usage in MB. | int |
maxPercentageCpu | Maximum allowed CPU usage percentage. | int |
SiteLogsConfigProperties
Name | Description | Value |
---|---|---|
applicationLogs | Application logs configuration. | ApplicationLogsConfig |
detailedErrorMessages | Detailed error messages configuration. | EnabledConfig |
failedRequestsTracing | Failed requests tracing configuration. | EnabledConfig |
httpLogs | HTTP logs configuration. | HttpLogsConfig |
SlotConfigNames
Name | Description | Value |
---|---|---|
appSettingNames | List of application settings names. | string[] |
connectionStringNames | List of connection string names. | string[] |
SlowRequestsBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
timeInterval | Time interval. | string |
timeTaken | Time taken. | string |
StatusCodesBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
status | HTTP status code. | int |
subStatus | Request Sub Status. | int |
timeInterval | Time interval. | string |
win32Status | Win32 error code. | int |
StringDictionaryProperties
Name | Description | Value |
---|
StringDictionaryProperties
Name | Description | Value |
---|
VirtualApplication
Name | Description | Value |
---|---|---|
physicalPath | Physical path. | string |
preloadEnabled | <code>true</code> if preloading is enabled; otherwise, <code>false</code>. | bool |
virtualDirectories | Virtual directories for virtual application. | VirtualDirectory[] |
virtualPath | Virtual path. | string |
VirtualDirectory
Name | Description | Value |
---|---|---|
physicalPath | Physical path. | string |
virtualPath | Path to virtual application. | string |
Quickstart samples
The following quickstart samples deploy this resource type.
Bicep File | Description |
---|---|
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. |
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 |
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. |
Create a Web App plus Redis Cache using a template | This template creates an Azure Web App with Redis cache. |
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. |
Moesif API Analytics and Monetization | The template will log API calls from Azure API Management to Moesif API analytics and monetization platform |
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. |
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. |
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 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 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 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 with Managed Identity, SQL Server and ΑΙ | Simple example to deploy Azure infrastructure for app + data + managed identity + monitoring |
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.
Resource format
To create a Microsoft.Web/sites/config resource, add the following JSON to your template.
{
"name": "string"
// For remaining properties, see microsoft.web/sites/config objects
}
microsoft.web/sites/config objects
Set the name property to specify the type of object.
For appsettings, use:
{
"kind": "string",
"name": "appsettings",
"properties": {
"{customized property}": "string"
}
}
For authsettings, use:
{
"kind": "string",
"name": "authsettings",
"properties": {
"additionalLoginParams": [ "string" ],
"allowedAudiences": [ "string" ],
"allowedExternalRedirectUrls": [ "string" ],
"clientId": "string",
"clientSecret": "string",
"defaultProvider": "string",
"enabled": "bool",
"facebookAppId": "string",
"facebookAppSecret": "string",
"facebookOAuthScopes": [ "string" ],
"googleClientId": "string",
"googleClientSecret": "string",
"googleOAuthScopes": [ "string" ],
"issuer": "string",
"microsoftAccountClientId": "string",
"microsoftAccountClientSecret": "string",
"microsoftAccountOAuthScopes": [ "string" ],
"runtimeVersion": "string",
"tokenRefreshExtensionHours": "int",
"tokenStoreEnabled": "bool",
"twitterConsumerKey": "string",
"twitterConsumerSecret": "string",
"unauthenticatedClientAction": "string"
}
}
For backup, use:
{
"kind": "string",
"name": "backup",
"properties": {
"backupSchedule": {
"frequencyInterval": "int",
"frequencyUnit": "string",
"keepAtLeastOneBackup": "bool",
"retentionPeriodInDays": "int",
"startTime": "string"
},
"databases": [
{
"connectionString": "string",
"connectionStringName": "string",
"databaseType": "string",
"name": "string"
}
],
"enabled": "bool",
"name": "string",
"storageAccountUrl": "string",
"type": "string"
}
}
For connectionstrings, use:
{
"kind": "string",
"name": "connectionstrings",
"properties": {
"{customized property}": {
"type": "string",
"value": "string"
}
}
}
For logs, use:
{
"kind": "string",
"name": "logs",
"properties": {
"applicationLogs": {
"azureBlobStorage": {
"level": "string",
"retentionInDays": "int",
"sasUrl": "string"
},
"azureTableStorage": {
"level": "string",
"sasUrl": "string"
},
"fileSystem": {
"level": "string"
}
},
"detailedErrorMessages": {
"enabled": "bool"
},
"failedRequestsTracing": {
"enabled": "bool"
},
"httpLogs": {
"azureBlobStorage": {
"enabled": "bool",
"retentionInDays": "int",
"sasUrl": "string"
},
"fileSystem": {
"enabled": "bool",
"retentionInDays": "int",
"retentionInMb": "int"
}
}
}
}
For metadata, use:
{
"kind": "string",
"name": "metadata",
"properties": {
"{customized property}": "string"
}
}
For pushsettings, use:
{
"kind": "string",
"name": "pushsettings",
"properties": {
"dynamicTagsJson": "string",
"isPushEnabled": "bool",
"tagsRequiringAuth": "string",
"tagWhitelistJson": "string"
}
}
For slotConfigNames, use:
{
"kind": "string",
"name": "slotConfigNames",
"properties": {
"appSettingNames": [ "string" ],
"connectionStringNames": [ "string" ]
}
}
For web, use:
{
"kind": "string",
"name": "web",
"properties": {
"alwaysOn": "bool",
"apiDefinition": {
"url": "string"
},
"appCommandLine": "string",
"appSettings": [
{
"name": "string",
"value": "string"
}
],
"autoHealEnabled": "bool",
"autoHealRules": {
"actions": {
"actionType": "string",
"customAction": {
"exe": "string",
"parameters": "string"
},
"minProcessExecutionTime": "string"
},
"triggers": {
"privateBytesInKB": "int",
"requests": {
"count": "int",
"timeInterval": "string"
},
"slowRequests": {
"count": "int",
"timeInterval": "string",
"timeTaken": "string"
},
"statusCodes": [
{
"count": "int",
"status": "int",
"subStatus": "int",
"timeInterval": "string",
"win32Status": "int"
}
]
}
},
"autoSwapSlotName": "string",
"connectionStrings": [
{
"connectionString": "string",
"name": "string",
"type": "string"
}
],
"cors": {
"allowedOrigins": [ "string" ]
},
"defaultDocuments": [ "string" ],
"detailedErrorLoggingEnabled": "bool",
"documentRoot": "string",
"experiments": {
"rampUpRules": [
{
"actionHostName": "string",
"changeDecisionCallbackUrl": "string",
"changeIntervalInMinutes": "int",
"changeStep": "int",
"maxReroutePercentage": "int",
"minReroutePercentage": "int",
"name": "string",
"reroutePercentage": "int"
}
]
},
"handlerMappings": [
{
"arguments": "string",
"extension": "string",
"scriptProcessor": "string"
}
],
"http20Enabled": "bool",
"httpLoggingEnabled": "bool",
"ipSecurityRestrictions": [
{
"ipAddress": "string",
"subnetMask": "string"
}
],
"javaContainer": "string",
"javaContainerVersion": "string",
"javaVersion": "string",
"limits": {
"maxDiskSizeInMb": "int",
"maxMemoryInMb": "int",
"maxPercentageCpu": "int"
},
"linuxFxVersion": "string",
"loadBalancing": "string",
"localMySqlEnabled": "bool",
"logsDirectorySizeLimit": "int",
"managedPipelineMode": "string",
"minTlsVersion": "string",
"netFrameworkVersion": "string",
"nodeVersion": "string",
"numberOfWorkers": "int",
"phpVersion": "string",
"publishingUsername": "string",
"push": {
"kind": "string",
"properties": {
"dynamicTagsJson": "string",
"isPushEnabled": "bool",
"tagsRequiringAuth": "string",
"tagWhitelistJson": "string"
}
},
"pythonVersion": "string",
"remoteDebuggingEnabled": "bool",
"remoteDebuggingVersion": "string",
"requestTracingEnabled": "bool",
"requestTracingExpirationTime": "string",
"scmType": "string",
"tracingOptions": "string",
"use32BitWorkerProcess": "bool",
"virtualApplications": [
{
"physicalPath": "string",
"preloadEnabled": "bool",
"virtualDirectories": [
{
"physicalPath": "string",
"virtualPath": "string"
}
],
"virtualPath": "string"
}
],
"vnetName": "string",
"webSocketsEnabled": "bool"
}
}
Property values
ApiDefinitionInfo
Name | Description | Value |
---|---|---|
url | The URL of the API definition. | string |
ApplicationLogsConfig
Name | Description | Value |
---|---|---|
azureBlobStorage | Application logs to blob storage configuration. | AzureBlobStorageApplicationLogsConfig |
azureTableStorage | Application logs to azure table storage configuration. | AzureTableStorageApplicationLogsConfig |
fileSystem | Application logs to file system configuration. | FileSystemApplicationLogsConfig |
AutoHealActions
Name | Description | Value |
---|---|---|
actionType | Predefined action to be taken. | 'CustomAction' 'LogEvent' 'Recycle' |
customAction | Custom action to be taken. | AutoHealCustomAction |
minProcessExecutionTime | Minimum time the process must execute before taking the action |
string |
AutoHealCustomAction
Name | Description | Value |
---|---|---|
exe | Executable to be run. | string |
parameters | Parameters for the executable. | string |
AutoHealRules
Name | Description | Value |
---|---|---|
actions | Actions to be executed when a rule is triggered. | AutoHealActions |
triggers | Conditions that describe when to execute the auto-heal actions. | AutoHealTriggers |
AutoHealTriggers
Name | Description | Value |
---|---|---|
privateBytesInKB | A rule based on private bytes. | int |
requests | A rule based on total requests. | RequestsBasedTrigger |
slowRequests | A rule based on request execution time. | SlowRequestsBasedTrigger |
statusCodes | A rule based on status codes. | StatusCodesBasedTrigger[] |
AzureBlobStorageApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
retentionInDays | Retention in days. Remove blobs older than X days. 0 or lower means no retention. |
int |
sasUrl | SAS url to a azure blob container with read/write/list/delete permissions. | string |
AzureBlobStorageHttpLogsConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
retentionInDays | Retention in days. Remove blobs older than X days. 0 or lower means no retention. |
int |
sasUrl | SAS url to a azure blob container with read/write/list/delete permissions. | string |
AzureTableStorageApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
sasUrl | SAS URL to an Azure table with add/query/delete permissions. | string (required) |
BackupRequestProperties
Name | Description | Value |
---|---|---|
backupSchedule | Schedule for the backup if it is executed periodically. | BackupSchedule |
databases | Databases included in the backup. | DatabaseBackupSetting[] |
enabled | True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled. | bool |
name | Name of the backup. | string (required) |
storageAccountUrl | SAS URL to the container. | string (required) |
type | Type of the backup. | 'Clone' 'Default' 'Relocation' 'Snapshot' |
BackupSchedule
Name | Description | Value |
---|---|---|
frequencyInterval | How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and FrequencyUnit should be set to Day) | int (required) |
frequencyUnit | The unit of time for how often the backup should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7) | 'Day' 'Hour' (required) |
keepAtLeastOneBackup | True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise. | bool (required) |
retentionPeriodInDays | After how many days backups should be deleted. | int (required) |
startTime | When the schedule should start working. | string |
ConnectionStringDictionaryProperties
Name | Description | Value |
---|
ConnStringInfo
Name | Description | Value |
---|---|---|
connectionString | Connection string value. | string |
name | Name of connection string. | string |
type | Type of database. | 'ApiHub' 'Custom' 'DocDb' 'EventHub' 'MySql' 'NotificationHub' 'PostgreSQL' 'RedisCache' 'ServiceBus' 'SQLAzure' 'SQLServer' |
ConnStringValueTypePair
Name | Description | Value |
---|---|---|
type | Type of database. | 'ApiHub' 'Custom' 'DocDb' 'EventHub' 'MySql' 'NotificationHub' 'PostgreSQL' 'RedisCache' 'ServiceBus' 'SQLAzure' 'SQLServer' (required) |
value | Value of pair. | string (required) |
CorsSettings
Name | Description | Value |
---|---|---|
allowedOrigins | Gets or sets the list of origins that should be allowed to make cross-origin calls (for example: http://example.com:12345). Use "*" to allow all. |
string[] |
DatabaseBackupSetting
Name | Description | Value |
---|---|---|
connectionString | Contains a connection string to a database which is being backed up or restored. If the restore should happen to a new database, the database name inside is the new one. | string |
connectionStringName | Contains a connection string name that is linked to the SiteConfig.ConnectionStrings. This is used during restore with overwrite connection strings options. |
string |
databaseType | Database type (e.g. SqlAzure / MySql). | 'LocalMySql' 'MySql' 'PostgreSql' 'SqlAzure' (required) |
name | string |
EnabledConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
Experiments
Name | Description | Value |
---|---|---|
rampUpRules | List of ramp-up rules. | RampUpRule[] |
FileSystemApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
FileSystemHttpLogsConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
retentionInDays | Retention in days. Remove files older than X days. 0 or lower means no retention. |
int |
retentionInMb | Maximum size in megabytes that http log files can use. When reached old log files will be removed to make space for new ones. Value can range between 25 and 100. |
int Constraints: Min value = 25 Max value = 100 |
HandlerMapping
Name | Description | Value |
---|---|---|
arguments | Command-line arguments to be passed to the script processor. | string |
extension | Requests with this extension will be handled using the specified FastCGI application. | string |
scriptProcessor | The absolute path to the FastCGI application. | string |
HttpLogsConfig
Name | Description | Value |
---|---|---|
azureBlobStorage | Http logs to azure blob storage configuration. | AzureBlobStorageHttpLogsConfig |
fileSystem | Http logs to file system configuration. | FileSystemHttpLogsConfig |
IpSecurityRestriction
Name | Description | Value |
---|---|---|
ipAddress | IP address the security restriction is valid for. | string (required) |
subnetMask | Subnet mask for the range of IP addresses the restriction is valid for. | string |
microsoft.web/sites/config
Name | Description | Value |
---|---|---|
name | Set to 'appsettings' for type Microsoft.Web/sites/config. Set to 'authsettings' for type Microsoft.Web/sites/config. Set to 'backup' for type Microsoft.Web/sites/config. Set to 'connectionstrings' for type Microsoft.Web/sites/config. Set to 'logs' for type Microsoft.Web/sites/config. Set to 'metadata' for type Microsoft.Web/sites/config. Set to 'pushsettings' for type Microsoft.Web/sites/config. Set to 'slotConfigNames' for type Microsoft.Web/sites/config. Set to 'web' for type Microsoft.Web/sites/config. | 'appsettings' 'authsettings' 'backup' 'connectionstrings' 'logs' 'metadata' 'pushsettings' 'slotConfigNames' 'web' (required) |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'appsettings' (required) |
properties | Settings. | StringDictionaryProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'authsettings' (required) |
properties | SiteAuthSettings resource specific properties | SiteAuthSettingsProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'backup' (required) |
properties | BackupRequest resource specific properties | BackupRequestProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'connectionstrings' (required) |
properties | Connection strings. | ConnectionStringDictionaryProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'logs' (required) |
properties | SiteLogsConfig resource specific properties | SiteLogsConfigProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'metadata' (required) |
properties | Settings. | StringDictionaryProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'pushsettings' (required) |
properties | PushSettings resource specific properties | PushSettingsProperties |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'slotConfigNames' (required) |
properties | Core resource properties | SlotConfigNames |
type | The resource type | 'Microsoft.Web/sites/config' |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2016-08-01' |
kind | Kind of resource. | string |
name | The resource name | 'web' (required) |
properties | Core resource properties | SiteConfig |
type | The resource type | 'Microsoft.Web/sites/config' |
NameValuePair
Name | Description | Value |
---|---|---|
name | Pair name. | string |
value | Pair value. | string |
PushSettings
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
properties | PushSettings resource specific properties | PushSettingsProperties |
PushSettingsProperties
Name | Description | Value |
---|---|---|
dynamicTagsJson | Gets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint. | string |
isPushEnabled | Gets or sets a flag indicating whether the Push endpoint is enabled. | bool (required) |
tagsRequiringAuth | Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint. Tags can consist of alphanumeric characters and the following: '_', '@', '#', '.', ':', '-'. Validation should be performed at the PushRequestHandler. |
string |
tagWhitelistJson | Gets or sets a JSON string containing a list of tags that are in the allowed list for use by the push registration endpoint. | string |
RampUpRule
Name | Description | Value |
---|---|---|
actionHostName | Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net. | string |
changeDecisionCallbackUrl | Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified. See TiPCallback site extension for the scaffold and contracts. https://www.siteextensions.net/packages/TiPCallback/ |
string |
changeIntervalInMinutes | Specifies interval in minutes to reevaluate ReroutePercentage. | int |
changeStep | In auto ramp up scenario this is the step to add/remove from <code>ReroutePercentage</code> until it reaches <code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>. Site metrics are checked every N minutes specified in <code>ChangeIntervalInMinutes</code>. Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified in <code>ChangeDecisionCallbackUrl</code>. |
int |
maxReroutePercentage | Specifies upper boundary below which ReroutePercentage will stay. | int |
minReroutePercentage | Specifies lower boundary above which ReroutePercentage will stay. | int |
name | Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment. | string |
reroutePercentage | Percentage of the traffic which will be redirected to <code>ActionHostName</code>. | int |
RequestsBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
timeInterval | Time interval. | string |
SiteAuthSettingsProperties
Name | Description | Value |
---|---|---|
additionalLoginParams | 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[] |
allowedAudiences | Allowed audience values to consider when validating JWTs issued by Azure Active Directory. Note that the <code>ClientID</code> value is always considered an allowed audience, regardless of this setting. |
string[] |
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[] |
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 |
clientSecret | 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 |
string |
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". |
'AzureActiveDirectory' 'Facebook' 'Google' 'MicrosoftAccount' 'Twitter' |
enabled | <code>true</code> if the Authentication / Authorization feature is enabled for the current app; otherwise, <code>false</code>. | bool |
facebookAppId | 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 |
string |
facebookAppSecret | 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 |
string |
facebookOAuthScopes | 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 |
string[] |
googleClientId | 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/ |
string |
googleClientSecret | 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/ |
string |
googleOAuthScopes | 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/ |
string[] |
issuer | 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 |
string |
microsoftAccountClientId | 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 |
string |
microsoftAccountClientSecret | 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 |
string |
microsoftAccountOAuthScopes | 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 |
string[] |
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 |
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 |
tokenStoreEnabled | <code>true</code> to durably store platform-specific security tokens that are obtained during login flows; otherwise, <code>false</code>. The default is <code>false</code>. |
bool |
twitterConsumerKey | 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 |
twitterConsumerSecret | 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 |
string |
unauthenticatedClientAction | The action to take when an unauthenticated client attempts to access the app. | 'AllowAnonymous' 'RedirectToLoginPage' |
SiteConfig
Name | Description | Value |
---|---|---|
alwaysOn | <code>true</code> if Always On is enabled; otherwise, <code>false</code>. | bool |
apiDefinition | Information about the formal API definition for the app. | ApiDefinitionInfo |
appCommandLine | App command line to launch. | string |
appSettings | Application settings. | NameValuePair[] |
autoHealEnabled | <code>true</code> if Auto Heal is enabled; otherwise, <code>false</code>. | bool |
autoHealRules | Auto Heal rules. | AutoHealRules |
autoSwapSlotName | Auto-swap slot name. | string |
connectionStrings | Connection strings. | ConnStringInfo[] |
cors | Cross-Origin Resource Sharing (CORS) settings. | CorsSettings |
defaultDocuments | Default documents. | string[] |
detailedErrorLoggingEnabled | <code>true</code> if detailed error logging is enabled; otherwise, <code>false</code>. | bool |
documentRoot | Document root. | string |
experiments | This is work around for polymorphic types. | Experiments |
handlerMappings | Handler mappings. | HandlerMapping[] |
http20Enabled | Http20Enabled: configures a web site to allow clients to connect over http2.0 | bool |
httpLoggingEnabled | <code>true</code> if HTTP logging is enabled; otherwise, <code>false</code>. | bool |
ipSecurityRestrictions | IP security restrictions. | IpSecurityRestriction[] |
javaContainer | Java container. | string |
javaContainerVersion | Java container version. | string |
javaVersion | Java version. | string |
limits | Site limits. | SiteLimits |
linuxFxVersion | Linux App Framework and version | string |
loadBalancing | Site load balancing. | 'LeastRequests' 'LeastResponseTime' 'RequestHash' 'WeightedRoundRobin' 'WeightedTotalTraffic' |
localMySqlEnabled | <code>true</code> to enable local MySQL; otherwise, <code>false</code>. | bool |
logsDirectorySizeLimit | HTTP logs directory size limit. | int |
managedPipelineMode | Managed pipeline mode. | 'Classic' 'Integrated' |
minTlsVersion | MinTlsVersion: configures the minimum version of TLS required for SSL requests | '1.0' '1.1' '1.2' |
netFrameworkVersion | .NET Framework version. | string |
nodeVersion | Version of Node.js. | string |
numberOfWorkers | Number of workers. | int |
phpVersion | Version of PHP. | string |
publishingUsername | Publishing user name. | string |
push | Push endpoint settings. | PushSettings |
pythonVersion | Version of Python. | string |
remoteDebuggingEnabled | <code>true</code> if remote debugging is enabled; otherwise, <code>false</code>. | bool |
remoteDebuggingVersion | Remote debugging version. | string |
requestTracingEnabled | <code>true</code> if request tracing is enabled; otherwise, <code>false</code>. | bool |
requestTracingExpirationTime | Request tracing expiration time. | string |
scmType | SCM type. | 'BitbucketGit' 'BitbucketHg' 'CodePlexGit' 'CodePlexHg' 'Dropbox' 'ExternalGit' 'ExternalHg' 'GitHub' 'LocalGit' 'None' 'OneDrive' 'Tfs' 'VSO' |
tracingOptions | Tracing options. | string |
use32BitWorkerProcess | <code>true</code> to use 32-bit worker process; otherwise, <code>false</code>. | bool |
virtualApplications | Virtual applications. | VirtualApplication[] |
vnetName | Virtual Network name. | string |
webSocketsEnabled | <code>true</code> if WebSocket is enabled; otherwise, <code>false</code>. | bool |
SiteLimits
Name | Description | Value |
---|---|---|
maxDiskSizeInMb | Maximum allowed disk size usage in MB. | int |
maxMemoryInMb | Maximum allowed memory usage in MB. | int |
maxPercentageCpu | Maximum allowed CPU usage percentage. | int |
SiteLogsConfigProperties
Name | Description | Value |
---|---|---|
applicationLogs | Application logs configuration. | ApplicationLogsConfig |
detailedErrorMessages | Detailed error messages configuration. | EnabledConfig |
failedRequestsTracing | Failed requests tracing configuration. | EnabledConfig |
httpLogs | HTTP logs configuration. | HttpLogsConfig |
SlotConfigNames
Name | Description | Value |
---|---|---|
appSettingNames | List of application settings names. | string[] |
connectionStringNames | List of connection string names. | string[] |
SlowRequestsBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
timeInterval | Time interval. | string |
timeTaken | Time taken. | string |
StatusCodesBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
status | HTTP status code. | int |
subStatus | Request Sub Status. | int |
timeInterval | Time interval. | string |
win32Status | Win32 error code. | int |
StringDictionaryProperties
Name | Description | Value |
---|
StringDictionaryProperties
Name | Description | Value |
---|
VirtualApplication
Name | Description | Value |
---|---|---|
physicalPath | Physical path. | string |
preloadEnabled | <code>true</code> if preloading is enabled; otherwise, <code>false</code>. | bool |
virtualDirectories | Virtual directories for virtual application. | VirtualDirectory[] |
virtualPath | Virtual path. | string |
VirtualDirectory
Name | Description | Value |
---|---|---|
physicalPath | Physical path. | string |
virtualPath | Path to virtual application. | string |
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
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. |
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. |
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 |
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. |
Create a Web App plus Redis Cache using a template |
This template creates an Azure Web App with Redis cache. |
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. |
Moesif API Analytics and Monetization |
The template will log API calls from Azure API Management to Moesif API analytics and monetization platform |
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. |
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. |
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 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 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 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 with custom Deployment slots |
This template provides an easy way to deploy a web app with custom deployment slots on Azure Web Apps. |
Web App with Managed Identity, SQL Server and ΑΙ |
Simple example to deploy Azure infrastructure for app + data + managed identity + monitoring |
Web App with Private Endpoint |
This template allows you to create a Web App and expose it through Private Endpoint |
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.
Resource format
To create a Microsoft.Web/sites/config resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
name = "string"
// For remaining properties, see microsoft.web/sites/config objects
}
microsoft.web/sites/config objects
Set the name property to specify the type of object.
For appsettings, use:
{
kind = "string"
name = "appsettings"
properties = {
{customized property} = "string"
}
}
For authsettings, use:
{
kind = "string"
name = "authsettings"
properties = {
additionalLoginParams = [
"string"
]
allowedAudiences = [
"string"
]
allowedExternalRedirectUrls = [
"string"
]
clientId = "string"
clientSecret = "string"
defaultProvider = "string"
enabled = bool
facebookAppId = "string"
facebookAppSecret = "string"
facebookOAuthScopes = [
"string"
]
googleClientId = "string"
googleClientSecret = "string"
googleOAuthScopes = [
"string"
]
issuer = "string"
microsoftAccountClientId = "string"
microsoftAccountClientSecret = "string"
microsoftAccountOAuthScopes = [
"string"
]
runtimeVersion = "string"
tokenRefreshExtensionHours = int
tokenStoreEnabled = bool
twitterConsumerKey = "string"
twitterConsumerSecret = "string"
unauthenticatedClientAction = "string"
}
}
For backup, use:
{
kind = "string"
name = "backup"
properties = {
backupSchedule = {
frequencyInterval = int
frequencyUnit = "string"
keepAtLeastOneBackup = bool
retentionPeriodInDays = int
startTime = "string"
}
databases = [
{
connectionString = "string"
connectionStringName = "string"
databaseType = "string"
name = "string"
}
]
enabled = bool
name = "string"
storageAccountUrl = "string"
type = "string"
}
}
For connectionstrings, use:
{
kind = "string"
name = "connectionstrings"
properties = {
{customized property} = {
type = "string"
value = "string"
}
}
}
For logs, use:
{
kind = "string"
name = "logs"
properties = {
applicationLogs = {
azureBlobStorage = {
level = "string"
retentionInDays = int
sasUrl = "string"
}
azureTableStorage = {
level = "string"
sasUrl = "string"
}
fileSystem = {
level = "string"
}
}
detailedErrorMessages = {
enabled = bool
}
failedRequestsTracing = {
enabled = bool
}
httpLogs = {
azureBlobStorage = {
enabled = bool
retentionInDays = int
sasUrl = "string"
}
fileSystem = {
enabled = bool
retentionInDays = int
retentionInMb = int
}
}
}
}
For metadata, use:
{
kind = "string"
name = "metadata"
properties = {
{customized property} = "string"
}
}
For pushsettings, use:
{
kind = "string"
name = "pushsettings"
properties = {
dynamicTagsJson = "string"
isPushEnabled = bool
tagsRequiringAuth = "string"
tagWhitelistJson = "string"
}
}
For slotConfigNames, use:
{
kind = "string"
name = "slotConfigNames"
properties = {
appSettingNames = [
"string"
]
connectionStringNames = [
"string"
]
}
}
For web, use:
{
kind = "string"
name = "web"
properties = {
alwaysOn = bool
apiDefinition = {
url = "string"
}
appCommandLine = "string"
appSettings = [
{
name = "string"
value = "string"
}
]
autoHealEnabled = bool
autoHealRules = {
actions = {
actionType = "string"
customAction = {
exe = "string"
parameters = "string"
}
minProcessExecutionTime = "string"
}
triggers = {
privateBytesInKB = int
requests = {
count = int
timeInterval = "string"
}
slowRequests = {
count = int
timeInterval = "string"
timeTaken = "string"
}
statusCodes = [
{
count = int
status = int
subStatus = int
timeInterval = "string"
win32Status = int
}
]
}
}
autoSwapSlotName = "string"
connectionStrings = [
{
connectionString = "string"
name = "string"
type = "string"
}
]
cors = {
allowedOrigins = [
"string"
]
}
defaultDocuments = [
"string"
]
detailedErrorLoggingEnabled = bool
documentRoot = "string"
experiments = {
rampUpRules = [
{
actionHostName = "string"
changeDecisionCallbackUrl = "string"
changeIntervalInMinutes = int
changeStep = int
maxReroutePercentage = int
minReroutePercentage = int
name = "string"
reroutePercentage = int
}
]
}
handlerMappings = [
{
arguments = "string"
extension = "string"
scriptProcessor = "string"
}
]
http20Enabled = bool
httpLoggingEnabled = bool
ipSecurityRestrictions = [
{
ipAddress = "string"
subnetMask = "string"
}
]
javaContainer = "string"
javaContainerVersion = "string"
javaVersion = "string"
limits = {
maxDiskSizeInMb = int
maxMemoryInMb = int
maxPercentageCpu = int
}
linuxFxVersion = "string"
loadBalancing = "string"
localMySqlEnabled = bool
logsDirectorySizeLimit = int
managedPipelineMode = "string"
minTlsVersion = "string"
netFrameworkVersion = "string"
nodeVersion = "string"
numberOfWorkers = int
phpVersion = "string"
publishingUsername = "string"
push = {
kind = "string"
properties = {
dynamicTagsJson = "string"
isPushEnabled = bool
tagsRequiringAuth = "string"
tagWhitelistJson = "string"
}
}
pythonVersion = "string"
remoteDebuggingEnabled = bool
remoteDebuggingVersion = "string"
requestTracingEnabled = bool
requestTracingExpirationTime = "string"
scmType = "string"
tracingOptions = "string"
use32BitWorkerProcess = bool
virtualApplications = [
{
physicalPath = "string"
preloadEnabled = bool
virtualDirectories = [
{
physicalPath = "string"
virtualPath = "string"
}
]
virtualPath = "string"
}
]
vnetName = "string"
webSocketsEnabled = bool
}
}
Property values
ApiDefinitionInfo
Name | Description | Value |
---|---|---|
url | The URL of the API definition. | string |
ApplicationLogsConfig
Name | Description | Value |
---|---|---|
azureBlobStorage | Application logs to blob storage configuration. | AzureBlobStorageApplicationLogsConfig |
azureTableStorage | Application logs to azure table storage configuration. | AzureTableStorageApplicationLogsConfig |
fileSystem | Application logs to file system configuration. | FileSystemApplicationLogsConfig |
AutoHealActions
Name | Description | Value |
---|---|---|
actionType | Predefined action to be taken. | 'CustomAction' 'LogEvent' 'Recycle' |
customAction | Custom action to be taken. | AutoHealCustomAction |
minProcessExecutionTime | Minimum time the process must execute before taking the action |
string |
AutoHealCustomAction
Name | Description | Value |
---|---|---|
exe | Executable to be run. | string |
parameters | Parameters for the executable. | string |
AutoHealRules
Name | Description | Value |
---|---|---|
actions | Actions to be executed when a rule is triggered. | AutoHealActions |
triggers | Conditions that describe when to execute the auto-heal actions. | AutoHealTriggers |
AutoHealTriggers
Name | Description | Value |
---|---|---|
privateBytesInKB | A rule based on private bytes. | int |
requests | A rule based on total requests. | RequestsBasedTrigger |
slowRequests | A rule based on request execution time. | SlowRequestsBasedTrigger |
statusCodes | A rule based on status codes. | StatusCodesBasedTrigger[] |
AzureBlobStorageApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
retentionInDays | Retention in days. Remove blobs older than X days. 0 or lower means no retention. |
int |
sasUrl | SAS url to a azure blob container with read/write/list/delete permissions. | string |
AzureBlobStorageHttpLogsConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
retentionInDays | Retention in days. Remove blobs older than X days. 0 or lower means no retention. |
int |
sasUrl | SAS url to a azure blob container with read/write/list/delete permissions. | string |
AzureTableStorageApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
sasUrl | SAS URL to an Azure table with add/query/delete permissions. | string (required) |
BackupRequestProperties
Name | Description | Value |
---|---|---|
backupSchedule | Schedule for the backup if it is executed periodically. | BackupSchedule |
databases | Databases included in the backup. | DatabaseBackupSetting[] |
enabled | True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled. | bool |
name | Name of the backup. | string (required) |
storageAccountUrl | SAS URL to the container. | string (required) |
type | Type of the backup. | 'Clone' 'Default' 'Relocation' 'Snapshot' |
BackupSchedule
Name | Description | Value |
---|---|---|
frequencyInterval | How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and FrequencyUnit should be set to Day) | int (required) |
frequencyUnit | The unit of time for how often the backup should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7) | 'Day' 'Hour' (required) |
keepAtLeastOneBackup | True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise. | bool (required) |
retentionPeriodInDays | After how many days backups should be deleted. | int (required) |
startTime | When the schedule should start working. | string |
ConnectionStringDictionaryProperties
Name | Description | Value |
---|
ConnStringInfo
Name | Description | Value |
---|---|---|
connectionString | Connection string value. | string |
name | Name of connection string. | string |
type | Type of database. | 'ApiHub' 'Custom' 'DocDb' 'EventHub' 'MySql' 'NotificationHub' 'PostgreSQL' 'RedisCache' 'ServiceBus' 'SQLAzure' 'SQLServer' |
ConnStringValueTypePair
Name | Description | Value |
---|---|---|
type | Type of database. | 'ApiHub' 'Custom' 'DocDb' 'EventHub' 'MySql' 'NotificationHub' 'PostgreSQL' 'RedisCache' 'ServiceBus' 'SQLAzure' 'SQLServer' (required) |
value | Value of pair. | string (required) |
CorsSettings
Name | Description | Value |
---|---|---|
allowedOrigins | Gets or sets the list of origins that should be allowed to make cross-origin calls (for example: http://example.com:12345). Use "*" to allow all. |
string[] |
DatabaseBackupSetting
Name | Description | Value |
---|---|---|
connectionString | Contains a connection string to a database which is being backed up or restored. If the restore should happen to a new database, the database name inside is the new one. | string |
connectionStringName | Contains a connection string name that is linked to the SiteConfig.ConnectionStrings. This is used during restore with overwrite connection strings options. |
string |
databaseType | Database type (e.g. SqlAzure / MySql). | 'LocalMySql' 'MySql' 'PostgreSql' 'SqlAzure' (required) |
name | string |
EnabledConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
Experiments
Name | Description | Value |
---|---|---|
rampUpRules | List of ramp-up rules. | RampUpRule[] |
FileSystemApplicationLogsConfig
Name | Description | Value |
---|---|---|
level | Log level. | 'Error' 'Information' 'Off' 'Verbose' 'Warning' |
FileSystemHttpLogsConfig
Name | Description | Value |
---|---|---|
enabled | True if configuration is enabled, false if it is disabled and null if configuration is not set. | bool |
retentionInDays | Retention in days. Remove files older than X days. 0 or lower means no retention. |
int |
retentionInMb | Maximum size in megabytes that http log files can use. When reached old log files will be removed to make space for new ones. Value can range between 25 and 100. |
int Constraints: Min value = 25 Max value = 100 |
HandlerMapping
Name | Description | Value |
---|---|---|
arguments | Command-line arguments to be passed to the script processor. | string |
extension | Requests with this extension will be handled using the specified FastCGI application. | string |
scriptProcessor | The absolute path to the FastCGI application. | string |
HttpLogsConfig
Name | Description | Value |
---|---|---|
azureBlobStorage | Http logs to azure blob storage configuration. | AzureBlobStorageHttpLogsConfig |
fileSystem | Http logs to file system configuration. | FileSystemHttpLogsConfig |
IpSecurityRestriction
Name | Description | Value |
---|---|---|
ipAddress | IP address the security restriction is valid for. | string (required) |
subnetMask | Subnet mask for the range of IP addresses the restriction is valid for. | string |
microsoft.web/sites/config
Name | Description | Value |
---|---|---|
name | Set to 'appsettings' for type Microsoft.Web/sites/config. Set to 'authsettings' for type Microsoft.Web/sites/config. Set to 'backup' for type Microsoft.Web/sites/config. Set to 'connectionstrings' for type Microsoft.Web/sites/config. Set to 'logs' for type Microsoft.Web/sites/config. Set to 'metadata' for type Microsoft.Web/sites/config. Set to 'pushsettings' for type Microsoft.Web/sites/config. Set to 'slotConfigNames' for type Microsoft.Web/sites/config. Set to 'web' for type Microsoft.Web/sites/config. | 'appsettings' 'authsettings' 'backup' 'connectionstrings' 'logs' 'metadata' 'pushsettings' 'slotConfigNames' 'web' (required) |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'appsettings' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | Settings. | StringDictionaryProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'authsettings' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | SiteAuthSettings resource specific properties | SiteAuthSettingsProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'backup' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | BackupRequest resource specific properties | BackupRequestProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'connectionstrings' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | Connection strings. | ConnectionStringDictionaryProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'logs' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | SiteLogsConfig resource specific properties | SiteLogsConfigProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'metadata' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | Settings. | StringDictionaryProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'pushsettings' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | PushSettings resource specific properties | PushSettingsProperties |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'slotConfigNames' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | Core resource properties | SlotConfigNames |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
Microsoft.Web/sites/config
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
name | The resource name | 'web' (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: sites |
properties | Core resource properties | SiteConfig |
type | The resource type | "Microsoft.Web/sites/config@2016-08-01" |
NameValuePair
Name | Description | Value |
---|---|---|
name | Pair name. | string |
value | Pair value. | string |
PushSettings
Name | Description | Value |
---|---|---|
kind | Kind of resource. | string |
properties | PushSettings resource specific properties | PushSettingsProperties |
PushSettingsProperties
Name | Description | Value |
---|---|---|
dynamicTagsJson | Gets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint. | string |
isPushEnabled | Gets or sets a flag indicating whether the Push endpoint is enabled. | bool (required) |
tagsRequiringAuth | Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint. Tags can consist of alphanumeric characters and the following: '_', '@', '#', '.', ':', '-'. Validation should be performed at the PushRequestHandler. |
string |
tagWhitelistJson | Gets or sets a JSON string containing a list of tags that are in the allowed list for use by the push registration endpoint. | string |
RampUpRule
Name | Description | Value |
---|---|---|
actionHostName | Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net. | string |
changeDecisionCallbackUrl | Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified. See TiPCallback site extension for the scaffold and contracts. https://www.siteextensions.net/packages/TiPCallback/ |
string |
changeIntervalInMinutes | Specifies interval in minutes to reevaluate ReroutePercentage. | int |
changeStep | In auto ramp up scenario this is the step to add/remove from <code>ReroutePercentage</code> until it reaches <code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>. Site metrics are checked every N minutes specified in <code>ChangeIntervalInMinutes</code>. Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified in <code>ChangeDecisionCallbackUrl</code>. |
int |
maxReroutePercentage | Specifies upper boundary below which ReroutePercentage will stay. | int |
minReroutePercentage | Specifies lower boundary above which ReroutePercentage will stay. | int |
name | Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment. | string |
reroutePercentage | Percentage of the traffic which will be redirected to <code>ActionHostName</code>. | int |
RequestsBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
timeInterval | Time interval. | string |
SiteAuthSettingsProperties
Name | Description | Value |
---|---|---|
additionalLoginParams | 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[] |
allowedAudiences | Allowed audience values to consider when validating JWTs issued by Azure Active Directory. Note that the <code>ClientID</code> value is always considered an allowed audience, regardless of this setting. |
string[] |
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[] |
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 |
clientSecret | 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 |
string |
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". |
'AzureActiveDirectory' 'Facebook' 'Google' 'MicrosoftAccount' 'Twitter' |
enabled | <code>true</code> if the Authentication / Authorization feature is enabled for the current app; otherwise, <code>false</code>. | bool |
facebookAppId | 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 |
string |
facebookAppSecret | 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 |
string |
facebookOAuthScopes | 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 |
string[] |
googleClientId | 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/ |
string |
googleClientSecret | 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/ |
string |
googleOAuthScopes | 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/ |
string[] |
issuer | 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 |
string |
microsoftAccountClientId | 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 |
string |
microsoftAccountClientSecret | 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 |
string |
microsoftAccountOAuthScopes | 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 |
string[] |
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 |
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 |
tokenStoreEnabled | <code>true</code> to durably store platform-specific security tokens that are obtained during login flows; otherwise, <code>false</code>. The default is <code>false</code>. |
bool |
twitterConsumerKey | 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 |
twitterConsumerSecret | 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 |
string |
unauthenticatedClientAction | The action to take when an unauthenticated client attempts to access the app. | 'AllowAnonymous' 'RedirectToLoginPage' |
SiteConfig
Name | Description | Value |
---|---|---|
alwaysOn | <code>true</code> if Always On is enabled; otherwise, <code>false</code>. | bool |
apiDefinition | Information about the formal API definition for the app. | ApiDefinitionInfo |
appCommandLine | App command line to launch. | string |
appSettings | Application settings. | NameValuePair[] |
autoHealEnabled | <code>true</code> if Auto Heal is enabled; otherwise, <code>false</code>. | bool |
autoHealRules | Auto Heal rules. | AutoHealRules |
autoSwapSlotName | Auto-swap slot name. | string |
connectionStrings | Connection strings. | ConnStringInfo[] |
cors | Cross-Origin Resource Sharing (CORS) settings. | CorsSettings |
defaultDocuments | Default documents. | string[] |
detailedErrorLoggingEnabled | <code>true</code> if detailed error logging is enabled; otherwise, <code>false</code>. | bool |
documentRoot | Document root. | string |
experiments | This is work around for polymorphic types. | Experiments |
handlerMappings | Handler mappings. | HandlerMapping[] |
http20Enabled | Http20Enabled: configures a web site to allow clients to connect over http2.0 | bool |
httpLoggingEnabled | <code>true</code> if HTTP logging is enabled; otherwise, <code>false</code>. | bool |
ipSecurityRestrictions | IP security restrictions. | IpSecurityRestriction[] |
javaContainer | Java container. | string |
javaContainerVersion | Java container version. | string |
javaVersion | Java version. | string |
limits | Site limits. | SiteLimits |
linuxFxVersion | Linux App Framework and version | string |
loadBalancing | Site load balancing. | 'LeastRequests' 'LeastResponseTime' 'RequestHash' 'WeightedRoundRobin' 'WeightedTotalTraffic' |
localMySqlEnabled | <code>true</code> to enable local MySQL; otherwise, <code>false</code>. | bool |
logsDirectorySizeLimit | HTTP logs directory size limit. | int |
managedPipelineMode | Managed pipeline mode. | 'Classic' 'Integrated' |
minTlsVersion | MinTlsVersion: configures the minimum version of TLS required for SSL requests | '1.0' '1.1' '1.2' |
netFrameworkVersion | .NET Framework version. | string |
nodeVersion | Version of Node.js. | string |
numberOfWorkers | Number of workers. | int |
phpVersion | Version of PHP. | string |
publishingUsername | Publishing user name. | string |
push | Push endpoint settings. | PushSettings |
pythonVersion | Version of Python. | string |
remoteDebuggingEnabled | <code>true</code> if remote debugging is enabled; otherwise, <code>false</code>. | bool |
remoteDebuggingVersion | Remote debugging version. | string |
requestTracingEnabled | <code>true</code> if request tracing is enabled; otherwise, <code>false</code>. | bool |
requestTracingExpirationTime | Request tracing expiration time. | string |
scmType | SCM type. | 'BitbucketGit' 'BitbucketHg' 'CodePlexGit' 'CodePlexHg' 'Dropbox' 'ExternalGit' 'ExternalHg' 'GitHub' 'LocalGit' 'None' 'OneDrive' 'Tfs' 'VSO' |
tracingOptions | Tracing options. | string |
use32BitWorkerProcess | <code>true</code> to use 32-bit worker process; otherwise, <code>false</code>. | bool |
virtualApplications | Virtual applications. | VirtualApplication[] |
vnetName | Virtual Network name. | string |
webSocketsEnabled | <code>true</code> if WebSocket is enabled; otherwise, <code>false</code>. | bool |
SiteLimits
Name | Description | Value |
---|---|---|
maxDiskSizeInMb | Maximum allowed disk size usage in MB. | int |
maxMemoryInMb | Maximum allowed memory usage in MB. | int |
maxPercentageCpu | Maximum allowed CPU usage percentage. | int |
SiteLogsConfigProperties
Name | Description | Value |
---|---|---|
applicationLogs | Application logs configuration. | ApplicationLogsConfig |
detailedErrorMessages | Detailed error messages configuration. | EnabledConfig |
failedRequestsTracing | Failed requests tracing configuration. | EnabledConfig |
httpLogs | HTTP logs configuration. | HttpLogsConfig |
SlotConfigNames
Name | Description | Value |
---|---|---|
appSettingNames | List of application settings names. | string[] |
connectionStringNames | List of connection string names. | string[] |
SlowRequestsBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
timeInterval | Time interval. | string |
timeTaken | Time taken. | string |
StatusCodesBasedTrigger
Name | Description | Value |
---|---|---|
count | Request Count. | int |
status | HTTP status code. | int |
subStatus | Request Sub Status. | int |
timeInterval | Time interval. | string |
win32Status | Win32 error code. | int |
StringDictionaryProperties
Name | Description | Value |
---|
StringDictionaryProperties
Name | Description | Value |
---|
VirtualApplication
Name | Description | Value |
---|---|---|
physicalPath | Physical path. | string |
preloadEnabled | <code>true</code> if preloading is enabled; otherwise, <code>false</code>. | bool |
virtualDirectories | Virtual directories for virtual application. | VirtualDirectory[] |
virtualPath | Virtual path. | string |
VirtualDirectory
Name | Description | Value |
---|---|---|
physicalPath | Physical path. | string |
virtualPath | Path to virtual application. | string |