alfaSettings.json configuration
The example alfaSettings.json configuration file includes the following settings as well as a number of deactivated lines which are not for standard use.
- {
- 'AlfabetWebConfig': {
- 'presentationSessionManagerBuilder': 'AlfaPresentationInterfaceImpl.Integrated.IntegratedPresentationSessionManagerBuilder, AlfaPresentationInterfaceImpl',
- 'expandManagerBuilder': 'Alfabet.Services.Interfaces.ExpandConfigurator, AlfaMMProviderServiceInterfaceImpl'
- 'ContentSecurityPolicyValue': 'default-src 'self' 'unsafe-eval' 'unsafe-inline'; img-src 'self' https://documentation.alfabet.com data:; media-src 'self'; object-src 'self'; frame-src 'self' https://*.teams.microsoft.com https://*.figma.com https://*.atlassian.net https://dev.azure.com https://*.aha.io https://*.ideas.aha.io https://*.docs.google.com https://*.drive.google.com https://*.onedrive.live.com https://*.sharepoint.com https://www.youtube.com https://youtube.com https://*.youtube-nocookie.com https://player.vimeo.com https://vimeo.com https://*.horizzon.cloud https://*.getunify.cloud https://*.hopexcloud.com/;',
- 'IFrameSandboxValue': 'allow-same-origin allow-scripts allow-forms'
- },
- 'AlfabetPresentationSessionServiceConfig': {
- 'msfile': 'C:\\....\\alfabetms.xml',
- 'easyin': '',
- 'alias': 'alias',
- 'sessionTimeout': '00:20',
- 'SolutionResetters': [
- 'ITPlanSolution.DependencyInjection.ValueManagerResetImpl, ITPlan'
- ]
- },
- 'AlfabetRuntimeConfig': {
- 'Debug': false,
- 'UseNLog': true,
- 'ApplicationRuntimeMode': 'Standard',
- //'ApplicationRuntimeID': 'some-app',
- //'EnableVersionHeader': false,
- 'SolutionAssembliesSearchStrategy': 'Production',
- 'CacheDurationInSeconds': 1200 }
Configuration relevant fields are in AlfabetWebConfig , AlfabetPresentationSessionServiceConfig and AlfabetRuntimeConfig.
| Field | Required Setting |
|---|---|
| AlfabetWebConfig | |
| ContentSecurityPolicyValue | This setting instructs client browsers to restrict resource loading to approved, secure sources. If you want to display external URL content on the Alfabet user interface, you need to make sure that the parent URL of the content is listed in this setting as framesource . The framesource lists all allowed URLs whitespace separated. The content security policy must also include settings required to display Alfabet content correctly. Copy the example above, add it to your alfasettings.json file, and alter the framesource list to your demands.
If you do not want to display external URL content, the ContentSecurityPolicyValue must either not be set or allow the following:
Customers having implemented the full text index for the standard Alfabet help must add the URL of the Alfabet help server to the image sources to see images in the help window:
|
| IFrameSandboxValue | The IFrameSandboxValue needs to be set to enable external URL content to be displayed on the Alfabet user interface. It implements restrictions for the content HTML iframe the external content is displayed in. The setting works like a whitelist. The setting displayed in the example above is required for the display of external URLs on the Alfabet user interface. Form submission and running of scripts is allowed and the content is treated as being from the same origin. All other security restrictions for the sandbox, like blocking of popups and modal windows, apply. |
| AlfabetPresentationSessionServiceConfig settings | |
| msfile |
Enter the absolute or relative path to the alfabetms.xml configuration file containing the server alias for the Alfabet Web Application. All backslashes in the path must be escaped with a backslash:
|
| easyin |
If you define a user name in this field, the login screen of the Alfabet user interface will be prefilled with this user name. This field must be left empty for production environments. Only use this field for test or configuration instances. |
| alias | Enter the name of the server alias for the Alfabet Web Application. |
| sessionTimeout | Without user activity, an Alfabet session will time out after 20 minutes. You can alter the timeout value with this field in the format hh:mm. The timeout should not exceed 1 hour. |
| AlfabetRuntimeConfig settings | |
| Debug | Set the Debug field to false unless issues are encountered and debugging is required. If the Debug field is set to true and the field UseNLog is set to true , log files will be written in the runtime directory of the Alfabet Web Application and error messages displayed in browsers will reveal web server details. |
| ApplicationRuntimeMode | Set ApplicationRuntimeMode to Standard for production environments. Additional options:
|
| ApplicationRuntimeID | Include the ApplicationRuntimeID in the configuration and set it to an arbitrary non-empty alphanumeric value to disable reloading of content files (js, css, icons) on every application restart. |
| EnableVersionHeader | Set the EnableVersionHeader field to true if you want the operating system version to be included in the full version information about Alfabet and to be displayed in the About Alfabet dialog. |
| SolutionAssembliesSearchStrategy | Set the SolutionAssembliesSearchStrategy to Production . This setting influences the loading of .dll files. Settings other then Production are only relevant for Alfabet BD GmbH internal development tasks. |
| CacheDurationInSeconds | Set the maximum number of seconds that content may remain in the browser cache. After the cache duration expires, the browser will have to re-load the content from the Web server instead of re-using it from the cache. |
| ExperimentalFeatures | If you encounter problems with the execution of right rules, you can re-set the default batch calculation of right rules either completely to a one by one calculation, or exclude right rules with WITH statements from batch calculation only. The specification is done in the following syntax:
You can set the following modes:
|
| ShowBacktoAppLinkonLogout | Set this attribute to false to hide the link to the login page from the logout page of the Alfabet user interface which is displayed after logout of the user and after a session expired. The default value is true. |
| AppInsights settings | An example providing information about information that may be added to apply Azure® AppInsights ® analysis on Alfabet use. This section is commented out because it is not used in the standard implementation. |