In Cloudvanti to make the Sitefinity CMS able to work together with Azure Resources like Azure Redis Cache, Azure Search, and Azure SQL, we configure it on the App Service level. So, the User does not need to think about how to integrate with those Azure resources.

In order to read the setting configuration, App Service will look to the App Service Configuration first before reading it from Sitefinity web.config. Two (2) configuration sections provided by App Service are App Setting Configuration and Connection String.

Defining Configuration in web.config File

Sitefinity CMS enables you to store configuration setting values in the website web.config <appSettings> section. By settings configuration in web.config, we can make sure your configuration will not change every time you deploy code and cannot be changed in backend Sitefinity except you changed it in web.config directly.

In the example, we will try to define the configuration for BackendTheme from Appearance in the web.config file.

To see the path of the configuration to set in the web.config file, we can click the question mark on the field

In the example above, we will add a configuration for BackendTheme from Appearance provider in the web.config file. To do this, inside the <appSettings> section we will add the configuration as follows:

<add key="sf-env:[Path to configuration property]" value="[value for Configuration Path]"/>

Configuration through the UI will be disabled after we define configuration externally from the <appSettings> section in the Web.config file.

Link for reference can be seen at Manage Configurations in CD Pipeline.

Configuration in App Service

By default, Cloudvanti will hide to User the value of the Configuration that we already set for App Service even it is in Staging or Production App Service.

The following is the list of configurations that we already set in App Service, so User cannot replace these configurations. If they want to add additionals app setting configuration based on their business need, they can add it on their web.config.

Cache Management

Setting up in App Service to invalidate the CDN Cache.

prefix: sf-env:webhookConfig/events/Telerik.Sitefinity

  • {prefix}.Web.OutputCache.IOutputCacheInvalidationEvent:eventType
  • {prefix}.Web.OutputCache.IOutputCacheInvalidationEvent/urls/https://cdnpurger.azurewebsites.net/api/HttpTrigger?code=/N2bB/REfGnvNpSNAAXFBM7rBFHSRkVCUWPMCwMQjS9CpvcgSjEf1Q==:url
  • {prefix}.Web.OutputCache.IOutputCacheInvalidationEvent/urls/https://cdnpurger.azurewebsites.net/api/HttpTrigger?code=/N2bB/REfGnvNpSNAAXFBM7rBFHSRkVCUWPMCwMQjS9CpvcgSjEf1Q==:secret
  • {prefix}.Web.Events.ILoginCompletedEvent:eventType
  • {prefix}.Web.Events.ILoginCompletedEvent:/urls/https://cdnpurger.azurewebsites.net/api/HttpTrigger?code=/N2bB/REfGnvNpSNAAXFBM7rBFHSRkVCUWPMCwMQjS9CpvcgSjEf1Q==:url
  • {prefix}.Web.Events.ILoginCompletedEvent:/urls/https://cdnpurger.azurewebsites.net/api/HttpTrigger?code=/N2bB/REfGnvNpSNAAXFBM7rBFHSRkVCUWPMCwMQjS9CpvcgSjEf1Q==:secret
  • {prefix}.Modules.Forms.Events.IFormEntryCreatedEvent:eventType
  • {prefix}.Modules.Forms.Events.IFormEntryCreatedEvent/urls/https://cdnpurger.azurewebsites.net/api/HttpTrigger?code=/N2bB/REfGnvNpSNAAXFBM7rBFHSRkVCUWPMCwMQjS9CpvcgSjEf1Q==:url
  • {prefix}.Modules.Forms.Events.IFormEntryCreatedEvent/urls/https://cdnpurger.azurewebsites.net/api/HttpTrigger?code=/N2bB/REfGnvNpSNAAXFBM7rBFHSRkVCUWPMCwMQjS9CpvcgSjEf1Q==:secret

B2B Login Sitefinity

Setting up in App Service to login in Sitefinity backend using Azure AD B2B Login for Sitefinity.

Prefix: sf-env:authenticationConfig/securityTokenServiceSettings/authenticationProviders/OpenIDConnect

  • {prefix}: clientId
  • {prefix}:responseType
  • {prefix}:scope
  • {prefix}:authority
  • {prefix}:redirectUri
  • {prefix}:postLogoutRedirectUri
  • {prefix}:title
  • {prefix}:enabled
  • {prefix}:autoAssignedRoles
  • {prefix}:requireEmail

Redis Cache

Setting up in App Service to set the Azure Redis Cache.

Prefix: sf-env:systemConfig

  • {prefix}/outputCacheSettings:defaultOutputCacheProvider
  • {prefix}/loadBalancingConfig/redisSettings:ConnectionString
  • {prefix}/outputCacheSettings/cacheProvidersSettings/redisSettings:ConnectionString

Azure Search

Setting up in App Service to set the Azure Search.

Prefix: sf-env:searchConfig

  • {prefix}:currentSearchService
  • {prefix}/searchServices/AzureSearchService:azureSearchServiceName
  • {prefix}/searchServices/AzureSearchService:azureServiceAdminKey