The Design object is a central location where much of the Cordra configuration is stored. For example, the configuration for the UI, authorization, and handle minting are all stored on the Design object. When logged in as a Cordra admin into the UI, the Design Object Admin menu item provides you a way to edit this object directly. The Design object could also be updated using a configuration file on startup; see repoInit.json.
Here are the properties available in the Design object for fine-tuning Cordra behavior:
Property name |
Description |
---|---|
ids |
|
isReadOnly |
While set to true, Cordra will reject object creation, update, or deletion. (Exception: the admin user, only, is allowed to edit the design object, only.) |
useLegacySessionsApi |
|
useLegacyContentOnlyJavaScriptHooks |
|
useLegacySearchPageSizeZeroReturnsAll |
If true, restores former behavior where a search with pageSize=0 returns all results. By default a search with pageSize=0 returns the number of matched objects but no object content. |
useLegacyAttributesAsInputForDoipGet |
By default set to false. If true, the DOIP API for HTTP Clients will copy request “attributes” into request “input” for GET requests (matching the behavior of Cordra v2.3.0 to v2.4.0). |
enableVersionEdits |
If true, version objects can be edited. By default, they are immutable. |
includePayloadsInReplicationMessages |
If true, payloads are included in Kafka messages produced by configuration replicationProducers. By default the payloads are omitted. |
disableAuthenticationBackOff |
By default, Cordra will slow down authentication attempts for a user after receiving an incorrect password for that user, up to a maximum of 5 seconds. Setting this to true disables the delay. |
allowInsecureAuthentication |
Allow authentication requests over HTTP. By default, only HTTPS is allowed. |
enableTypeChangeViaUpdate |
Allow standard 0.DOIP/Op.Update operation to change the type of an object. |
adminPublicKey |
JSON Web Key that can be used to log in as admin user. |
uiConfig |
See UI Menu. |
authConfig |
See Authorization Menu. |
handleMintingConfig |
See Handle Integration. |
handleServerConfig |
See Handle Integration. |
doip |
See DOIP and Examples. |
builtInTypes.CordraDesign.javascript |
|
builtInTypes.CordraDesign.authConfig |
See Authorization. |
builtInTypes.Schema.javascript |
|
builtInTypes.Schema.authConfig |
See Authorization. |
javascript |
All or part of the Design object can also be modified on startup by including a repoInit.json
file in the
Cordra data
directory. The JSON structure under the design
property in the repoInit.json file should match
what is expected in the Design object. For example, to add ids that are useful for Authentication via Keys, you could
include the following in the repoInit.json file:
{
"design": {
"ids": [ "20.500.123/cordra" ]
}
}