Configuration settings
Casewhere provides a lot of settings you can adjust to specifically customize your deployments.
Casewhere Api
Below are the customizable settings for Casewhere.Worker.Api
.
Key | Type | Description | Default/Sample value | Release |
---|---|---|---|---|
storage:sysDocumentContainer | appSettings |
The container for system files. For using with Azure Blob, it's the Blob container. For using with MongoDb GridFs, it's the database collection | systemdocuments | 1.0 |
storage:pluginContainer | appSettings |
The container for plugins. | plugins | 1.0 |
storage:documentContainer | appSettings |
The container for runtime files i.e. files added by end-users through workflows | documents | 1.0 |
storage:sysDocument:clientCacheTime | appSettings |
The cache duration in second | 60 | 2.6 |
storage:azure:connectionString | secureAppSettings |
The Azure Storage connection string. This setting is for Azure Queue only | Azure Storage connection string | 2.0 |
storage:gridFS:connectionString | secureAppSettings |
The MongoDb connection string for the file storage database. This setting is for MongoDb GridFs only | MongoDb connection string | 2.6 |
cwjobs:RuntimeApiEndpoint | appSettings |
The API endpoint to process background tasks. In most deployments, we host the background-task engine using the same Worker Api instance, but it can be deployed separately from the Worker Api if we need to scale them separately |
https://api-local.casewhere.com/external/v0.1/ | 1.0 |
cwjobs:RuntimeApiKey | secureAppSettings |
The secret key to protect the communication between Worker API and the background task engine |
A secret value | 1.0 |
cwjobs:Workers | appSettings |
The number of workers to process background tasks | 3 | 2.0 |
cwjobs:Timeout | appSettings |
The timeout for processing background tasks in second | 900 | 2.5 |
cwJobs:AzureStorageQueue:queuename | appSettings |
The queue name if you use Azure Queue for the background tasks | cwjobqueue | 2.0 |
cwjobs:AzureStorageQueue:visibleTimeoutSecs | appSettings |
The visibility timeout in seconds. This setting is for Azure Queue only | 3600 | 2.5 |
cwjobs:AzureStorageQueue:connectionstrings | secureAppSettings |
The Azure Storage connection string. This setting is for Azure Queue only | A secret value | 2.0 |
UploadTimeout | appSettings |
The timeout for uploading files from worker sites | 00:15:00 | 2.6 |
MinifyScript | appSettings |
If true, Casewhere will minify the generated scripts before responding | false | 1.0 |
WorkerSiteClaimType | appSettings |
The claim in the token from IdP, which is used to authorize users against the worker site. This setting is Deprecated , we recommend using access rules to for user authorization |
http://schemas.microsoft.com/identity/claims/tenantdomain | 1.0 |
CacheDuration | appSettings |
To improve performance, Casewhere cache configuration data and only query MongoDb when needed | 00:15:00 | 2.0 |
ApplyTransaction | appSettings |
When true, Casewhere will use transaction when persisting changes to the event source | false | 2.6 |
QueryMaxTime | appSettings |
The timeout for database queries | 00:01:00 | 2.6 |
AllowDiskUse | appSettings |
Utilize disk space for sorting. Read here for more | false | 2.6 |
SearchLimit | appSettings |
The maximum number of records returned for a search query | 5000 | 2.6 |
AcceptableDeviationSeconds | appSettings |
The assertion validation can be failed due to a difference in server time between Casewhere and connected IdP. This setting controls the variation in seconds allowed when validating assertions | 3 | 2.5 |
EnableBrowserFingerprint | appSettings |
When true, Casewhere will validate the request signature (IP, Agent) against the issued token | false | 2.6 |
CleanupUserSessionAfterTimeSpan | appSettings |
User sessions will be deleted in the database after a configurable period to free up disk space | 720:00:00 | 2.6 |
idpConnection:AllowTokenLifetimeFromConditions | appSettings |
If true, Casewhere will use the value in Conditions.NotOnOrAfter for the token lifetime. |
false | 2.6 |
idpConnection:DefaultTokenLifetime | appSettings |
The default token lifetime. If none is specified in the SAML token from IdP, Casewhere will use this setting. | 08:00:00 | 2.6 |
dataProtection:KeyProtection:Thumbprint | appSettings |
The thumbprint of the encryption-key certificate | 2.5 | |
dataProtection:KeyProtection:StoreLocation | appSettings |
The location to store the encryption-key certificate | LocalMachine | 2.5 |
dataProtection:KeyPersistence:MongoDBConnection | secureAppSettings |
The MongoDb connection string for the key-storage database | MongoDb connection string | 2.5 |
dataTrigger:Workers | appSettings |
The number of workers to process data-change notifications | 2 | 2.5 |
dataTrigger:ExpireAfterDays | appSettings |
Old data-change notifications will be deleted in the database to free up disk space | 30.00:00:00 | 2.5 |
dataTrigger:AvailableFromHours | appSettings |
It's similar to the visibility timeout in Azure Queue | 01:00:00 | 2.5 |
dataTrigger:MaxDequeueAttempts | appSettings |
The maximum number of attempts Casewhere will try to process a data-change notification | 10 | 2.5 |
jobQueue:ExpireAfterDays | appSettings |
Old messages will be deleted in the database to free up disk space. This setting is applicable for Mongo Queue only | 30.00:00:00 | 2.6 |
jobQueue:AvailableFromHours | appSettings |
It's similar to the visibility timeout in Azure Queue. This setting is applicable for Mongo Queue only | 01:00:00 | 2.6 |
eventTrigger:ExpireAfterDays | appSettings |
Old events will be deleted in the database to free up disk space | 30.00:00:00 | 2.6 |
eventTrigger:InvisibleEventDuration | appSettings |
It's similar to the visibility timeout in Azure Queue | 01:00:00 | 2.6 |
eventTrigger:MaxAttemptsForEvent | appSettings |
The maximum number of attempts Casewhere will try to process an event | 10 | 2.6 |
eventTrigger:Workers | appSettings |
The number of workers to process runtime events | 2 | 2.6 |
serilog:minimum-level | appSettings |
The minimum logging level | Verbose | 2.0 |
serilog:disableSelfLog | appSettings |
To debug logging problem | false | 2.6 |
serilog:using:MongoDb | appSettings |
MongoDb as logging storage | Serilog.Sinks.MongoDb | 2.0 |
serilog:write-to:MongoDb.collectionName | appSettings |
The MongoDb collection for storing log data | Logs | 2.0 |
serilog:write-to:MongoDb.databaseUrl | secureAppSettings |
The MongoDb connection string for the log database | MongoDb connection string | 2.0 |
perfLog:using:MongoDB | appSettings |
MongoDb as logging storage | Serilog.Sinks.MongoDB | 2.6 |
perfLog:write-to:MongoDB.collectionName | appSettings |
The MongoDb collection for storing log data | PerfLogs | 2.6 |
perfLog:write-to:MongoDB.cappedMaxSizeMb | appSettings |
Casewhere use MongoDb capped collection to store performance logs. The capping size is in Mb | 5000 | 2.6 |
perfLog:enabled | appSettings |
Enable or disable performance log | true | 2.6 |
perfLog:write-to:MongoDB.databaseUrl | secureAppSettings |
The MongoDb connection string for the log database | MongoDb connection string | 2.6 |
CasewhereEvents | connectionStrings |
The MongoDb connection string for the event-source database | MongoDb connection string | 2.0 |
CasewhereData | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
Hangfire | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
CasewhereLog | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
CasewhereAuditLog | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.6 |
Casewhere Web
Below are the customizable settings for Casewhere.Web.CaseWorker
.
Key | Type | Description | Default/Sample value | Release |
---|---|---|---|---|
ApiEndPoint | appSettings |
The Worker API endpoint |
https://api-local.casewhere.com/api/v0.1/ | 1.0 |
RuntimeApiEndPoint | appSettings |
The Runtime API endpoint |
https://api-local.casewhere.com/external/v0.1/ | 1.0 |
TextResourceEndPoint | appSettings |
The endpoint to download text resources | https://api-local.casewhere.com/languages/ | 1.0 |
AuthEndPoint | appSettings |
The API endpoint for authentication | https://api-local.casewhere.com/ | 1.0 |
LoginEndpoint | appSettings |
The login endpoint | https://api-local.casewhere.com/signon?relayState= | 1.0 |
LogoutEndpoint | appSettings |
The logout endpoint | https://api-local.casewhere.com/signoff | 1.0 |
AdminEndpoint | appSettings |
The endpoint to Casewhere Admin | https://admin-local.casewhere.com/ | 2.6 |
serilog:minimum-level | appSettings |
The minimum logging level | Verbose | 2.7 |
serilog:disableSelfLog | appSettings |
To debug logging problem | false | 2.7 |
serilog:using:MongoDb | appSettings |
MongoDb as logging storage | Serilog.Sinks.MongoDb | 2.7 |
serilog:write-to:MongoDb.collectionName | appSettings |
The MongoDb collection for storing log data | Logs | 2.7 |
serilog:write-to:MongoDb.databaseUrl | secureAppSettings |
The MongoDb connection string for the log database | MongoDb connection string | 2.7 |
Casewhere Admin
Below are the customizable settings for Casewhere.Configuration.Web
.
Key | Type | Description | Default/Sample value | Release |
---|---|---|---|---|
idpConnection:SPCertStoreLocation | appSettings |
The store location for the service provider (Casewhere) signing certificate | LocalMachine | 2.6 |
idpConnection:SPCertStoreName | appSettings |
The name of the store for the service provider (Casewhere) signing certificate | My | 2.6 |
idpConnection:IdPCertStoreLocation | appSettings |
The store location for the IdP signing certificate | LocalMachine | 2.6 |
idpConnection:IdPCertStoreName | appSettings |
The name of the store for the IdP signing certificate | TrustedPeople | 2.6 |
idpConnection:SPSigningCertificateThumbprint | appSettings |
The thumbprint of the service provider (Casewhere) signing certificate | Thumbprint string | 2.6 |
idpConnection:SignatureAlgorithm | appSettings |
Signing algorithm | SHA256 | 2.6 |
idpConnection:IdPUrl | appSettings |
The IdP endpoint | https://login-demo.casewhere.com/runtime/ | 2.6 |
idpConnection:IdPMetadataFolder | appSettings |
The folder contains the SAML metadata from the IdP. Make sure there is a metadata.xml inside it | ~/Metadata/OnPremiseIdP | 2.6 |
idpConnection:EntityId | appSettings |
If not specified, the current domain will be used | 2.6 | |
idpConnection:LogoutResponseUri | appSettings |
The Casewhere endpoint to handle logout callback from IdP | https://admin-local.casewhere.com/auth/signoffconsumer | 2.6 |
idpConnection:EnableSSO | appSettings |
If false, users are always required to login | false | 2.6 |
authorization:EnableBrowserFingerprint | appSettings |
When true, Casewhere will validate the request signature (IP, Agent) against the issued token | true | 2.6 |
idpConnection:AllowTokenLifetimeFromConditions | appSettings |
If true, Casewhere will use the value in Conditions.NotOnOrAfter for the token lifetime |
false | 2.6 |
idpConnection:DefaultTokenLifetime | appSettings |
The default token lifetime. If none is specified in the SAML token from IdP, Casewhere will use this setting. | 08:00:00 | 2.6 |
CasewhereAdminClaim | appSettings |
The claim type is used for authorization. The issued tokens from IdP must have the claim | BackendRoles | 2.6 |
CasewhereAdminClaimValue | appSettings |
Casewhere will validate the claim against this value to decide if the user is authorized or not. You can specify multiple values separated by commas | CasewhereAdmin | 2.6 |
CMSAdminClaim | appSettings |
The claim type is used for authorization for the CMS Admin | BackendRoles | 2.6 |
CMSAdminClaimValue | appSettings |
Casewhere will validate the claim against this value to decide if the user is authorized for the CMS Admin or not. You can specify multiple values separated by commas | CMSAdmin | 2.6 |
storage:sysDocumentContainer | appSettings |
The container for system files. For using with Azure Blob, it's the Blob container. For using with MongoDb GridFs, it's the database collection | systemdocuments | 1.0 |
storage:pluginContainer | appSettings |
The container for plugins. | plugins | 1.0 |
storage:documentContainer | appSettings |
The container for runtime files i.e. files added by end-users through workflows | documents | 1.0 |
storage:azure:connectionString | secureAppSettings |
The Azure Storage connection string. This setting is for Azure Queue only | Azure Storage connection string | 2.0 |
storage:gridFS:connectionString | secureAppSettings |
The MongoDb connection string for the file storage database. This setting is for MongoDb GridFs only | MongoDb connection string | 2.6 |
CacheDuration | appSettings |
To improve performance, Casewhere cache configuration data and only query MongoDb when needed | 00:15:00 | 2.0 |
ApplyTransaction | appSettings |
When true, Casewhere will use transaction when persisting changes to the event source | false | 2.6 |
serilog:minimum-level | appSettings |
The minimum logging level | Verbose | 2.0 |
serilog:disableSelfLog | appSettings |
To debug logging problem | false | 2.6 |
serilog:using:MongoDb | appSettings |
MongoDb as logging storage | Serilog.Sinks.MongoDb | 2.0 |
serilog:write-to:MongoDb.collectionName | appSettings |
The MongoDb collection for storing log data | Logs | 2.0 |
serilog:write-to:MongoDb.databaseUrl | secureAppSettings |
The MongoDb connection string for the log database | MongoDb connection string | 2.0 |
dataProtection:KeyProtection:Thumbprint | appSettings |
The thumbprint of the encryption-key certificate | 2.5 | |
dataProtection:KeyProtection:StoreLocation | appSettings |
The location to store the encryption-key certificate | LocalMachine | 2.5 |
dataProtection:KeyPersistence:MongoDBConnection | secureAppSettings |
The MongoDb connection string for the key-storage database | MongoDb connection string | 2.5 |
CasewhereEvents | connectionStrings |
The MongoDb connection string for the event-source database | MongoDb connection string | 2.0 |
CasewhereData | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
Hangfire | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
CasewhereLog | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
Casewhere Job
Below are the customizable settings for Casewhere.Hangfire
.
Key | Type | Description | Default/Sample value | Release |
---|---|---|---|---|
idpConnection:SPCertStoreLocation | appSettings |
The store location for the service provider (Casewhere) signing certificate | LocalMachine | 2.6 |
idpConnection:SPCertStoreName | appSettings |
The name of the store for the service provider (Casewhere) signing certificate | My | 2.6 |
idpConnection:IdPCertStoreLocation | appSettings |
The store location for the IdP signing certificate | LocalMachine | 2.6 |
idpConnection:IdPCertStoreName | appSettings |
The name of the store for the IdP signing certificate | TrustedPeople | 2.6 |
idpConnection:SPSigningCertificateThumbprint | appSettings |
The thumbprint of the service provider (Casewhere) signing certificate | Thumbprint string | 2.6 |
idpConnection:SignatureAlgorithm | appSettings |
Signing algorithm | SHA256 | 2.6 |
idpConnection:IdPUrl | appSettings |
The IdP endpoint | https://login-demo.casewhere.com/runtime/ | 2.6 |
idpConnection:IdPMetadataFolder | appSettings |
The folder contains the SAML metadata from the IdP. Make sure there is a metadata.xml inside it | ~/Metadata/OnPremiseIdP | 2.6 |
idpConnection:EntityId | appSettings |
If not specified, the current domain will be used | 2.6 | |
idpConnection:LogoutResponseUri | appSettings |
The Casewhere endpoint to handle logout callback from IdP | https://admin-local.casewhere.com/auth/signoffconsumer | 2.6 |
idpConnection:EnableSSO | appSettings |
If false, users are always required to login | false | 2.6 |
authorization:EnableBrowserFingerprint | appSettings |
When true, Casewhere will validate the request signature (IP, Agent) against the issued token | true | 2.6 |
idpConnection:AllowTokenLifetimeFromConditions | appSettings |
If true, Casewhere will use the value in Conditions.NotOnOrAfter for the token lifetime |
false | 2.6 |
idpConnection:DefaultTokenLifetime | appSettings |
The default token lifetime. If none is specified in the SAML token from IdP, Casewhere will use this setting. | 08:00:00 | 2.6 |
CasewhereAdminClaim | appSettings |
The claim type is used for authorization. The issued tokens from IdP must have the claim | BackendRoles | 2.6 |
CasewhereAdminClaimValue | appSettings |
Casewhere will validate the claim against this value to decide if the user is authorized or not. You can specify multiple values separated by commas | CasewhereAdmin | 2.6 |
serilog:minimum-level | appSettings |
The minimum logging level | Verbose | 2.0 |
serilog:disableSelfLog | appSettings |
To debug logging problem | false | 2.6 |
serilog:using:MongoDb | appSettings |
MongoDb as logging storage | Serilog.Sinks.MongoDb | 2.0 |
serilog:write-to:MongoDb.collectionName | appSettings |
The MongoDb collection for storing log data | Logs | 2.0 |
serilog:write-to:MongoDb.databaseUrl | secureAppSettings |
The MongoDb connection string for the log database | MongoDb connection string | 2.0 |
cwjobs:RuntimeApiKey | secureAppSettings |
The secret key to protect the communication between the Hangfire instance and the Worker API |
A secret value | 1.0 |
cwjobs:Workers | appSettings |
The number of workers to process background tasks | 3 | 2.0 |
cwjobs:Timeout | appSettings |
The timeout for processing background tasks in second | 900 | 2.5 |
CasewhereEvents | connectionStrings |
The MongoDb connection string for the event-source database | MongoDb connection string | 2.0 |
CasewhereData | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
Hangfire | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
CasewhereLog | connectionStrings |
The MongoDb connection string for the snapshot database | MongoDb connection string | 2.0 |
dataProtection:KeyProtection:Thumbprint | appSettings |
The thumbprint of the encryption-key certificate | 2.5 | |
dataProtection:KeyProtection:StoreLocation | appSettings |
The location to store the encryption-key certificate | LocalMachine | 2.5 |
dataProtection:KeyPersistence:MongoDBConnection | secureAppSettings |
The MongoDb connection string for the key-storage database | MongoDb connection string | 2.5 |