Azure Logic App Standard
This page shows how to write Terraform and Azure Resource Manager for Logic App Standard and write them securely.
azurerm_logic_app_standard (Terraform)
The Standard in Logic App can be configured in Terraform with the resource name azurerm_logic_app_standard. The following sections describe 1 example of how to use the resource and its parameters.
Example Usage from GitHub
resource "azurerm_logic_app_standard" "default" {
name = "cmpgitopslogicapptf"
location = azurerm_resource_group.default.location
resource_group_name = azurerm_resource_group.default.name
app_service_plan_id = azurerm_app_service_plan.default.id
Parameters
The following arguments are supported:
name- (Required) Specifies the name of the Logic App Changing this forces a new resource to be created.resource_group_name- (Required) The name of the resource group in which to create the Logic Applocation- (Required) Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.app_service_plan_id- (Required) The ID of the App Service Plan within which to create this Logic Appapp_settings- (Optional) A map of key-value pairs for App Settings and custom values.
NOTE: There are a number of application settings that will be managed for you by this resource type and shouldn't be configured separately as part of the app_settings you specify.
AzureWebJobsStorageis filled based onstorage_account_nameandstorage_account_access_key.WEBSITE_CONTENTSHAREis detailed below.FUNCTIONS_EXTENSION_VERSIONis filled based onversion.APP_KINDis set to workflowApp andAzureFunctionsJobHost__extensionBundle__idandAzureFunctionsJobHost__extensionBundle__versionare set as detailed below.
use_extension_bundle- (Optional) Should the logic app use the bundled extension package? If true, then application settings forAzureFunctionsJobHost__extensionBundle__idandAzureFunctionsJobHost__extensionBundle__versionwill be created. Default truebundle_version- (Optional) Ifuse_extension_bundlethen controls the allowed range for bundle versions. Default[1.*, 2.0.0)connection_string- (Optional) Anconnection_stringblock as defined below.client_affinity_enabled- (Optional) Should the Logic App send session affinity cookies, which route client requests in the same session to the same instance?client_certificate_mode- (Optional) The mode of the Logic App's client certificates requirement for incoming requests. Possible values areRequiredandOptional.enabled- (Optional) Is the Logic App enabled?https_only- (Optional) Can the Logic App only be accessed via HTTPS? Defaults tofalse.identity- (Optional) Anidentityblock as defined below.site_config- (Optional) Asite_configobject as defined below.storage_account_name- (Required) The backend storage account name which will be used by this Logic App (e.g. for Stateful workflows data)storage_account_access_key- (Required) The access key which will be used to access the backend storage account for the Logic Appstorage_account_share_name- (Optional) The name of the share used by the logic app, if you want to use a custom name. This corresponds to the WEBSITE_CONTENTSHARE appsetting, which this resource will create for you. If you don't specify a name, then this resource will generate a dynamic name. This setting is useful if you want to provision a storage account and create a share using azurerm_storage_share
Note: When integrating a
CI/CD pipelineand expecting to run from a deployed package inAzureyou must seed yourapp settingsas part of terraform code for Logic App to be successfully deployed.Important Default key pairs: ("WEBSITE_RUN_FROM_PACKAGE" = "","FUNCTIONS_WORKER_RUNTIME" = "node"(or python, etc),"WEBSITE_NODE_DEFAULT_VERSION" = "10.14.1","APPINSIGHTS_INSTRUMENTATIONKEY" = "").
Note: When using an App Service Plan in the
FreeorSharedTiersuse_32_bit_worker_processmust be set totrue.
version- (Optional) The runtime version associated with the Logic App Defaults to~1.tags- (Optional) A mapping of tags to assign to the resource.
connection_string supports the following:
name- (Required) The name of the Connection String.type- (Required) The type of the Connection String. Possible values areAPIHub,Custom,DocDb,EventHub,MySQL,NotificationHub,PostgreSQL,RedisCache,ServiceBus,SQLAzureandSQLServer.value- (Required) The value for the Connection String.
site_config supports the following:
always_on- (Optional) Should the Logic App be loaded at all times? Defaults tofalse.app_scale_limit- (Optional) The number of workers this Logic App can scale out to. Only applicable to apps on the Consumption and Premium plan.cors- (Optional) Acorsblock as defined below.dotnet_framework_version- (Optional) The version of the .net framework's CLR used in this Logic App Possible values arev4.0(including .NET Core 2.1 and 3.1),v5.0andv6.0. For more information on which .net Framework version to use based on the runtime version you're targeting - please see this table. Defaults tov4.0.elastic_instance_minimum- (Optional) The number of minimum instances for this Logic App Only affects apps on the Premium plan.ftps_state- (Optional) State of FTP / FTPS service for this Logic App Possible values include:AllAllowed,FtpsOnlyandDisabled. Defaults toAllAllowed.health_check_path- (Optional) Path which will be checked for this Logic App health.http2_enabled- (Optional) Specifies whether or not the http2 protocol should be enabled. Defaults tofalse.ip_restriction- (Optional) A List of objects representing ip restrictions as defined below.
-> NOTE User has to explicitly set ip_restriction to empty slice ([]) to remove it.
linux_fx_version- (Optional) Linux App Framework and version for the AppService, e.g.DOCKER|(golang:latest). Setting this value will also set thekindof application deployed tofunctionapp,linux,container,workflowappmin_tls_version- (Optional) The minimum supported TLS version for the Logic App Possible values are1.0,1.1, and1.2. Defaults to1.2for new Logic Apps.pre_warmed_instance_count- (Optional) The number of pre-warmed instances for this Logic App Only affects apps on the Premium plan.runtime_scale_monitoring_enabled- (Optional) Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults tofalse.use_32_bit_worker_process- (Optional) Should the Logic App run in 32 bit mode, rather than 64 bit mode? Defaults totrue.
Note: when using an App Service Plan in the
FreeorSharedTiersuse_32_bit_worker_processmust be set totrue.
vnet_route_all_enabled- (Optional) Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.websockets_enabled- (Optional) Should WebSockets be enabled?
A cors block supports the following:
allowed_origins- (Optional) A list of origins which should be able to make cross-origin calls.*can be used to allow all calls.support_credentials- (Optional) Are credentials supported?
An identity block supports the following:
type- (Required) Specifies the identity type of the Logic App Possible values areSystemAssigned(where Azure will generate a Service Principal for you),UserAssignedwhere you can specify the Service Principal IDs in theidentity_idsfield, andSystemAssigned, UserAssignedwhich assigns both a system managed identity as well as the specified user assigned identities.
NOTE: When
typeis set toSystemAssigned, The assignedprincipal_idandtenant_idcan be retrieved after the Logic App has been created. More details are available below.
identity_ids- (Optional) Specifies a list of user managed identity ids to be assigned. Required iftypeisUserAssigned.
A ip_restriction block supports the following:
ip_address- (Optional) The IP Address used for this IP Restriction in CIDR notation.service_tag- (Optional) The Service Tag used for this IP Restriction.virtual_network_subnet_id- (Optional) The Virtual Network Subnet ID used for this IP Restriction.
-> NOTE: One of either ip_address, service_tag or virtual_network_subnet_id must be specified
name- (Optional) The name for this IP Restriction.priority- (Optional) The priority for this IP Restriction. Restrictions are enforced in priority order. By default, the priority is set to 65000 if not specified.action- (Optional) Does this restrictionAlloworDenyaccess for this IP range. Defaults toAllow.headers- (Optional) The headers for this specificip_restrictionas defined below.
A headers block supports the following:
x_azure_fdid- (Optional) A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8.x_fd_health_probe- (Optional) A list to allow the Azure FrontDoor health probe header. Only allowed value is "1".x_forwarded_for- (Optional) A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8x_forwarded_host- (Optional) A list of allowed 'X-Forwarded-Host' domains with a maximum of 8.
The following attributes are exported:
id- The ID of the Logic Appcustom_domain_verification_id- An identifier used by App Service to perform domain ownership verification via DNS TXT record.default_hostname- The default hostname associated with the Logic App - such asmysite.azurewebsites.netoutbound_ip_addresses- A comma separated list of outbound IP addresses - such as52.23.25.3,52.143.43.12possible_outbound_ip_addresses- A comma separated list of outbound IP addresses - such as52.23.25.3,52.143.43.12,52.143.43.17- not all of which are necessarily in use. Superset ofoutbound_ip_addresses.identity- Anidentityblock as defined below, which contains the Managed Service Identity information for this App Service.site_credential- Asite_credentialblock as defined below, which contains the site-level credentials used to publish to this App Service.kind- The Logic App kind - will befunctionapp,workflowapp
The identity block exports the following:
principal_id- The Principal ID for the Service Principal associated with the Managed Service Identity of this App Service.tenant_id- The Tenant ID for the Service Principal associated with the Managed Service Identity of this App Service.
-> You can access the Principal ID via azurerm_app_service.example.identity.0.principal_id and the Tenant ID via azurerm_app_service.example.identity.0.tenant_id
The site_credential block exports the following:
username- The username which can be used to publish to this App Servicepassword- The password associated with the username, which can be used to publish to this App Service.
Explanation in Terraform Registry
Manages a Logic App (Standard / Single Tenant)
Note: To connect an Azure Logic App and a subnet within the same region
azurerm_app_service_virtual_network_swift_connectioncan be used. For an example, check theazurerm_app_service_virtual_network_swift_connectiondocumentation.
Microsoft.Web/sites (Azure Resource Manager)
The sites in Microsoft.Web can be configured in Azure Resource Manager with the resource name Microsoft.Web/sites. The following sections describe how to use the resource and its parameters.
Example Usage from GitHub
"ResourceType": "Microsoft.Web/sites",
"MetricName": "Http5xx",
"Operator": "GreaterThanOrEqual",
"Threshold": "50",
"TimeWindow": "PT5M",
"Aggregation": "Total"
"resourceType": "Microsoft.Web/sites",
"allOf": [
{
"path": "kind",
"regex": "api$"
},
"type": "Microsoft.Web/sites",
"apiVersion": "2018-11-01",
"name": "[parameters('FunctionAppName')]",
"location": "UK South",
"kind": "functionapp",
"properties": {
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"deploymentId": {
"type": "Microsoft.Web/sites",
"name": "[parameters('site_name')]",
"apiVersion": "2016-08-01",
"location": "[resourceGroup().location]",
"scale": null,
"properties": {
"type": "Microsoft.Web/sites",
"apiVersion": "2018-11-01",
"name": "[parameters('sites_chapter4_iac_dockerimage_name')]",
"location": "Central US",
"dependsOn": [
"[resourceId('Microsoft.Web/serverfarms', parameters('serverfarms_ASP_Chapter4RG_ac17_name'))]"
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"infrastructure": {
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"infrastructure": {
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"infrastructure": {
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"infrastructure": {
Parameters
apiVersionrequired - stringextendedLocationoptionalnameoptional - stringName of extended location.
identityoptionaltypeoptional - stringType of managed service identity.
userAssignedIdentitiesoptional - undefinedThe list of user assigned identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}
kindoptional - stringKind of resource.
locationrequired - stringResource Location.
namerequired - stringUnique name of the app to create or update. To create or update a deployment slot, use the {slot} parameter.
propertiesrequiredclientAffinityEnabledoptional - boolean<code>true</code> to enable client affinity; <code>false</code> to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is <code>true</code>.
clientCertEnabledoptional - boolean<code>true</code> to enable client certificate authentication (TLS mutual authentication); otherwise, <code>false</code>. Default is <code>false</code>.
clientCertExclusionPathsoptional - stringclient certificate authentication comma-separated exclusion paths
clientCertModeoptional - stringThis composes with ClientCertEnabled setting.
- ClientCertEnabled: false means ClientCert is ignored.
- ClientCertEnabled: true and ClientCertMode: Required means ClientCert is required.
- ClientCertEnabled: true and ClientCertMode: Optional means ClientCert is optional or accepted.
cloningInfooptionalappSettingsOverridesoptional - stringApplication setting overrides for cloned app. If specified, these settings override the settings cloned from source app. Otherwise, application settings from source app are retained.
cloneCustomHostNamesoptional - boolean<code>true</code> to clone custom hostnames from source app; otherwise, <code>false</code>.
cloneSourceControloptional - boolean<code>true</code> to clone source control from source app; otherwise, <code>false</code>.
configureLoadBalancingoptional - boolean<code>true</code> to configure load balancing for source and destination app.
correlationIdoptional - stringCorrelation ID of cloning operation. This ID ties multiple cloning operations together to use the same snapshot.
hostingEnvironmentoptional - stringApp Service Environment.
overwriteoptional - boolean<code>true</code> to overwrite destination app; otherwise, <code>false</code>.
sourceWebAppIdrequired - stringARM resource ID of the source app. App resource ID is of the form /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots.
sourceWebAppLocationoptional - stringLocation of source app ex: West US or North Europe
trafficManagerProfileIdoptional - stringARM resource ID of the Traffic Manager profile to use, if it exists. Traffic Manager resource ID is of the form /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{profileName}.
trafficManagerProfileNameoptional - stringName of Traffic Manager profile to create. This is only needed if Traffic Manager profile does not already exist.
containerSizeoptional - integerSize of the function container.
customDomainVerificationIdoptional - stringUnique identifier that verifies the custom domains assigned to the app. Customer will add this id to a txt record for verification.
dailyMemoryTimeQuotaoptional - integerMaximum allowed daily memory-time quota (applicable on dynamic apps only).
enabledoptional - boolean<code>true</code> if the app is enabled; otherwise, <code>false</code>. Setting this value to false disables the app (takes the app offline).
hostingEnvironmentProfileoptionalidoptional - stringResource ID of the App Service Environment.
hostNamesDisabledoptional - boolean<code>true</code> to disable the public hostnames of the app; otherwise, <code>false</code>. If <code>true</code>, the app is only accessible via API management process.
hostNameSslStatesoptional arrayhostTypeoptional - stringIndicates whether the hostname is a standard or repository hostname.
nameoptional - stringHostname.
sslStateoptional - stringSSL type.
thumbprintoptional - stringSSL certificate thumbprint.
toUpdateoptional - booleanSet to <code>true</code> to update existing hostname.
virtualIPoptional - stringVirtual IP address assigned to the hostname if IP based SSL is enabled.
httpsOnlyoptional - booleanHttpsOnly: configures a web site to accept only https requests. Issues redirect for http requests
hyperVoptional - booleanHyper-V sandbox.
isXenonoptional - booleanObsolete: Hyper-V sandbox.
keyVaultReferenceIdentityoptional - stringIdentity to use for Key Vault Reference authentication.
redundancyModeoptional - stringSite redundancy mode.
reservedoptional - boolean<code>true</code> if reserved; otherwise, <code>false</code>.
scmSiteAlsoStoppedoptional - boolean<code>true</code> to stop SCM (KUDU) site when the app is stopped; otherwise, <code>false</code>. The default is <code>false</code>.
serverFarmIdoptional - stringResource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
siteConfigoptionalacrUseManagedIdentityCredsoptional - booleanFlag to use Managed Identity Creds for ACR pull
acrUserManagedIdentityIDoptional - stringIf using user managed identity, the user managed identity ClientId
alwaysOnoptional - boolean<code>true</code> if Always On is enabled; otherwise, <code>false</code>.
apiDefinitionoptionalurloptional - stringThe URL of the API definition.
apiManagementConfigoptionalidoptional - stringAPIM-Api Identifier.
appCommandLineoptional - stringApp command line to launch.
appSettingsoptional arraynameoptional - stringPair name.
valueoptional - stringPair value.
autoHealEnabledoptional - boolean<code>true</code> if Auto Heal is enabled; otherwise, <code>false</code>.
autoHealRulesoptionalactionsoptionalactionTypeoptional - stringPredefined action to be taken.
customActionoptionalexeoptional - stringExecutable to be run.
parametersoptional - stringParameters for the executable.
minProcessExecutionTimeoptional - stringMinimum time the process must execute before taking the action
triggersoptionalprivateBytesInKBoptional - integerA rule based on private bytes.
requestsoptionalcountoptional - integerRequest Count.
timeIntervaloptional - stringTime interval.
slowRequestsoptionalcountoptional - integerRequest Count.
pathoptional - stringRequest Path.
timeIntervaloptional - stringTime interval.
timeTakenoptional - stringTime taken.
slowRequestsWithPathoptional arraycountoptional - integerRequest Count.
pathoptional - stringRequest Path.
timeIntervaloptional - stringTime interval.
timeTakenoptional - stringTime taken.
statusCodesoptional arraycountoptional - integerRequest Count.
pathoptional - stringRequest Path
statusoptional - integerHTTP status code.
subStatusoptional - integerRequest Sub Status.
timeIntervaloptional - stringTime interval.
win32Statusoptional - integerWin32 error code.
statusCodesRangeoptional arraycountoptional - integerRequest Count.
pathoptional - stringstatusCodesoptional - stringHTTP status code.
timeIntervaloptional - stringTime interval.
autoSwapSlotNameoptional - stringAuto-swap slot name.
azureStorageAccountsoptional - undefinedList of Azure Storage Accounts.
connectionStringsoptional arrayconnectionStringoptional - stringConnection string value.
nameoptional - stringName of connection string.
typeoptional - stringType of database.
corsoptionalallowedOriginsoptional - arrayGets 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.
supportCredentialsoptional - booleanGets or sets whether CORS requests with credentials are allowed. See https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Requests_with_credentials for more details.
defaultDocumentsoptional - arrayDefault documents.
detailedErrorLoggingEnabledoptional - boolean<code>true</code> if detailed error logging is enabled; otherwise, <code>false</code>.
documentRootoptional - stringDocument root.
experimentsoptionalrampUpRulesoptional arrayactionHostNameoptional - stringHostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net.
changeDecisionCallbackUrloptional - stringCustom 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/
changeIntervalInMinutesoptional - integerSpecifies interval in minutes to reevaluate ReroutePercentage.
changeStepoptional - numberIn auto ramp up scenario this is the step to add/remove from <code>ReroutePercentage</code> until it reaches \n<code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>. Site metrics are checked every N minutes specified in <code>ChangeIntervalInMinutes</code>.\nCustom decision algorithm can be provided in TiPCallback site extension which URL can be specified in <code>ChangeDecisionCallbackUrl</code>.
maxReroutePercentageoptional - numberSpecifies upper boundary below which ReroutePercentage will stay.
minReroutePercentageoptional - numberSpecifies lower boundary above which ReroutePercentage will stay.
nameoptional - stringName of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment.
reroutePercentageoptional - numberPercentage of the traffic which will be redirected to <code>ActionHostName</code>.
ftpsStateoptional - stringState of FTP / FTPS service.
functionAppScaleLimitoptional - integerMaximum number of workers that a site can scale out to. This setting only applies to the Consumption and Elastic Premium Plans
functionsRuntimeScaleMonitoringEnabledoptional - booleanGets or sets a value indicating whether functions runtime scale monitoring is enabled. When enabled, the ScaleController will not monitor event sources directly, but will instead call to the runtime to get scale status.
handlerMappingsoptional arrayargumentsoptional - stringCommand-line arguments to be passed to the script processor.
extensionoptional - stringRequests with this extension will be handled using the specified FastCGI application.
scriptProcessoroptional - stringThe absolute path to the FastCGI application.
healthCheckPathoptional - stringHealth check path
http20Enabledoptional - booleanHttp20Enabled: configures a web site to allow clients to connect over http2.0
httpLoggingEnabledoptional - boolean<code>true</code> if HTTP logging is enabled; otherwise, <code>false</code>.
ipSecurityRestrictionsoptional arrayactionoptional - stringAllow or Deny access for this IP range.
descriptionoptional - stringIP restriction rule description.
headersoptional - arrayIP restriction rule headers. X-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples). The matching logic is ..
- If the property is null or empty (default), all hosts(or lack of) are allowed.
- A value is compared using ordinal-ignore-case (excluding port number).
- Subdomain wildcards are permitted but don't match the root domain. For example, *.contoso.com matches the subdomain foo.contoso.com but not the root domain contoso.com or multi-level foo.bar.contoso.com
- Unicode host names are allowed but are converted to Punycode for matching. X-Forwarded-For (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples). The matching logic is ..
- If the property is null or empty (default), any forwarded-for chains (or lack of) are allowed.
- If any address (excluding port number) in the chain (comma separated) matches the CIDR defined by the property. X-Azure-FDID and X-FD-HealthProbe. The matching logic is exact match.
ipAddressoptional - stringIP address the security restriction is valid for. It can be in form of pure ipv4 address (required SubnetMask property) or CIDR notation such as ipv4/mask (leading bit match). For CIDR, SubnetMask property must not be specified.
nameoptional - stringIP restriction rule name.
priorityoptional - integerPriority of IP restriction rule.
subnetMaskoptional - stringSubnet mask for the range of IP addresses the restriction is valid for.
subnetTrafficTagoptional - integer(internal) Subnet traffic tag
tagoptional - stringDefines what this IP filter will be used for. This is to support IP filtering on proxies.
vnetSubnetResourceIdoptional - stringVirtual network resource id
vnetTrafficTagoptional - integer(internal) Vnet traffic tag
javaContaineroptional - stringJava container.
javaContainerVersionoptional - stringJava container version.
javaVersionoptional - stringJava version.
keyVaultReferenceIdentityoptional - stringIdentity to use for Key Vault Reference authentication.
limitsoptionalmaxDiskSizeInMboptional - integerMaximum allowed disk size usage in MB.
maxMemoryInMboptional - integerMaximum allowed memory usage in MB.
maxPercentageCpuoptional - numberMaximum allowed CPU usage percentage.
linuxFxVersionoptional - stringLinux App Framework and version
loadBalancingoptional - stringSite load balancing.
localMySqlEnabledoptional - boolean<code>true</code> to enable local MySQL; otherwise, <code>false</code>.
logsDirectorySizeLimitoptional - integerHTTP logs directory size limit.
managedPipelineModeoptional - stringManaged pipeline mode.
managedServiceIdentityIdoptional - integerManaged Service Identity Id
minimumElasticInstanceCountoptional - integerNumber of minimum instance count for a site This setting only applies to the Elastic Plans
minTlsVersionoptional - stringMinTlsVersion: configures the minimum version of TLS required for SSL requests.
netFrameworkVersionoptional - string.NET Framework version.
nodeVersionoptional - stringVersion of Node.js.
numberOfWorkersoptional - integerNumber of workers.
phpVersionoptional - stringVersion of PHP.
powerShellVersionoptional - stringVersion of PowerShell.
preWarmedInstanceCountoptional - integerNumber of preWarmed instances. This setting only applies to the Consumption and Elastic Plans
publicNetworkAccessoptional - stringProperty to allow or block all public traffic.
publishingUsernameoptional - stringPublishing user name.
pushoptionalkindoptional - stringKind of resource.
propertiesoptionaldynamicTagsJsonoptional - stringGets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint.
isPushEnabledrequired - booleanGets or sets a flag indicating whether the Push endpoint is enabled.
tagsRequiringAuthoptional - stringGets 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.
tagWhitelistJsonoptional - stringGets or sets a JSON string containing a list of tags that are whitelisted for use by the push registration endpoint.
pythonVersionoptional - stringVersion of Python.
remoteDebuggingEnabledoptional - boolean<code>true</code> if remote debugging is enabled; otherwise, <code>false</code>.
remoteDebuggingVersionoptional - stringRemote debugging version.
requestTracingEnabledoptional - boolean<code>true</code> if request tracing is enabled; otherwise, <code>false</code>.
requestTracingExpirationTimeoptional - stringRequest tracing expiration time.
scmIpSecurityRestrictionsoptional arrayactionoptional - stringAllow or Deny access for this IP range.
descriptionoptional - stringIP restriction rule description.
headersoptional - arrayIP restriction rule headers. X-Forwarded-Host (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host#Examples). The matching logic is ..
- If the property is null or empty (default), all hosts(or lack of) are allowed.
- A value is compared using ordinal-ignore-case (excluding port number).
- Subdomain wildcards are permitted but don't match the root domain. For example, *.contoso.com matches the subdomain foo.contoso.com but not the root domain contoso.com or multi-level foo.bar.contoso.com
- Unicode host names are allowed but are converted to Punycode for matching. X-Forwarded-For (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For#Examples). The matching logic is ..
- If the property is null or empty (default), any forwarded-for chains (or lack of) are allowed.
- If any address (excluding port number) in the chain (comma separated) matches the CIDR defined by the property. X-Azure-FDID and X-FD-HealthProbe. The matching logic is exact match.
ipAddressoptional - stringIP address the security restriction is valid for. It can be in form of pure ipv4 address (required SubnetMask property) or CIDR notation such as ipv4/mask (leading bit match). For CIDR, SubnetMask property must not be specified.
nameoptional - stringIP restriction rule name.
priorityoptional - integerPriority of IP restriction rule.
subnetMaskoptional - stringSubnet mask for the range of IP addresses the restriction is valid for.
subnetTrafficTagoptional - integer(internal) Subnet traffic tag
tagoptional - stringDefines what this IP filter will be used for. This is to support IP filtering on proxies.
vnetSubnetResourceIdoptional - stringVirtual network resource id
vnetTrafficTagoptional - integer(internal) Vnet traffic tag
scmIpSecurityRestrictionsUseMainoptional - booleanIP security restrictions for scm to use main.
scmMinTlsVersionoptional - stringScmMinTlsVersion: configures the minimum version of TLS required for SSL requests for SCM site.
scmTypeoptional - stringSCM type.
tracingOptionsoptional - stringTracing options.
use32BitWorkerProcessoptional - boolean<code>true</code> to use 32-bit worker process; otherwise, <code>false</code>.
virtualApplicationsoptional arrayphysicalPathoptional - stringPhysical path.
preloadEnabledoptional - boolean<code>true</code> if preloading is enabled; otherwise, <code>false</code>.
virtualDirectoriesoptional arrayphysicalPathoptional - stringPhysical path.
virtualPathoptional - stringPath to virtual application.
virtualPathoptional - stringVirtual path.
vnetNameoptional - stringVirtual Network name.
vnetPrivatePortsCountoptional - integerThe number of private ports assigned to this app. These will be assigned dynamically on runtime.
vnetRouteAllEnabledoptional - booleanVirtual Network Route All enabled. This causes all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied.
websiteTimeZoneoptional - stringSets the time zone a site uses for generating timestamps. Compatible with Linux and Windows App Service. Setting the WEBSITE_TIME_ZONE app setting takes precedence over this config. For Linux, expects tz database values https://www.iana.org/time-zones (for a quick reference see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). For Windows, expects one of the time zones listed under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
webSocketsEnabledoptional - boolean<code>true</code> if WebSocket is enabled; otherwise, <code>false</code>.
windowsFxVersionoptional - stringXenon App Framework and version
xManagedServiceIdentityIdoptional - integerExplicit Managed Service Identity Id
storageAccountRequiredoptional - booleanChecks if Customer provided storage account is required
virtualNetworkSubnetIdoptional - stringAzure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration. This must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
tagsoptional - stringResource tags.
typerequired - string
Frequently asked questions
What is Azure Logic App Standard?
Azure Logic App Standard is a resource for Logic App of Microsoft Azure. Settings can be wrote in Terraform.
Where can I find the example code for the Azure Logic App Standard?
For Terraform, the CMPGitOpsInnovation/logic-app-ase source code example is useful. See the Terraform Example section for further details.
For Azure Resource Manager, the SkillsFundingAgency/dfc-providerportal-monitoring, ajf214/personal-arm-templates and mrpaulandrew/procfwk source code examples are useful. See the Azure Resource Manager Example section for further details.