The configuration allows you to set and change various configuration parameters for the server or the Scope world. For admin users, it can be found directly in the admin panel.
defaultServerLocale = [ de_DE | en_US | en_GB ]
Default language of the server.
defaultUserLocale = [ de_DE | en_US | en_GB ]
Default language of client interface. The setting only affects new users. Each user has the option in the client to set the language used at any time.
defaultServerTimeZone = Europe/Berlin
The default time zone of the server for the display of date and time (see date entries).
search.view = [ normal | extended ]
The normal view is a simple input field for the search text. The extended view requires configured facet searches on one or more element types. Then the user is offered a simple possibility to search in individual fields.
search.filter = [ fuzzy | phonetic ]
fuzzy uses the Levenshtein distance, which is set with search.fuzziness. phonetic uses the Double Metaphone algorithm to include similar sounding, possibly misspelled hits in the result list (e.g. standard and standart).
If the search filter is changed, the complete search index must be rebuilt.
search.fuzziness = [ 0 | 1 | 2 ]
The Levenshtein distance is a positive integer that measures the distance between two letter sequences. This parameter sets the fuzziness of the search. 0 is equivalent to exact search. 1 allows simple word swaps. The larger the value, the less precise the search.
search.phonetic.maxCodeLength = 8
The maximum code length is a positive integer that specifies the maximum length of the phonetic code. The longer the phonetic code can be, the more accurate the displayed matches will be. With a code length of 4, the code is KRKT for both cricket and cricketgame. Both terms are considered identical by the search. With a code length of 8, the code for Cricket is KRKT, but for Cricketgame it is KRKTKM. So the two terms are different for the search.
search.weight.content = 2.0
Weight of search results within the form.
search.weight.name = 3.0
Weight of search results within form name.
search.weight.breadcrumb = 0.1
Weight of search results within the path of the form.
search.weight.typename = 0.05
Weigth of searh results within type name.
search.weight.metadata = 0.2
Weight of search results within meta data of files.
search.extensionDenyList = dxf
A list of file formats that are not included in the search index. Multiple entries must be specified separated by commas.
search.tika.args =
Arguments which will be used to start the Tika server (see Tika Wiki).
search.tika.jvmargs = -Xmx2g
JVM arguments which will be used to start the Tika server.
search.tika.port = 8200
The port behind which a Tika server is expected. If no Tika server is found, a new Tika server is started that listens on this port.
search.tika.startupDelayMS = 1000
The amount of time in milliseconds that is waited after the Tika server starts until a first connection attempt is made.
search.tika.timeoutMS = 60000
The maximum time in milliseconds that a request to the Tika server may take before it is aborted.
search.tika.url = http://localhost
URL of a running Tika server.
search.tika.downloadUrl = https://rewoo.de/downloads/tika/
If no Tika server is running and no jar is found in the local installation directory, an appropriate jar is downloaded from this URL.
search.tika.workingDir =
The directory to save the downloaded jar and the config file to.
mail.mute = [ true | false ]
Switch to globally activate or deactivate the email dispatch.
mail.sender = REWOO Scope <info@rewoo.com>
Name and email address of the sender. Most providers require that the sender matches the email account used.
mail.fromEqualToSender = [ true | false ]
If false, then the email address of the logged-in user is entered in the email field from, if true, then the name of the user together with the email address from mail.sender is entered in the email field from.
mail.redirect.enabled = [ true | false ]
All mails sent to users are redirected to the addresses in mail.redirect.to
mail.redirect.to =
A comma-separated list of addresses to which email will be redirected if mail.redirect.enabled is enabled.
mail.host = localhost
Address of the computer that sends the emails (SMTP)
mail.port = 587
Port on this computer through which the SMTP service can be reached.
mail.username =
Username, if authentication is necessary for the dispatch.
mail.password =
Password, if authentication is required for sending.
mail.props = mail.smtp.auth:true,mail.smtp.socketFactory.port:587,mail.smtp.socketFactory.class:javax.net.DefaultSocketFactory,mail.smtp.socketFactory.fallback:false
Settings for sending emails.
mail.port = 465
mail.props = mail.smtp.auth:true,mail.smtp.socketFactory.port:465,mail.smtp.socketFactory.class:javax.net.ssl.SSLSocketFactory,mail.smtp.socketFactory.fallback:false,mail.smtp.starttls.enable:true
mail.author = REWOO Scope
Name that appears below the email text.
mail.maxAttachmentSizeInMB = 50
If a file links field is specified when defining the EMAIL system action, the files stored there are attached to the e-mail. This parameter limits the maximum size in megabytes that the attachments of an e-mail may not exceed. If the size is exceeded, the e-mail is not sent and the triggering action is canceled.
mail.firstLevelSupport = support@rewoo.com
If the software fails, the user can generate a report and have it sent as an email to this address.
mail.logging.level = [ FATAL | ERROR | WARN | INFO | DEBUG | TRACE ]
Log level above which an error message is sent by mail to the address specified under mail.firstLevelSupport. A value lower than ERROR should be avoided, since a separate e-mail is sent for each entry in the log.
phone.desktop.protocol = [ tel | callto | sip | skype | phone ]
The default protocol for phone numbers in desktop browsers. This protocol can be overridden by each user individually or by explicitly placing it in front of the phone number.
phone.mobile.protocol = [ tel | callto | sip | skype | phone ]
The default protocol for phone numbers in mobile device browsers. This protocol can be overridden by each user individually or by explicitly placing it in front of the phone number.
converter.extensionDenyList = exe,dll
Comma-separated list of file extensions to be ignored by the file converter.
converter.testFiles.path =
Absolute path to the directory containing files that are used when testing the converters via the Admin Panel.
converter.migration.maxDurationInSec = 1800
When the preview format for images is changed, all existing preview files are migrated by the ConverterJob. This parameter specifies how much time in seconds may be spent on the migration per job run.
converter.imagemagick.imageMagickHome = /usr/bin/
Absolute path to the directory where the convert program of ImageMagick is located.
converter.imagemagick.timeout = 360000
Time in milliseconds that a conversion with ImageMagick may take at most before it is aborted.
converter.imagemagick.checkMimeType = true
This switch activates the check of the MimeType against the stored white list to secure a security hole in ImageMagick (see ImageTragick).
converter.imagemagick.targetFormat = [ png | jpg | gif | bmp ]
Target image format.
converter.imagemagick.thumbnailSize = 160
Maximum width and height of thumbnail images.
converter.openoffice.openOfficeHome = /opt/LibreOffice5.x/
Absolute path to the program directory of LibreOffice or Apache OpenOffice.
converter.openoffice.ports = 8100
Port to be used by the LibreOffice Server service. A list of port numbers can also be specified here in a comma-separated list to start multiple LibreOffice servers at the same time.
converter.openoffice.timeout = 600000
Time in milliseconds that a conversion with LibreOffice may take at most before it is aborted.
converter.openoffice.killAfter = 200
Maximum number of conversions until the LibreOffice server is restarted. This is necessary for some versions of LibreOffice because more memory is reserved with each conversion.
converter.openoffice.numberOfRestartAttempts = 2
Maximum number of attempts to restart LibreOffice.
converter.openoffice.taskQueueTimeout = 30000
Maximum time in milliseconds that a conversion job may spend in the queue before it is aborted.
converter.acme.bin = /home/rewoo/rewoo/scripts/proxy-acme.sh
Absolute path to the script used to start the ACME CAD converter.
converter.acme.fallbackCTB = monochrome.ctb
Default CTB file for the conversion of DXF files.
converter.acme.timeoutMS = 360000
Time in milliseconds that a conversion with the ACME CAD Converter may take at most before it is aborted.
etlconfig.global.protectedmode = [ true | false ]
switch whether form fields are automatically added to the form (false) or not (true) if they do not exist
etlconfig.global.fileChangeWait = 2000
Time in milliseconds that the ETL process observes the file for changes before reading it in.
A set of job-specific parameters must also be created for each pre-system.
quartz.startDelay = 30000
Time between the start of Scope and the first execution of the jobs in milliseconds
quartz.queueSizePerJob = 10
Queue size per Quartz job
jobs.AnonymizerJob.cron =
Cron trigger, not needed, because only started manually
jobs.AnonymizerJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ClearTimedOutSessionsJob.cron = 0 3 * * * ? *
Cron trigger, default is three minutes after every full hour
jobs.ClearTimedOutSessionsJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ConverterJob.cron = 0 0 1 * * ? *
Cron trigger, default is every night at 1 o'clock server time
jobs.ConverterJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ConverterJob.periodInDays = 2
Creates a preview for files added in the last 2 days. If the number of days is 0, all files in the system are checked.
jobs.CreateChecksumsJob.cron = 0 0 1 * * ? *
Cron trigger, default is every night at 1 o'clock server time
jobs.CreateChecksumsJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.CreateSnapshotJob.cron =
Cron trigger, is not set, because snapshots are usually created manually
jobs.CreateSnapshotJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.DeleteElementValuesJob.cron =
Cron trigger, not needed, because only started manually
jobs.DeleteElementValuesJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ExecuteDelayedFormulaActionsJob.cron = * */5 * * * ?
Cron trigger, default is every 5 minutes
jobs.ExecuteDelayedFormulaActionsJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ExecuteETLJob.cron = */30 * * * * ?
Cron trigger, default is every 30 seconds
jobs.ExecuteETLJob.enabled = [ true | false ]
Switch whether this job is executable.
appname
is generic and can be changed to the name of the program. This allows several external jobs to be created.
jobs.ExternalLauncherJob.appname.cron
Cron expression that specifies the intervals at which the application should run.
jobs.ExternalLauncherJob.appname.enabled = [ true | false ]
Determines whether the application is executed at all.
jobs.ExternalLauncherJob.appname.path
Determines under which path the application to be executed is located. It is the responsibility of the admin to ensure that the application can actually be called.
jobs.ExternalLauncherJob.appname.timeout
The maximum time in milliseconds to wait before firing the started process. This is to prevent an external application from permanently blocking a cron thread.
jobs.FindInvalidFormulasJob.cron =
Cron trigger, not needed, because only started manually
jobs.FindInvalidFormulasJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RebuildAclJob.cron =
Cron trigger, not needed, because only started manually
jobs.RebuildAclJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RebuildSearchIndexJob.cron =
Cron trigger, not needed, because only started manually
jobs.RebuildSearchIndexJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RecordManagementJob.cron = 0 0 2 3 * ? *
Cron trigger, default is every third of the month at 2 a.m.
jobs.RecordManagementJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RecreateDependenciesJob.cron =
Cron trigger, not needed, because only started manually
jobs.RecreateDependenciesJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RecreatePrevNextJob.cron =
Cron trigger, not needed, because only started manually
jobs.RecreatePrevNextJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ReevaluateDatasheetsJob.cron =
Cron trigger, not needed, because only started manually
jobs.ReevaluateDatasheetsJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ReInitializeTableViewCacheJob.cron =
Cron trigger, not needed, because only started manually
jobs.ReInitializeTableViewCacheJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RepairByScriptJob.cron =
Cron trigger, not needed, because only started manually
jobs.RepairByScriptJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RepairDefaultFormulasJob.cron =
Cron trigger, not needed, because only started manually
jobs.RepairDefaultFormulasJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.RestoreSnapshotJob.cron =
Cron trigger, is not set, because snapshots are usually imported manually.
jobs.RestoreSnapshotJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.SearchForMalwareJob.cron =
Cron trigger, is not set because the scans are started manually
jobs.SearchForMalwareJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.UpdateIndexJob.cron = */10 * * * * ?
Cron trigger, default is every 10 seconds.
jobs.UpdateIndexJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.UpdateDayClockChangeDependenciesJob.cron = 0 0 1 * * ? *
Cron trigger, default is every night at 1 o'clock server time
jobs.UpdateDayClockChangeDependenciesJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.UpdateIntradayClockChangeDependenciesJob.cron =
Cron trigger
jobs.UpdateIntradayClockChangeDependenciesJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.ValidateChecksumsJob.cron =
Cron trigger, not needed, because only started manually
jobs.ValidateChecksumsJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.XmlExportJob.cron =
Cron trigger, not needed, because only started manually
jobs.XmlExportJob.enabled = [ true | false ]
Switch whether this job is executable.
jobs.XmlImportJob.cron =
Cron trigger, not needed, because only started manually
jobs.XmlImportJob.enabled = [ true | false ]
Switch whether this job is executable.
Include REWOO schema
REWOO Software GmbH has developed its own schema for OpenLDAP, which is based on object classes of very frequently used standard schemas. That is, it extends the object classes and/or schemas:
slapd.conf
To include the additional schema, the configuration of the OpenLDAP server must be adapted. The file rewoo.schema must be copied into the directory for the schema files and then added to slapd.conf. Add this to the list of include lines: include /etc/ldap/schema/rewoo.schema.
This might then look something like the following:
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/rewoo.schema
Then restart slapd and check the logfile for possible errors.
slapd.d
In more recent OpenLDAP versions, the concept of the slapd.conf file has been abandoned in favor of an LDIF structure in /etc/ldap/slapd.d. This means that the slapd is no longer set via a single configuration file, but via LDIF files. This means that slapd is no longer set via a single configuration file, but via LDIF files. The advantage is that changes to the configuration can be made on the fly without restarting slapd.
If you are running an OpenLDAP server with LDIF configuration, please use the file rewoo.ldif, adapt it to your environment (this concerns especially the order in which the schema should be included, probably has to be adapted) and then load it into slapd, e.g. with ldapadd.
Set up user
As soon as the slapd is available again, you can edit users who should be able to use REWOO Scope. Add the object class rewooUser as a new attribute to the affected users. Make sure that the uid, userPassword and displayName attributes are set before saving the change. Otherwise, the save will fail.
For Active Directory, we recommend setting up a new group. As AD administrator, set up a new user group, e.g. RewooUser. Add all users who will use REWOO Scope as members of the RewooUser group.
To configure REWOO Scope for use with a directory service, log in as an administrator. Switch to the configuration page. Most of the parameters you need to set up an LDAP-based directory service are already prepared with dummy entries. Since the setup is slightly different when using OpenLDAP and Active Directory Service, both services will be discussed separately in the following.
Use the edit link to set all values as required in your environment. The values are valid or active as soon as you have set them. Therefore, set the value for ldap.enabled to true only at the very end.
ldap.attribute.displayName = displayName
Attribute containing the string to be displayed instead of the login name.
ldap.attribute.email = <mail>
Attribute containing the email address of the user
ldap.attribute.username = uid
Attribute that contains the login name; identical to the name that the user specifies for login
ldap.enabled = [ true | false ]
switches authentication via LDAP on or off; if LDAP is to be used, set this value to true
ldap.isAD = [ true | false ]
switches between ActiveDirectory or LDAP; for OpenLDAP the switch remains false
ldap.only = [ true | false ]
this parameter toggles between LDAP-only authentication and mixed authentication. With pure LDAP authentication, only the LDAP is used for authentication. The REWOO database is then not used for authentication. Only applies to users with the Standard and Concurrent roles.
ldap.search.base = ou=people,dc=rewoo,dc=lan
the branch in LDAP under which to search for possible users; set this value to the branch where the users are located in your LDAP - check with your LDAP administrator, e.g. ou=people,dc=firma,dc=com
ldap.search.filter = (&(objectClass=inetOrgPerson)(objectClass=RewooUser))
sets the filter to limit the result set; ask your LDAP administrator to which object classes the REWOO users belong; the syntax corresponds to the one defined in RFC 4515
ldap.search.user = (leer)
Distinguish Name (DN) of the user who is allowed to search the LDAP, e.g. cn=search.user,dc=firma,dc=com; this is only needed if an LDAP is not allowed to be searched anonymously.
ldap.search.password = ****
sets the password for the search user; this is only needed if the LDAP may not be searched anonymously
ldap.search.referral = [ follow | ignore | throw ]
Configuration of forwarding to other LDAP servers
ldap.search.scope = [ baseObject | oneLevel | wholeSubtree ]
Configuration of the search scope
ldap.server.url = ldap://localhost
Host name of the server on which the LDAP service is running, for example, ldap://ldap.example.com.ldap.server.useTLS = [ true | false ]
Turns TLS on or off.
ldap.paging.enabled = [ true | false ]
Turns paging of search results on or off. This makes it possible to get a larger set of search results than the maximum size of a single page allows. Please note that your LDAP server must support RFC 2696 for this.
ldap.paging.size = 500
Specifies the maximum number of entries a page can contain. This switch only has an effect if ldap.paging.enabled has been set. Please note that the limit must not be set higher than the LDAP server settings generally allow.
ldap.attribute.displayName = <displayName>
this value is used to display the full name of the user instead of the login name
ldap.attribute.email = <mail>
This attribute is used to set or read the email address of the user.
ldap.attribute.username = uid
For an ActiveDirectory, please set this value to sAMAccountName.
ldap.domain = test,rewoo
Set here the name of the (Windows) domain in which the users are located. Multiple domains are separated by commas.
ldap.enabled = [false | true]
Enables or disables authentication via an AD; if AD is to be used, set this value to true.
ldap.isAD = [false | true]
set this value to true; activates a dropdown menu in the logon screen where the user can/must select the domain he wants to log on to
ldap.only = [true | false]
causes that users of the roles Standard and Concurrent can only log on via AD
ldap.search.base = cn=Users,dc=<prefix>,dc=<firma>,dc=<domain>
set here the branch under which the users are stored. Adapt <prefix>, <comapny> and <domain> to your environment, e.g. cn=Users,dc=dev,dc=rewoo,dc=com
ldap.search.filter = (&(objectClass=organizationalPerson)(objectClass=user)
(memberOf=cn=rewooUser,cn=Users,dc=<prefix>,dc=<firma>,dc=<domain>))
match <prefix>, <comapny> and <domain> to your environment, e.g.: (&(objectClass=organizationalPerson)(objectClass=user) (memberOf=cn=rewooUser,cn=Users,dc=dev,dc=rewoo,dc=com)); if you have created a different group for rewoo users than suggested above, please use that group in place of rewooUser
ldap.search.user =
setzen Sie hier den Benutzer ein, der das AD durchsuchen darf; wenn sich Benutzer aus verschiedenen Domänen einloggen können sollen, dann sollte der Search-User alle Domänen durchsuchen können dürfen, z. B. dev/search
ldap.search.password = ****
Password of the user to be used to browse the AD
ldap.search.referral = [follow | ignore | throw]
Configuration of forwarding to other LDAP servers
ldap.search.scope = [baseObject | oneLevel | wholeSubtree]
Configuration of the search scope
ldap.server.url = ldap://localhost
Host name of the server on which the Active Directory is running, e.g. ldap://directory.ka.rewoo.comldap.server.useTLS = [ true | false ]
Turns TLS on or off.
ldap.paging.enabled = [ true | false ]
Turns paging of search results on or off. This makes it possible to get a larger set of search results than the maximum size of a single page allows.
ldap.paging.size = 500
Specifies the maximum number of entries a page can contain. This switch only has an effect if ldap.paging.enabled has been set. Please note that the limit must not be set higher than the AD server settings generally allow.
Use the edit link to set all values according to your environment. All values are active as soon as you have pressed Save/Save in the edit dialog. Therefore set the value for ldap.enabled to true last.
There are two ways to secure the communication between REWOO Scope and the LDAP service.
Either enable the switch ldap.server.useTLS to use TLS.
Or use the ldaps:// protocol when specifying the server URL, so that SSL is used for the connection. To establish the SSL connection, we need a trust store, which we specify when we start the Scope server. Java comes with a tool called keytool to manage such trust stores. In the following commands, the filenames and passwords are just placeholders.
If the certificate is not known, it can be queried with the following command:
openssl s_client -showcerts -connect ldap.customer.com:636
The key is PEM encoded between the first tags -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----. Save this key with the tags in a text file, e.g. customerCA.cert.
The trust store is created with the following command:
keytool -import -file /home/rewoo/customerCA.cert -alias customerCA -keystore /home/rewoo/customerTrustStore
Secure the trust store with a password:
keytool -storepasswd -new new_storepass -keystore /home/rewoo/customerTrustStore
The following parameters must be added to the start script of the Scope server:
-Djavax.net.ssl.trustStore=/home/rewoo/customerTrustStore -Djava.net.ssl.trustStorePassword=new_storepass
To activate the changes, the Scope server must be restarted.
saml2.strict = [ true | false ]
If this switch is on, unsigned or unencrypted messages are rejected if signed or encrypted messages are enabled in the settings. In production systems, this switch should always be on.
saml2.debug = [ true | false ]
A switch to write errors to the log.
saml2.attribute.username = http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn
The name of the attribute that contains the username. If this parameter is set to "NameID", the attribute "NameID" is read instead of a normal attribute, which is a child element of the "Subject" tag in the SAML response.
saml2.sp.entityid = urn:scope.rewoo.com
Id of the service provider (must be a URI)
saml2.sp.assertion_consumer_service.url = /auth/signInSaml2
relative URL to which the IdP sends the response
saml2.sp.assertion_consumer_service.binding = urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
SAML protocol binding for the IdP response. Currently we only support HTTP POST
saml2.sp.single_logout_service.url = /auth/signOut
Relative URL to be called by the IdP after logout.
saml2.sp.single_logout_service.binding = urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
SAML protocol binding for the IdP logout message. Currently we only support HTTP redirect
saml2.sp.nameidformat = urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified
Format of the name used to identify the user. Possible formats:
saml2.sp.x509cert = -----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----
Certificate of the service provider
saml2.sp.x509certNew = -----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----
Future certificate of the service provider, to be used during key exchange
saml2.sp.privatekey = -----BEGIN PRIVATE KEY-----...-----END PRIVATE KEY-----
Private Key des Service Providers
saml2.idp.entityid =
Id of the Identity Provider
saml2.idp.single_sign_on_service.url =
URL to which the authentication request is sent
saml2.idp.single_sign_on_service.binding = urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
SAML protocol binding used for the request. Currently we only support HTTP redirect.
saml2.idp.single_logout_service.url =
Logout request URL
saml2.idp.single_logout_service.response.url =
Optional URL for the logout response of the SP to the IdP. If this URL is not specified, saml2.idp.single_logout_service.url is used.
saml2.idp.single_logout_service.binding = urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect
SAML protocol binding used for logout. Currently we only support HTTP redirect.
saml2.idp.x509cert = -----BEGIN CERTIFICATE-----...-----END CERTIFICATE-----
Certificate of the Identity Provider
saml2.idp.certfingerprint =
saml2.idp.certfingerprint_algorithm = [ sha1 | sha256 | sha384 | sha512 ]
saml2.security.nameid_encrypted = [ true | false ]
Switch whether the name is sent encrypted by the SP.
saml2.security.want_nameid_encrypted = [ true | false ]
Switch whether the name is sent encrypted by the IdP.
saml2.security.authnrequest_signed = [ true | false ]
Switch whether the authentication request is signed by the SP.
saml2.security.logoutrequest_signed = [ true | false ]
Switch whether the logout request is signed by the SP.
saml2.security.logoutresponse_signed = [ true | false ]
Switch whether the logout response is signed by the SP.
saml2.security.want_messages_signed = [ true | false ]
Switch whether the SP expects the data received from the IdP to be signed.
saml2.security.want_assertions_signed = [ true | false ]
Switch whether the SP expects the assertions received from the IdP to be signed.
saml2.security.want_assertions_encrypted = [ true | false ]
Switch whether the SP expects the assertions received from the IdP to be encrypted.
saml2.security.sign_metadata =
Switch whether the metadata of the SP should be signed
saml2.security.requested_authncontext = urn:oasis:names:tc:SAML:2.0:ac:classes:Password
Multiple values can be specified separated by commas.
saml2.security.requested_authncontextcomparison = exact
saml2.security.want_xml_validation = [ true | false ]
Switch whether the SP should validate all received XML.
saml2.security.signature_algorithm = http://www.w3.org/2001/04/xmldsig-more#rsa-sha256
Possible values:
saml2.security.digest_algorithm = http://www.w3.org/2001/04/xmlenc#sha256
Possible values:
saml2.security.reject_deprecated_alg = [ true | false ]
Switch whether old algorithms (sha1) should be rejected.
saml2.parsing.trim_name_ids = [ true | false ]
Switch whether to trim name IDs when parsing (against the SAML specification).
saml2.parsing.trim_attribute_values = [ true | false ]
Switch whether to trim attribute values when parsing (against the SAML specification).
saml2.organization.name = REWOO Software GmbH
saml2.organization.displayname = REWOO Scope
saml2.organization.url = https://rewoo.de
saml2.organization.lang = en_US
saml2.contacts.technical.given_name = REWOO Administrator
saml2.contacts.technical.email_address = administration@rewoo.com
saml2.contacts.support.given_name = REWOO Support
saml2.contacts.support.email_address = support@rewoo.com
mobile.global.css =
This parameter can be used to specify additional CSS definitions for the HTML client that apply globally. This code is loaded after the default CSS files (Bootstrap framework and Scope specific customizations) but before datasheet specific CSS. This makes it possible to customize the HTML client to match the style of your own corporate design.
mobile.global.javascript =
This parameter can be used to set global javascript for the HTML client.
mobile.global.meta =
This parameter can be used to set global meta tags for the HTML client.
mobile.calendar.css =
This parameter can be used to set CSS definition for calendars.
mobile.calendar.javascript =
This parameter can be used to set javascript for caledars.
mobile.kanban.css =
This parameter can be used to set CSS definition for Kanban boards.
mobile.kanban.javascript =
This parameter can be used to set javascript for Kanban boards.
mobile.tableview.css =
This parameter can be used to set CSS definition for table views.
mobile.tableview.javascript =
This parameter can be used to set javascript for table views.
mobile.taskview.css =
This parameter can be used to set CSS definition for task views.
mobile.taskview.javascript =
This parameter can be used to set javascript for task views.
visualization.clusterByType = 15
If the number of objects, processes or aspects of the same type is greater than the specified value, the elements are grouped.
visualization.cluster.objects = 15
If the number of objects of the same type is greater than the specified value, the elements are grouped.
These settings override the value specified in visualization.clusterByType for this particular case.
visualization.cluster.objectAspects = 15
If the number of aspects of the same type below objects is greater than the specified value, the elements are grouped.
These settings override the value specified in visualization.clusterByType for this particular case.
visualization.cluster.processes = 15
If the number of processes of the same type is greater than the specified value, the elements are grouped.
These settings override the value specified in visualization.clusterByType for this particular case.
visualization.cluster.processAspects = 15
If the number of aspects of the same type below processes is greater than the specified value, the elements are grouped.
These settings override the value specified in visualization.clusterByType for this particular case.
user.versionAuthor.visible = [ true | false ]
This parameter can be used to set whether the name of the authors/editors is displayed in the version history below the datasheet or in the value history widget or remains hidden.
mobile.designer.layout.screenSize = [ sm | md | lg | xl | xxl ]
This parameter specifies the screen size that is displayed when the layout designer is opened.
mobile.menu.style = [ labels | icons | hidden ]
If the switch is set to labels, the sandwich button is only displayed when the screen size falls below a certain value; otherwise the menu is permanently visible with icons and labels. If this option is set to icons the menu is permanently visible showing only the icons. If this option is set to hidden, the menu in the HTML client is collapsed by default and can only be opened using the sandwich button.
datasheet.onTabSwitch = [ discard | save ]
This switch selects the strategy of what happens when values on the form have been changed and the user switches tabs.
datasheet.validate.onLoad.enabled = [ true | false ]
If this switch is set to true, the values are checked after loading the datasheet, e.g. whether mandatory fields are filled in.
datasheet.validate.requiredWarning.enabled = [ true | false ]
If this switch is set to true, an error text will be shown for required fields that have not been filled in, otherwise these fields will only be outlined in red.
datasheet.fileLinks.downloadOnClick = [ false | true ]
By default, clicking the name of a file stored in REWOO Scope will open the preview (if it is available for the file format). In order to be able to download the file, a download icon is also displayed to the left of the file name. If, on the other hand, the parameter is set to true, the file is downloaded when the file name is clicked. To open the preview, a button in the form of an eye symbol is then available to the left of the file name.
datasheet.richtext.buttons = Undo,Redo,Bold,Italic,Underline,NumberedList,BulletedList,Outdent,Indent,JustifyLeft,JustifyCenter,JustifyRight,JustifyBlock,FontSize,TextColor
List of buttons of WYSIWYG editors in the application. Settings to RichText entries override this list. Possible buttons are: Cut, Copy, Paste, Undo, Redo, Bold, Italic, Underline, Strike, Subscript, Superscript, NumberedList, BulletedList, Outdent, Indent, JustifyLeft, JustifyCenter, JustifyRight, JustifyBlock, Font, FontSize, TextColor, BGColor, Format, Source, About
datasheet.richtext.resizable = [ false | true ]
Determines whether WYSIWYG editors can be resized. Settings on RichText entries override this switch.
datasheet.signature.forceInvalidationOnValueChange = [ false | true ]
If the switch is set to false and value changes invalidate signatures, a dialog appears asking if the user wants to continue.
datasheet.table.buttonPosition = [ left | right ]
By default, the plus and minus buttons are displayed on the right side of each table row. If the value is set to left, both buttons on the left side are rendered mirror-inverted (i.e. first the plus, then the minus button).
datasheet.breadcrumb.enabled = [ false | true ]
Determines whether a breadcrumb is displayed above the datasheet. Since all datasheets are hooked into a tree structure, the breadcrumb shows all parent elements.
datasheet.footer.enabled = [ false | true ]
Determines whether information such as the version timestamp, the author of the last change, and the status is displayed below the datasheet.
datasheet.quickOperationsPopup.position = [ disabled | topLeft | center | bottomLeft | bottomRight ]
If the user has made changes on the current datasheet and scrolled down a little, a small pop-up is displayed at the configured position, which can be used to save or discard the changes.
datasheet.quickOperationsPopup.size = [ small | standard | large ]
This parameter defines the size of the pop-up.
datasheet.quickOperationsPopup.yOffset = 250
This parameter defines how many pixels the user has to scroll down until the quick save pop-up appears. 0 means the pop-up is always visible.
tableview.mailButton.enabled = [ false | true ]
If a table view with selectable rows contains a column of the type Email, then after setting this option a "Send Mail" button will automatically appear when opening the table view. If the user now selects one or more rows and clicks on the button, a new mail will open in the user's default email client with the selected addresses as recipients. Attention: if there is more than one email column in the table view, the leftmost column of the definition will be selected.
tableview.pagingSize = 50
Number of rows that are displayed on one page of a table view. If the number of rows of a table view exceeds the value entered here, another page is created, which the user can reach via the navigation bar of the table view.
tableview.filter.storable = [ false | true ]
This switch enables the users to save filter settings for table views.
tableview.filter.maxInitialColumns = 5
If the table view is unfiltered, filter entries are displayed in the filter dialog for the n columns from the left table border.
tableview.imageSize = 60
Maximum width and height of thumbnails in pixels, if a Image entry is used as column in the table view.
tableview.groups.expand = [ none | first | all ]
Determines which groups are expanded after loading the list of table views.
tableview.chart.defaultColor = #0069c0
This color is the default color for bars in a chart above a table view.
tableview.chart.defaultColors = #2196F3,#ff9800,#4caf50,#f44336,#9c27b0,#795548,#6ec6ff,#ffc947,#80e27e,#ff7961,#d05ce3,#a98274,#0069c0,#c66900,#087f23,#ba000d,#6a0080,#4b2c20
This list of colors is used for bars in a chart above a table view when these bars are segmented. The values are sorted and the colors are assigned accordingly in the specified order. If too few colors are defined, the list is started again from the beginning.
tableview.chart.emptyColor = #707070
This color is used for bars without value in a chart above a table view.
tableview.chart.redColor = #cc2828
This red is used for TrafficLights and Conditions in a chart above a table view.
tableview.chart.yellowColor = #ffc400
This yellow is used for TrafficLights and Conditions in a chart above a table view.
tableview.chart.greenColor = #53ba50
This green is used for TrafficLights and Conditions in a chart above a table view.
tableview.bulkChange.date = [ input | offset ]
With input a fixed date is set for all selected rows, with offset all date values are shifted by the specified time span. To enable bulk changes in a table view, the access right of the corresponding column must be set to bulk change and the 'Rows selectable' option must be enabled.
calendar.defaultColor = #ff7961
This color is the default color for appointments in a calendar.
calendar.colors = #6ec6ff,#ffc947,#80e27e,#ff7961,#d05ce3,#a98274,#2196F3,#ff9800,#4caf50,#f44336,#9c27b0,#795548
This list of colors is used for the categories in calendars. The categories are sorted alphabetically and the colors are assigned accordingly in the given order. If too few colors are specified, the list is started again from the beginning.
calendar.emptyColor = #cccccc
This color is used for appointments without category.
mobile.navigator.style = [ finder | legacy ]
The setting finder
activates a display of the hierarchy in lists like it is used in the Finder of macOS. With legacy you get the old navigator which only shows the current level and the path.
mobile.navigator.elementLinkOpensDatasheet = [ false | true ]
Determines whether the corresponding data sheet should be opened when an element is clicked in the legacy navigator of the HTML view (value "true") or whether the child elements should be displayed in this case (value "false"). Please note that even if this option is set, the data sheet is only actually displayed if it contains form fields that are to be displayed. If the datasheet is completely empty, no white datasheet will be displayed, but instead it will automatically scroll to the overview of the child elements.
mobile.navigator.visibleStates = IN_PLANNING,ACTIVE,ON_HOLD,CLOSED
List of statuses that are visible in the HTML navigator for normal users.
mobile.lightbox.forcePDFJS = [ false | true ]
Specifies whether to force the use of pdf.js or to use the browser's own PDF renderer if it is available.
mobile.noRights.redirect = [ home | navigator | search | tables ]
This switch determines which view the user is redirected to when he calls up a data sheet but does not have permission to do so.
datasheet.connectionButton.noRights = [ ask | redirect ]
This switch determines what happens if the user removes the rights to the current datasheet from himself with a ConnectionButton. Either a dialog appears explaining the situation and offering the redirects as buttons, or the user is redirected directly.
account.list.lengthMenu = [10,25,50,100]
This list is offered to the user as a dropdown.
account.list.pageLength = 10
This size of the account list is used when it is opened for the first time. The user can change the table via the size menu.
loginTimeout = 1800
Time in seconds until the user is logged out due to inactivity.
feature.bookmarks.enabled = [ true | false ]
Switch whether the creation of bookmarks is available.
feature.calendar.enabled = [ true | false ]
Switch whether calendars are available.
feature.imageEditor.enabled = [ false | true ]
Switch whether the image editor is available.
feature.kanban.enabled = [ true | false ]
Switch whether kanban boards are available.
feature.meetings.enabled = [ true | false ]
Switch whether video meetings are available.
feature.messages.enabled = [ true | false ]
Switch whether the Scope message system is available. If the message system is switched off, the corresponding program parts such as Inbox and Configuration are hidden.
feature.multitenancy.enabled = [ true | false ]
Switch whether multitenancy is available.
feature.saml2.enabled = [ true | false ]
Switch whether Saml2 is available as authentication method.
feature.taskView.enabled = [ true | false ]
Switch whether task views are available.
feature.ocr.enabled = [ true | false ]
Switch whether optical character recognition (OCR) is available.
message.mute = [ true | false ]
Switch to globally enable or disable the sending of scope messages.
message.stateChange.mute = [ true | false ]
Switch to globally enable or disable the messages about status changes. These messages have a noticeable impact on runtime. It is better to use Condition entries, a status condition and the system action MESSAGE to generate messages about status changes where they are of interest.
file.storagedir = /home/rewoo/rewoo-admin/storage/rewoo
Absolute path to the REWOO Scope storage directory for the files, preview files, PDFs, search index, ETL scripts and ETL files.
file.ocrmypdf.path =
Absolute path to the executable ocrmypdf to perform OCR for PDF files and images.
file.ocrmypdf.acceptedInput = pdf,jpg,png
Comma separated list of file formats accepted for OCR.
file.ocrmypdf.timeout = 20
Timeout in seconds for the tool ocrmypdf.
file.maxSizeInMB = 100
Sets the maximum size in megabytes that a single file can have in file fields (FileLinks, Image, SpreadsheetFile). When trying to upload larger files, an error message is displayed to the user and the respective file is not uploaded. The limit does not apply to FileLinks entries as a whole, but only to individual files.
file.maxDragNDropSizeInMB = 10
Sets the maximum size in megabytes for drag'n'drop actions in the web interface. The value refers to the total size of the files. Attention, limitations of the used browser still apply.
file.hash.algorithm = [ MD2 | MD5 | SHA1 | SHA224 | SHA256 | SHA384 | SHA512 | SHA3_224 | SHA3_256 | SHA3_384 | SHA3_512 ]
A checksum is calculated for each file stored in Scope in order to be able to check the integrity of the file at a later time. Several hash algorithms are available for this purpose. We recommend at least SHA256. To use the SHA3 algorithms, at least Java 9 must be used.
output.mailmerge.method = [ auto | new ]
The new algorithm supports printing Table and Image and is faster for high volume printing, but it does not support placeholders in headers and footers. In the "auto" setting, the new algorithm is taken only if placeholders for Table or Image are included in the template.
auth.login.type = [ username | email ]
This switch specifies whether users log in with their name or with their email address.
auth.directAdmin.enabled = [ false | true ]
This switch specifies whether accounts of type Power or Admin have direct access to the administrative functions Designer, Account Management and Admin Panel, or whether this access must first be enabled for the current session. If direct access is disabled, the application looks like it does for normal users.
auth.ignoreRequestLocale = [ false | true ]
This switch specifies whether or not the language setting supplied by the browser should be respected on the login screen. If it is ignored, the setting in defaultUserLocale applies.
auth.constLoginTimeInMs = 300
The password verification time is artificially extended to this duration to make attacks more difficult.
auth.password.generate.length = 16
The length of passwords that are automatically generated: in the settings, when creating new accounts, when the user requests a new password, or when the administrator resets the accounts' passwords (always assuming that the accounts do not authenticate via AD, LDAP, or SAML).
auth.password.minLength = 8
The minimum length of passwords that the user can set.
auth.sessionCookie.secure = [ false | true ]
When the user has successfully logged in, a session cookie is set. This switch determines whether the cookie should only be transferred for encrypted https connections (true) or always (false). This switch should be set to true to prevent man-in-the-middle attacks.
auth.password.httpOnly = [ false | true ]
When the user has successfully logged in, a session cookie is set. This switch determines whether the cookie can be read via Javascript (false) or not (true). This switch should be set to true to prevent cross-site scripting (XSS) attacks.
auth.password.sameSite = [ STRICT | LAX | NONE ]
When the user has successfully logged in, a session cookie is set. This switch determines whether the cookie should be transferred exclusively to the server that generated the cookie (STRICT), whether the cookie should also be transferred when navigating links (LAX), or whether there are no restrictions on cross-site requests (NONE). This switch should be set to STRICT to ensure maximum security of user sessions.
auth.sessionCookie.name = JSESSIONID
auth.mfa.enabled = [ true | false ]
This switch can be used to disable two-factor authentication for all users.
auth.mfa.secret.length = 54
With two-factor authentication, the server and an app on a user's mobile device share a secret. With the current time and this secret, both sides can calculate the currently valid one-time password.
auth.mfa.code.digits = 6
The number of digits of the one-time password.
auth.mfa.code.period = 60
The time in seconds that the one-time password is valid.
auth.mfa.code.hash = [ SHA1 | SHA256 | SHA512 ]
With two-factor authentication, the server and an app on a user's mobile device share a secret. With the current time and this secret, both sides can calculate the currently valid one-time password.
auth.redirect = [ basic | saml ]
If the user does not have a valid session, he will be redirected either to the login screen or to the SAML login.
account.creation.authorizedRoles = ADMIN,POWER
The roles specified here are allowed to create new accounts based on a user template. Possible roles are ADMIN, POWER, CONCURRENT and STANDARD.
account.login.onlyObjectNodes = [ true | false ]
This switch specifies whether login nodes may only occur below objects or everywhere.
account.stateFollowsLoginState.enabled = [ true | false ]
When the login node changes state, the account associated with it follows. If the node becomes active or inactive, the account is also activated or deactivated. If the node is closed, archived or discarded, the account is terminated and can no longer be used.
user.taskList.size = 500
All long-running actions by CopyButtons or ActionButtons are started as an asynchronous task. This parameter controls the size of the list, which includes processed tasks.
clamav.bin = /usr/bin/clamscan
Absolute path to the malware scanner ClamAV.
datasheet.bidirectional_prev_next.enabled = [ true | false ]
Switch for automatic linking of PrevLinks and NextLinks entries, so that adding or deleting links on one side leads to automatic adjustment on the opposite side. For internal system reasons, the option may only be set with the previous, static calculation of the predecessor and successor nodes. The configuration parameter described under Algorithm for determining predecessor and successor nodes must therefore be set to false when used.
datasheet.legacy_prev_next.enabled = [ true | false ]
Since version 10.7.2 two different variants are available to fill the PrevLinks and NextLinks entries. With the previous variant (=true) PrevLinks and NextLinks entries must be filled with explicitly named target nodes. It is thus not possible, for example, to refer to another ElementLinks entry, which in turn then defines the actual target nodes. The new algorithm (=false) can handle such calculated targets. However, it may only be used if the option described in Bidirectional Prev/Next has been turned off.import.solutions.url = https://trial.rewoo.net/solutions/solutions.xml
Internet address for the list of pre-modeled solutions. The preassignment points to the list of solutions provided by REWOO Software GmbH.
logs.debugScript = /home/rewoo/rewoo/scripts/debug.sh
Absolute path to the script that can be used to create a debug package via the admin panel.
logs.pageSize = 200
Number of lines to load from a log file at once.
app.displayName = REWOO Scope
The name configured here is used everywhere to name the software.
app.publicUrl = https://rewoo.de/rewoo
URL through which the application can be reached via the Internet. This url is used, for example, for WebDAV links in the application or for links in emails.
app.logo.path =
Absolute path to an image file in PNG format with maximum 240x240 pixels to be used as logo. If no file is specified, the Scope logo is used.
app.logo.maxWidth = 250
If the image is wider than the width specified here, the image is reduced in size while maintaining the aspect ratio. If the image is narrower, it is not enlarged. The default setting is 250 pixels.
app.logo.maxHeight = 250
If the image is taller than the height specified here, the image is reduced in size while maintaining the aspect ratio. If the image is less high, it is not enlarged. The default setting is 250 pixels.
app.logo.navmenu.enabled = [ false | true ]
Activates the display of the logo at the bottom of the page menu.
app.disclaimer.enabled = [ false | true ]
Activates the display of a dialog with information for the user directly after login. The user can suppress the future display. If the text is changed, these marks are removed for all users and the dialog appears again.
app.disclaimer.title = Disclaimer
Title of the dialog with user information.
app.disclaimer.text =
Text of the dialog with user information.
app.login.background = [ dark | light | custom ]
The background color of the login screen can be switched between dark and light. The font color is adjusted accordingly. If the value is set to custom, the two switches app.login.color and app.login.backgroundColor can be used to choose the colors.
app.login.color = #1A365B
The font color of the login screen, if app.login.background is set to custom.
app.login.backgroundColor = #fcfcfc
The background color of the login screen, if app.login.background is set to custom.
app.colorScheme.enabled = [ true | false ]
If the users can switch between light and dark mode.
app.localManual = [ true | false ]
Switch, if the links to the manual open the local manual or the online version.
webhooks.enabled = [ false | true ]
Enables the possibility to couple other services to Scope using webhooks.
prefetch.elements.minChangedElementsPerTle = 30
When making changes to elements (e.g. a status change), REWOO Scope often has to read out the rights that the individual users have to these elements. In some cases (e.g. closing a larger element hierarchy), it may be more convenient from a runtime point of view to read out all rights at once instead of determining them one by one. This configuration parameter specifies from which set of element changes under a top-level element all rights should be read at once. Since this can be a very expensive operation under certain circumstances, the limit should not be set too low. Regardless of the value set here, the system ensures that all permissions are read if the element change refers to a top-level element itself. If the value is set to 0, all rights are always read. This corresponds to the behavior before version 13.
prefetch.userRights.maxConnectionsPerNode = 50
When changes are made to the authorization graph, all rights related to a node are normally read from the database at once. In unfavorable cases, this means that a lot of data is read unnecessarily. For example, if a new relationship is added for only one user, the rights on all other relationships are irrelevant. Therefore it can be useful for some modeling to reduce this value, because most rights are only assigned individually and not via role nodes.
prefetch.values.minEntriesPerForm = 1
For calculations using the formula language, normally all values of referenced forms are read from the database. With very large forms this can lead to very expensive read operations. This switch determines from how many referenced entries the whole datasheet is read. If this switch is set to 1, all values are always read.
prefetch.dependencies.minEntriesPerForm = 10000
For calculations using the formula language, normally only the dependencies to the referenced entries are read from the database. If the forms contain a lot of entries and these are strongly linked to each other via formulas, it may make more sense to read all dependencies of the form at once.
tableview.cachevalues.enabled.ids = 14[,15,16,...]
Table views can possibly include a great many datasheets and values. To speed up access to particularly large and slow views, this configuration parameter can be used to store the REWOO Scope internal IDs of the table views for which all values are to be permanently held in memory. After adding the IDs, the corresponding values are automatically read and stored in memory. The system also automatically synchronizes the cache when new elements are added, existing values are changed or the definitions of the table views are modified. The easiest way to determine the IDs of the table views is to open the respective view in the HTML client and read them from the URL in the browser. Thus, a fictitious table view with the link https://rewoo.net/test/mobile/tableViews/14
has the ID 14 because the URL ends with the number 14.maintenance.service.enabled = [ true | false ]
This switch can be used to prevent or allow the general use of the Scope Maintenance server.
maintenance.service.postgres.path=/usr/bin/
Absolute path to the local Postgres installation on the REWOO Scope server. The path must be accessible for the Scope maintenance server.
maintenance.service.postgres.port = 5432
Port of the local Postgres installation on the REWOO Scope server. The port must be accessible for the Scope maintenance server.
maintenance.service.postgres.password =
Password to the database used by the REWOO Scope server. The password for the database user must be entered here. Alternatively, the field can be left blank if a ".pgpass" file exists in the file system and has been configured correctly.
.pgpass
file. For more information on using .pgpass, see the official PostgreSQL documentation.maintenance.service.external.url = http://localhost:8081/scope-maintenance-server
The URL through which the Scope maintenance server can be reached from the clients. Normally, the maintenance server is located on the same computer as REWOO Scope when viewed from the outside. Any forwarding to a different, internal address is then achieved by the Apache web server and a corresponding ProxyPass rule. localhost must therefore be replaced here by the address of the REWOO Scope server.
maintenance.service.internal.url = http://localhost:8081/scope-maintenance-server
The URL through which the Scope maintenance server can be reached from the REWOO Scope server. By default, the maintenance server runs on the same physical machine as REWOO Scope, so localhost should be the correct server address.
maintenance.service.jmx.port = 5050
The Scope Maintenance Server accesses some functions of the REWOO Scope Server via the JMX protocol. By default, port 5050 is used for this purpose, which is already preset.
maintenance.service.jmx.instance.key = [ context | name ]
The keyword for the name of the web application is context since Jetty 9, for Jetty 7 and 8 this parameter must be set to name.