# Configuration properties glossary

- Introduction

- Mandatory properties

- Binary repository

- Client

- Database

- Glacier2

- Grid

- Ice

- JVM

- LDAP

- Logging

- Mail

- Metrics

- Name

- Performance

- Pixeldata

- Policy

- Ports

- Qa

- Query

- Scripts

- Search

- Security

- Server

- Web

## Introduction

The primary form of configuration is via the use of key/value properties, stored in `etc/grid/config.xml` and read on server startup. Backing up and copying these properties is as easy as copying this file to a new server version.

The https://github.com/ome/openmicroscopy/blob/develop/etc/omero.properties file of your distribution defines all the default configuration properties used by the server. Changes made to the file are not recognized by the server. Instead, configuration options can be set using the omero config set command:

    $ omero config set <parameter> <value>

When supplying a value with spaces or multiple elements, use single quotes. The quotes will not be saved as part of the value (see below).

To remove a configuration option (to return to default values where mentioned), simply omit the value:

    $ omero config set <parameter>

These options will be stored in a file: `etc/grid/config.xml` which you can read for reference. DO NOT edit this file directly.

You can also review all your settings by using:

    $ omero config get

which should return values without quotation marks.

A final useful option of omero config edit is:

    $ omero config edit

which will allow for editing the configuration in a system-default text editor.

Note

Please use the escape sequence `\"` for nesting double quotes (e.g. `"[\"foo\", \"bar\"]"`) or wrap with `'` (e.g. `'["foo", "bar"]'`).

Examples of doing this are on the server installation page, as well as the LDAP installation page.

## Mandatory properties

The following properties need to be correctly set for all installations of the OMERO.server. Depending on your set-up, default values may be sufficient.

- `omero.data.dir`

- `omero.db.host`

- `omero.db.name`

- `omero.db.pass`

## Binary repository

property omero.checksum.supported

### omero.checksum.supported

Checksum algorithms supported by the server for new file uploads, being any comma-separated non-empty subset of:

- Adler-32

- CRC-32

- MD5-128

- Murmur3-32

- Murmur3-128

- SHA1-160

- File-Size-64

In negotiation with clients, this list is interpreted as being in descending order of preference.

Default: SHA1-160, MD5-128, Murmur3-128, Murmur3-32, CRC-32, Adler-32, File-Size-64

property omero.data.dir

### omero.data.dir

Default: /OMERO/

property omero.fs.repo.path

### omero.fs.repo.path

Value dynamically set during the build Template for FS managed repository paths. Allowable elements are:

    %user%         bob
    %userId%       4
    %group%        bobLab
    %groupId%      3
    %year%         2011
    %month%        01
    %monthname%    January
    %day%          01
    %time%         15-13-54.014
    %institution%  University of Dundee
    %hash%         0D2D8DB7
    %increment%    14
    %subdirs%      023/613
    %session%      c3fdd5d8-831a-40ff-80f2-0ba5baef448a
    %sessionId%    592
    %perms%        rw----
    %thread%       Blitz-0-Ice.ThreadPool.Server-3
    /              path separator
    //             end of root-owned directories

These are described further at FS configuration options

The path must be unique per fileset to prevent upload conflicts, which is why %time% includes milliseconds.

A // may be used as a path separator: the directories preceding it are created with root ownership, the remainder are the user’s. At least one user-owned directory must be included in the path.

The template path is created below `omero.managed.dir`, e.g. `/OMERO/ManagedRepository/$omero.fs.repo.path/`

Default: %user%_%userId%//%year%-%month%/%day%/%time%

property omero.fs.repo.path_rules

### omero.fs.repo.path_rules

Rules to apply to judge the acceptability of FS paths for writing into `omero.managed.dir`, being any comma-separated non-empty subset of:

- Windows required

- Windows optional

- UNIX required

- UNIX optional

- local required

- local optional

Minimally, the “required” appropriate for the server is recommended. Also applying “optional” rules may make sysadmin tasks easier, but may be more burdensome for users who name their files oddly. “local” means “Windows” or “UNIX” depending on the local platform, the latter being applied for Linux and Mac OS X.

Default: Windows required, UNIX required

property omero.managed.dir

### omero.managed.dir

Default: ${omero.data.dir}/ManagedRepository

## Client

property omero.client.browser.thumb_default_size

### omero.client.browser.thumb_default_size

The default thumbnail size

Default: 96

property omero.client.download_as.max_size

### omero.client.download_as.max_size

Clients disable download as jpg/png/tiff above max pixel count.

Default: 144000000

property omero.client.icetransports

### omero.client.icetransports

Comma separated list of Ice transports available to clients. The default value (“ssl,tcp”) instructs Ice to open the ports specified by the omero.ports.ssl and omero.ports.tcp properties. Restricting to “ssl” will prevent all non-encrypted connections to the OMERO server.

Additionally, there are two experimental values for using websockets: “ws” and “wss” for unencrypted and encrypted, respectively. The ports that are opened are controlled by the omero.ports.ws and omero.ports.wss properties. To enable all possible protocols use: “ssl,tcp,wss,ws”.

Note: When using websockets behind a web server like nginx, additional configuration may be needed.

Default: ssl, tcp

property omero.client.scripts_to_ignore

### omero.client.scripts_to_ignore

Server-side scripts used in IScript service Clients shouldn’t display.

Default: /omero/figure_scripts/Movie_Figure.py, /omero/figure_scripts/Split_View_Figure.py, /omero/figure_scripts/Thumbnail_Figure.py, /omero/figure_scripts/ROI_Split_Figure.py, /omero/export_scripts/Make_Movie.py, /omero/import_scripts/Populate_ROI.py

property omero.client.ui.menu.dropdown.colleagues.enabled

### omero.client.ui.menu.dropdown.colleagues.enabled

Flag to show/hide colleagues

Default: true

property omero.client.ui.menu.dropdown.colleagues.label

### omero.client.ui.menu.dropdown.colleagues.label

Client dropdown menu colleagues label.

Default: Members

property omero.client.ui.menu.dropdown.everyone.enabled

### omero.client.ui.menu.dropdown.everyone.enabled

Flag to show/hide all users.

Default: true

property omero.client.ui.menu.dropdown.everyone.label

### omero.client.ui.menu.dropdown.everyone.label

Client dropdown menu all users label.

Default: All Members

property omero.client.ui.menu.dropdown.leaders.enabled

### omero.client.ui.menu.dropdown.leaders.enabled

Flag to show/hide leader.

Default: true

property omero.client.ui.menu.dropdown.leaders.label

### omero.client.ui.menu.dropdown.leaders.label

Client dropdown menu leader label.

Default: Owners

property omero.client.ui.tree.orphans.description

### omero.client.ui.tree.orphans.description

Description of the “Orphaned images” container.

Default: This is a virtual container with orphaned images. These images are not linked anywhere. Just drag them to the selected container.

property omero.client.ui.tree.orphans.enabled

### omero.client.ui.tree.orphans.enabled

Flag to show/hide “Orphaned images” container. Only accept “true” or “false”

Default: true

property omero.client.ui.tree.orphans.name

### omero.client.ui.tree.orphans.name

Name of the “Orphaned images” container located in client tree data manager.

Default: Orphaned Images

property omero.client.ui.tree.type_order

### omero.client.ui.tree.type_order

Client tree type order rank list first type is ranked 1 (the highest), last is the lowest if set to ‘false’ empty list allows mixing all types and sorting them by default client ordering strategy

Default: tagset, tag, project, dataset, screen, plate, acquisition, image

property omero.client.viewer.initial_zoom_level

### omero.client.viewer.initial_zoom_level

Initial client image viewer zoom level for big images

Default: 0

property omero.client.viewer.interpolate_pixels

### omero.client.viewer.interpolate_pixels

Client viewers interpolate pixels by default.

Default: true

property omero.client.viewer.roi_limit

### omero.client.viewer.roi_limit

Client viewers roi limit.

Default: 2000

property omero.client.web.host

### omero.client.web.host

Absolute omeroweb host http(s)://your_domain/prefix/

Default: [empty]

## Database

property omero.db.authority

### omero.db.authority

The string that will be used as the base for LSIDs in all exported OME objects including OME-XML and OME-TIFF. It’s usually not necessary to modify this value since the database UUID (stored in the database) is sufficient to uniquely identify the source.

Default: export.openmicroscopy.org

property omero.db.dialect

### omero.db.dialect

Implementation of the org.hibernate.dialect.Dialect interface which will be used to convert HQL queries and save operations into SQL SELECTs and DML statements.

(PostgreSQL default)

Default: ome.util.PostgresqlDialect

property omero.db.driver

### omero.db.driver

JDBC driver used to access the database. Other drivers can be configured which wrap this driver to provide logging, monitoring, etc.

(PostgreSQL default)

Default: org.postgresql.Driver

property omero.db.host

### omero.db.host

The host name of the machine on which the database server is running. A TCP port must be accessible from the server on which OMERO is running.

Default: localhost

property omero.db.name

### omero.db.name

The name of the database instance to which OMERO will connect.

Default: omero

property omero.db.pass

### omero.db.pass

The password to use to connect to the database server

Default: omero

property omero.db.patch

### omero.db.patch

The patch version of the database which is in use. This value need not match the patch version of the server that is is being used with. Any changes by developers to the database schema will result in a bump to this value.

Default: 0

property omero.db.poolsize

### omero.db.poolsize

Sets the number of database server connections which will be used by OMERO.

A sizeable increase in this value, e.g. to 100, will significantly increase the performance of your server, but your database installation will need to be configured to accept at least as many, preferably more, connections as this value.

The related values omero.threads.max_threads and omero.threads.background_threads do not need to be increased by the same amount. A system will be more stable if background_threads is less than max_threads and max_threads is less than poolsize.

Default: 10

property omero.db.port

### omero.db.port

TCP port on which the database server is listening for connections. Used by the JDBC driver to access the database. Use of a local UNIX socket is not supported.

(PostgreSQL default)

Default: 5432

property omero.db.prepared_statement_cache_size

### omero.db.prepared_statement_cache_size

Default: 10

property omero.db.profile

### omero.db.profile

Default values for the current profile will be hard-coded into the hibernate.properties file in the model-*.jar. By using a different jar, you can modify the defaults.

Note: some other properties are defined in the file `etc/profiles/$omero.db.profile` Especially of importance is `omero.db.port` Set during the build

Default: psql

property omero.db.properties

### omero.db.properties

Properties to set on OMERO.server’s JDBC connection to the database. See https://jdbc.postgresql.org/documentation/use/#connecting-to-the-database

Default: [empty]

property omero.db.sql_action_class

### omero.db.sql_action_class

Implementation of the ome.util.SqlAction interface which will be used to perform all direct SQL actions, i.e. without Hibernate.

(PostgreSQL default)

Default: ome.util.actions.PostgresSqlAction

property omero.db.statistics

### omero.db.statistics

Whether JMX statistics are collected for DB usage (by Hibernate, etc)

Default: true

property omero.db.url

### omero.db.url

The URL specifying how the Java driver connects to the database system.

Default: jdbc:postgresql://${omero.db.host}:${omero.db.port}/${omero.db.name}?ApplicationName=OMERO.${omero.name}&${omero.db.properties}

property omero.db.user

### omero.db.user

The username to use to connect to the database server

Default: omero

property omero.db.version

### omero.db.version

Version of the database which is in use. This value typically matches the major.minor version of the server that it is being used with. Typically, only developers will change this version to bump to a new major version.

Default: OMERO5.4

## Glacier2

property omero.glacier2.IceSSL

### omero.glacier2.IceSSL

Glacier2Template IceSSL defaults and overrides, see https://doc.zeroc.com/ice/3.6/property-reference/icessl. Any property beginning `omero.glacier2.IceSSL.` will be used to update the corresponding IceSSL. property.

Default: [empty]

property omero.glacier2.IceSSL.Ciphers

### omero.glacier2.IceSSL.Ciphers

Glacier2Template SSL allowed cipher suites

Default: ADH:!LOW:!MD5:!EXP:!3DES:@STRENGTH

property omero.glacier2.IceSSL.ProtocolVersionMax

### omero.glacier2.IceSSL.ProtocolVersionMax

Glacier2Template SSL maximum allowed protocol (mac bug)

Default: tls1_1

property omero.glacier2.IceSSL.Protocols

### omero.glacier2.IceSSL.Protocols

Glacier2Template SSL allowed protocols

Default: tls1

property omero.glacier2.IceSSL.VerifyPeer

### omero.glacier2.IceSSL.VerifyPeer

Glacier2Template SSL verification requirements

Default: 0

## Grid

property omero.cluster.read_only

### omero.cluster.read_only

Deprecated. If true, will override both the db and repo properties to be true.

Default: false

property omero.cluster.read_only.db

### omero.cluster.read_only.db

If access to the database is read-only: no writes should be attempted. A “false” may be overridden by omero.cluster.read_only above.

Default: false

property omero.cluster.read_only.repo

### omero.cluster.read_only.repo

If access to the binary repo is read-only: no writes should be attempted. A “false” may be overridden by omero.cluster.read_only above.

Default: false

property omero.cluster.redirector

### omero.cluster.redirector

Default: nullRedirector

property omero.grid.registry_timeout

### omero.grid.registry_timeout

registry_timeout is the milliseconds which the registry and other services will wait on remote services to respond.

Default: 5000

## Ice

property Ice.IPv6

### Ice.IPv6

Disable IPv6 by setting to 0. Only needed in certain situations.

Default: 1

## JVM

property omero.jvmcfg.append

### omero.jvmcfg.append

Contains other parameters which should be passed to the JVM. The value of “append” is treated as if it were on the command line so will be separated on whitespace. For example, ‘-XX:-PrintGC -XX:+UseCompressedOops’ would results in two new arguments. Note that when using config set from the command line one may need to give a prior – option to prevent a value starting with - from already being parsed as an option, and values may need quoting to prevent whitespace or other significant characters from being interpreted prematurely.

Default: [empty]

property omero.jvmcfg.heap_dump

### omero.jvmcfg.heap_dump

Toggles on or off heap dumps on OOMs. Default is “off”. The special value “tmp” will create the heap dumps in your temp directory.

Default: [empty]

property omero.jvmcfg.heap_size

### omero.jvmcfg.heap_size

Explicit value for the -Xmx argument, e.g. “1g”

Default: [empty]

property omero.jvmcfg.max_system_memory

### omero.jvmcfg.max_system_memory

Suggestion for strategies as to the maximum memory that they will use for calculating JVM settings (MB).

Default: 48000

property omero.jvmcfg.min_system_memory

### omero.jvmcfg.min_system_memory

Suggestion for strategies as to the minimum memory that they will use for calculating JVM settings (MB).

Default: 3414

property omero.jvmcfg.percent

### omero.jvmcfg.percent

Used only by the percent strategy. An integer between 0 and 100 which is the percent of active memory that will be used by the service.

Default: [empty]

property omero.jvmcfg.perm_gen

### omero.jvmcfg.perm_gen

Explicit value for the MaxPermSize argument to the JVM, e.g. “500M”. Ignored for Java8+

Default: [empty]

property omero.jvmcfg.strategy

### omero.jvmcfg.strategy

Memory strategy which will be used by default. Options include: percent, manual

Default: percent

property omero.jvmcfg.system_memory

### omero.jvmcfg.system_memory

Manual override of the total system memory that OMERO will think is present on the local OS (MB). If unset, an attempt will be made to detect the actual amount: first by using the Python library psutil and if that is not installed, by running a Java tool. If neither works, 4.0GB is assumed.

Default: [empty]

## LDAP

property omero.ldap.base

### omero.ldap.base

LDAP server base search DN, i.e. the filter that is applied to all users. (can be empty in which case any LDAP user is valid)

Default: ou=example, o=com

property omero.ldap.config

### omero.ldap.config

Enable or disable LDAP (true or false).

Default: false

property omero.ldap.connect_timeout

### omero.ldap.connect_timeout

Sets `com.sun.jndi.ldap.connect.timeout` on the Spring LDAP default security context source environment. The context source is responsible for interacting with JNDI/LDAP.

This timeout is specified in milliseconds and controls the amount of time JNDI/LDAP will wait for a connection to be established.

A timeout less than or equal to zero means that no timeout will be observed and that the OMERO server will wait indefinitely for LDAP connections to be established. Such a timeout should be used with extreme caution as connectivity issues may then cause your server to no longer be able to create new sessions.

For more information on what this JNDI/LDAP property does, see https://docs.oracle.com/javase/jndi/tutorial/ldap/connect/create.html

Default: 5000

property omero.ldap.group_filter

### omero.ldap.group_filter

Default: (objectClass=groupOfNames)

property omero.ldap.group_mapping

### omero.ldap.group_mapping

Default: name=cn

property omero.ldap.new_user_group

### omero.ldap.new_user_group

Without a prefix the “new_user_group” property specifies the name of a single group which all new users will be added to. Other new_user_group strings are prefixed with `:x:` and specify various lookups which should take place to find one or more target groups for the new user.

`:ou:` uses the final organizational unit of a user’s dn as the single OMERO group e.g. `omero.ldap.new_user_group=:ou:`

`:attribute:` uses all the values of the specified attribute as the name of multiple OMERO groups. e.g. `omero.ldap.new_user_group=:attribute:memberOf`

Like `:attribute:`, `:filtered_attribute:` uses all the values of the specified attribute as the name of multiple OMERO groups but the attribute must pass the same filter as `:query:` does. e.g. `omero.ldap.new_user_group=:filtered_attribute:memberOf`

Similar to `:attribute:`, `:dn_attribute:` uses all the values of the specified attribute as the DN of multiple OMERO groups. e.g. `omero.ldap.new_user_group=:dn_attribute:memberOf`

A combination of filtered_attribute and dn_attribute, `:filtered_dn_attribute:` uses all of the values of the specified attribute as the DN of multiple OMERO groups but the attribute must pass the same filter as `:query:` e.g. `omero.ldap.new_user_group=:filtered_dn_attribute:memberOf`

`:query:` performs a query for groups. The “name” property will be taken as defined by omero.ldap.group_mapping and the resulting filter will be AND’ed with the value group_filter (above) e.g. `omero.ldap.new_user_group=:query:(member=@{dn})`

`:bean:` looks in the server’s context for a bean with the given name which implements `ome.security.auth.NewUserGroupBean` e.g. `omero.ldap.new_user_group=:bean:myNewUserGroupMapperBean`

Default: default

property omero.ldap.new_user_group_owner

### omero.ldap.new_user_group_owner

A query element to check if user who is being created via the new_user_group setting should be made a “manager”, i.e. owner, of the queried group. E.g. `omero.ldap.new_user_group_owner=(owner=@{dn})` will use the ‘manager’ attribute to set the ‘owner’ flag in the database. This query element is appended to any query used by new_user_group with an AND.

This property is not used by new_user_group type ‘default’ and only potentially by `:bean:`.

Default: [empty]

property omero.ldap.password

### omero.ldap.password

LDAP server bind password (if required; can be empty)

Default: [empty]

property omero.ldap.read_timeout

### omero.ldap.read_timeout

Sets `com.sun.jndi.ldap.read.timeout` on the Spring LDAP default security context source environment. The context source is responsible for interacting with JNDI/LDAP.

This timeout is specified in milliseconds and controls the amount of time JNDI/LDAP will wait for a response from the LDAP server. When connecting to a server using SSL this timeout also applies to the SSL handshake process.

A timeout less than or equal to zero means that no timeout will be observed and that the OMERO server will wait indefinitely for LDAP replies. Such a timeout should be used with extreme caution, especially when using SSL and/or without a connection pool, as connectivity issues may then cause your server to no longer be able to create new sessions.

For more information on what this JNDI/LDAP property does, see https://docs.oracle.com/javase/tutorial/jndi/newstuff/readtimeout.html

Default: 5000

property omero.ldap.referral

### omero.ldap.referral

Available referral options are: “ignore”, “follow”, or “throw” as per the JNDI referral documentation.

Default: ignore

property omero.ldap.sync_on_login

### omero.ldap.sync_on_login

Whether or not values from LDAP will be synchronized to OMERO on each login. This includes not just the username, email, etc, but also the groups that the user is a member of.

Note

Admin actions carried out in the clients may not survive this synchronization e.g. LDAP users removed from an LDAP group in the UI will be re-added to the group when logging in again after the synchronization.

Default: false

property omero.ldap.urls

### omero.ldap.urls

Set the URL of the LDAP server. A SSL URL for this property would be of the form: ldaps://ldap.example.com:636

Default: ldap://localhost:389

property omero.ldap.user_filter

### omero.ldap.user_filter

Default: (objectClass=person)

property omero.ldap.user_mapping

### omero.ldap.user_mapping

Default: omeName=cn, firstName=givenName, lastName=sn, email=mail, institution=department, middleName=middleName

property omero.ldap.username

### omero.ldap.username

LDAP server bind DN (if required; can be empty)

Default: [empty]

## Logging

property omero.logging.directory

### omero.logging.directory

Relative server directory where the log files should be stored.

Default: var/log/

property omero.logging.level

### omero.logging.level

Specifies the threshold for the Python servers log files. Logging messages which are less severe than this value will be ignored. For a list of available values, see https://docs.python.org/3/library/logging.html#levels.

Default: 20

property omero.logging.lognum

### omero.logging.lognum

If omero.logging.timedlog is false or unset, specifies the number of old server log files that should be kept. Old log files will be saved by appending the extensions ‘.1’, ‘.2’ etc.

Default: 9

property omero.logging.logsize

### omero.logging.logsize

If omero.logging.timedlog is false or unset, specifies the maximum size of the server log files in bytes above which a new log file should be created.

Default: 5000000

property omero.logging.timedlog

### omero.logging.timedlog

Whether the server log files should be rotated at a certain time interval. If true, log files will be rolled over at midnight. Otherwise, log files will be rolled over at a predetermined size, see omero.logging.logsize for more information.

Default: false

## Mail

property omero.mail.bean

### omero.mail.bean

Mail sender properties

Default: defaultMailSender

property omero.mail.config

### omero.mail.config

Enable or disable mail sender (true or false).

Default: false

property omero.mail.from

### omero.mail.from

the email address used for the “from” field

Default: omero@${omero.mail.host}

property omero.mail.host

### omero.mail.host

the hostname of smtp server

Default: localhost

property omero.mail.password

### omero.mail.password

the password to connect to the smtp server (if required; can be empty)

Default: [empty]

property omero.mail.port

### omero.mail.port

the port of smtp server

Default: 25

property omero.mail.smtp.auth

### omero.mail.smtp.auth

see javax.mail.Session properties

Default: false

property omero.mail.smtp.connectiontimeout

### omero.mail.smtp.connectiontimeout

Default: 60000

property omero.mail.smtp.debug

### omero.mail.smtp.debug

Default: false

property omero.mail.smtp.socketFactory.class

### omero.mail.smtp.socketFactory.class

Default: javax.net.SocketFactory

property omero.mail.smtp.socketFactory.fallback

### omero.mail.smtp.socketFactory.fallback

Default: false

property omero.mail.smtp.socketFactory.port

### omero.mail.smtp.socketFactory.port

Default: ${omero.mail.port}

property omero.mail.smtp.starttls.enable

### omero.mail.smtp.starttls.enable

Default: false

property omero.mail.smtp.timeout

### omero.mail.smtp.timeout

Default: 60000

property omero.mail.transport.protocol

### omero.mail.transport.protocol

other smtp parameters; see org.springframework.mail.javamail.JavaMailSenderImpl

Default: smtp

property omero.mail.username

### omero.mail.username

the username to connect to the smtp server (if required; can be empty)

Default: [empty]

## Metrics

property omero.metrics.bean

### omero.metrics.bean

Which bean to use: nullMetrics does nothing defaultMetrics uses the properties defined below

Default: defaultMetrics

property omero.metrics.graphite

### omero.metrics.graphite

Address for Metrics to send server data

Default: [empty]

property omero.metrics.slf4j_minutes

### omero.metrics.slf4j_minutes

Number of minutes to periodically print to slf4j 0 or lower disables the printout.

Default: 60

## Name

property omero.name

### omero.name

Name of the OMERO component that is running in this process.

Default: Server

## Performance

property omero.sessions.max_user_time_to_idle

### omero.sessions.max_user_time_to_idle

Sets the maximum duration in milliseconds a user can request before a login is required due to inactivity.

Default: 6000000

property omero.sessions.max_user_time_to_live

### omero.sessions.max_user_time_to_live

Sets the maximum duration in milliseconds a user can request before a login is required (0 signifies never).

Default: 0

property omero.sessions.maximum

### omero.sessions.maximum

Sets the default duration before a login is required; 0 signifies never.

Default: 0

property omero.sessions.sync_force

### omero.sessions.sync_force

Default: 1800000

property omero.sessions.sync_interval

### omero.sessions.sync_interval

Default: 120000

property omero.sessions.timeout

### omero.sessions.timeout

Sets the default duration of inactivity in milliseconds after which a login is required.

Default: 600000

property omero.threads.background_threads

### omero.threads.background_threads

Number of threads from the min_threads pool that can be used at any given time for background tasks like import. Note that if this value is less than min_threads, min_threads will limit the number of background tasks which can run simultaneously.

Default: 5

property omero.threads.background_timeout

### omero.threads.background_timeout

Number of milliseconds to wait for a slot in the background queue before a rejection error will be raised.

Default: 3600000

property omero.threads.cancel_timeout

### omero.threads.cancel_timeout

Default: 5000

property omero.threads.idle_timeout

### omero.threads.idle_timeout

This setting does nothing. See https://github.com/ome/omero-server/issues/154 And https://github.com/ome/omero-server/pull/155

Default: 5000

property omero.threads.max_threads

### omero.threads.max_threads

This setting does nothing. See https://github.com/ome/omero-server/issues/154 And https://github.com/ome/omero-server/pull/155

Default: 50

property omero.threads.min_threads

### omero.threads.min_threads

Maximum and minimum number of threads that can simultaneously run at the “USER” and “BACKGROUND” priority level. Internal system threads may still run. Note when setting this that these threads do not time out.

Default: 10

property omero.throttling.method_time.error

### omero.throttling.method_time.error

Time in milliseconds after which a single method invocation will print a ERROR statement to the server log. If ERRORs are frequently being printed to your logs, you may want to increase this value after checking that no actual problem exists. Values of more than 60000 (1 minute) are not advised.

Default: 20000

property omero.throttling.method_time.error.indexer

### omero.throttling.method_time.error.indexer

Value for the indexer is extended to 1 day

Default: 86400000

property omero.throttling.method_time.warn

### omero.throttling.method_time.warn

Time in milliseconds after which a single method invocation will print a WARN statement to the server log.

Default: 5000

property omero.throttling.method_time.warn.indexer

### omero.throttling.method_time.warn.indexer

Value for the indexer is extended to 1 hour

Default: 3600000

property omero.throttling.objects_read_interval

### omero.throttling.objects_read_interval

Default: 1000

property omero.throttling.objects_written_interval

### omero.throttling.objects_written_interval

Default: 1000

property omero.throttling.servants_per_session

### omero.throttling.servants_per_session

Default: 10000

## Pixeldata

property omero.pixeldata.backoff

### omero.pixeldata.backoff

Name of the spring bean which will be used to calculate the backoff (in ms) that users should wait for an image to be ready to view.

Default: ome.io.nio.SimpleBackOff

property omero.pixeldata.backoff.default

### omero.pixeldata.backoff.default

A default value for the backoff time.

Default: 1000

property omero.pixeldata.backoff.maxpixels

### omero.pixeldata.backoff.maxpixels

The maximum number of pixels (in any dimension), if exceeded the default value will be used.

Default: 1000000

property omero.pixeldata.batch

### omero.pixeldata.batch

Number of instances indexed per indexing. (Ignored by pixelDataEventLogQueue)

Default: 50

property omero.pixeldata.cron

### omero.pixeldata.cron

Polling frequency of the pixeldata processing. Set empty to disable pixeldata processing.

Cron Format: seconds minutes hours day-of-month month day-of-week year (optional). For example, “0,30 * * * * ?” is equivalent to running every 30 seconds. See https://www.quartz-scheduler.org/api/1.8.6/org/quartz/CronExpression.html

Default: */4 * * * * ?

property omero.pixeldata.dispose

### omero.pixeldata.dispose

Whether the PixelData.dispose() method should try to clean up ByteBuffer instances which may lead to memory exceptions. See ticket #11675 for more information. Note: the property is set globally for the JVM.

Default: true

property omero.pixeldata.event_log_loader

### omero.pixeldata.event_log_loader

EventLogLoader that will be used for loading EventLogs for the action “PIXELDATA”. Choices include: pixelDataEventLogQueue and the older pixelDataPersistentEventLogLoader

Default: pixelDataEventLogQueue

property omero.pixeldata.max_plane_float_override

### omero.pixeldata.max_plane_float_override

If true, server will not require pyramids for floating point pixel types. Note that pyramids are never generated for floating point pixel types.

Default: true

property omero.pixeldata.max_plane_height

### omero.pixeldata.max_plane_height

With `omero.pixeldata.max_plane_width`, specifies the plane size cutoff above which a pixel pyramid will be generated by the pixeldata service unless subresolutions can be read from the file format. These values will be ignored for floating or double pixel data types unlesss :property: omero.pixeldata.max_plane_float_override is set to false. Note pyramids are never generated for floating point pixel types.

Default: 3192

property omero.pixeldata.max_plane_width

### omero.pixeldata.max_plane_width

With `omero.pixeldata.max_plane_height`, specifies the plane size cutoff above which a pixel pyramid will be generated by the pixeldata service unless subresolutions can be read from the file format. These values will be ignored for floating or double pixel data types unlesss :property: omero.pixeldata.max_plane_float_override is set to false. Note pyramids are never generated for floating point pixel types.

Default: 3192

property omero.pixeldata.max_projection_bytes

### omero.pixeldata.max_projection_bytes

Specifies the maximum number of bytes the server will allow to be projected in real time with the rendering engine.

Default: 268435456

property omero.pixeldata.memoizer.dir

### omero.pixeldata.memoizer.dir

The directory in which Bio-Formats may create memo files for images from the managed repository.

Default: ${omero.data.dir}/BioFormatsCache

property omero.pixeldata.memoizer.dir.local

### omero.pixeldata.memoizer.dir.local

For read-only servers set this to a local read-write directory so that memo files can be created and used. Activates only if the binary repository is read-only.

Default: [empty]

property omero.pixeldata.memoizer_wait

### omero.pixeldata.memoizer_wait

Maximum time in milliseconds that file parsing can take without the parsed metadata being cached to omero.pixeldata.memoizer.dir.

Default: 0

property omero.pixeldata.repetitions

### omero.pixeldata.repetitions

Instead, it is possible to tell the server to run more pixeldata repetitions, each of which gets completely committed before the next. This will only occur when there is a substantial backlog of pixels to process.

(Ignored by pixelDataEventLogQueue; uses threads instead)

Default: 1

property omero.pixeldata.threads

### omero.pixeldata.threads

How many pixel pyramids will be generated at a single time. The value should typically not be set to higher than the number of cores on the server machine.

Default: 2

property omero.pixeldata.tile_height

### omero.pixeldata.tile_height

Default: 256

property omero.pixeldata.tile_sizes_bean

### omero.pixeldata.tile_sizes_bean

Default sizes for tiles are provided by a ome.io.nio.TileSizes implementation. By default the bean (“configuredTileSizes”) uses the properties provided here.

Default: configuredTileSizes

property omero.pixeldata.tile_width

### omero.pixeldata.tile_width

Default: 256

## Policy

property omero.policy.bean

### omero.policy.bean

Instance of the PolicyService interface which will be responsible for checking certain server actions made by a user.

Default: defaultPolicyService

property omero.policy.binary_access

### omero.policy.binary_access

Configuration for the policy of whether users can access binary files from disk. Binary access includes all attempts to download a file from the UI.

The individual components of the string include:

- write - whether or not users who have WRITE access to the objects can access the binary. This includes group and system administrators.

- read - whether or not users who have READ access to the objects can access the binary.

- image - whether or not images are to be considered accessible as a rule.

- plate - whether or not plates and contained HCS objects are to be considered accessible as a rule. This includes wells, well samples, and plate runs.

Though the order of the components of the property are not important, the order that they are listed above roughly corresponds to their priority. E.g. a -write value will override +plate.

Example 1: “-read,+write,+image,-plate” only owners of an image and admins can download it.

Example 2: “-read,-write,-image,-plate” no downloading is possible.

Configuration properties of the same name can be applied to individual groups as well. E.g. adding, omero.policy.binary_access=-read to a group’s `config` property, you can prevent group-members from downloading original files, as at https://docs.openmicroscopy.org/latest/omero/sysadmins/customization.html#download-restrictions

Configuration is pessimistic: if there is a negative either on the group or at the server-level, the restriction will be applied. A missing value at the server restricts the setting but allows the server to override.

Default: +read, +write, +image

## Ports

property omero.ports.prefix

### omero.ports.prefix

The prefix to apply to all port numbers (SSL, TCP, registry) used by the server

Default: [empty]

property omero.ports.registry

### omero.ports.registry

The IceGrid registry port number to use

Default: 4061

property omero.ports.ssl

### omero.ports.ssl

The Glacier2 SSL port number to use

Default: 4064

property omero.ports.tcp

### omero.ports.tcp

The Glacier2 TCP port number to use (unencrypted)

Default: 4063

property omero.ports.ws

### omero.ports.ws

The Glacier2 WS port number to use (unencrypted)

Default: 4065

property omero.ports.wss

### omero.ports.wss

The Glacier2 WSS port number to use

Default: 4066

## Qa

property omero.qa.feedback

### omero.qa.feedback

Base URL to use when sending feedback (errors, comments)

Default: http://qa.openmicroscopy.org.uk

## Query

property omero.query.timeout

### omero.query.timeout

For the query service how many seconds before a query times out.

Default: 1000

property omero.query.timeout.admin

### omero.query.timeout.admin

How many seconds before a query times out for administrative users.

Default: ${omero.query.timeout}

## Scripts

property omero.launcher.jython

### omero.launcher.jython

Executable on the PATH which will be used for scripts with the mimetype ‘text/x-jython’.

Default: jython

property omero.launcher.matlab

### omero.launcher.matlab

Executable on the PATH which will be used for scripts with the mimetype ‘text/x-matlab’.

Default: matlab

property omero.launcher.python

### omero.launcher.python

Executable on the PATH which will be used for scripts with the mimetype ‘text/x-python’.

No value implies use sys.executable

Default: [empty]

property omero.process.jython

### omero.process.jython

Server implementation which will be used for scripts with the mimetype ‘text/x-jython’. Changing this value requires that the appropriate class has been installed on the server.

Default: omero.processor.ProcessI

property omero.process.matlab

### omero.process.matlab

Server implementation which will be used for scripts with the mimetype ‘text/x-matlab’. Changing this value requires that the appropriate class has been installed on the server.

Default: omero.processor.MATLABProcessI

property omero.process.python

### omero.process.python

Server implementation which will be used for scripts with the mimetype ‘text/x-python’. Changing this value requires that the appropriate class has been installed on the server.

Default: omero.processor.ProcessI

property omero.scripts.cache.cron

### omero.scripts.cache.cron

Frequency to reload script params. By default, once a day at midnight.

Cron Format: seconds minutes hours day-of-month month day-of-week year (optional). For example, “0,30 * * * * ?” is equivalent to running every 30 seconds. See https://www.quartz-scheduler.org/api/1.8.6/org/quartz/CronExpression.html

Default: 0 0 0 * * ?

property omero.scripts.cache.spec

### omero.scripts.cache.spec

Guava LoadingCache spec for configuring how many script JobParams will be kept in memory for how long.

For more information, see https://google.github.io/guava/releases/27.1-jre/api/docs/com/google/common/cache/CacheBuilderSpec.html

Default: maximumSize=1000

property omero.scripts.timeout

### omero.scripts.timeout

Default: 3600000

## Search

property omero.search.analyzer

### omero.search.analyzer

Analyzer used both index and to parse queries

Default: ome.services.fulltext.FullTextAnalyzer

property omero.search.batch

### omero.search.batch

Size of the batches to process events per indexing. Larger batches can speed up indexing, but at the cost of memory.

Default: 5000

property omero.search.bridges

### omero.search.bridges

Extra bridge classes, comma-separated, to be invoked on each indexing. Bridges are used to parse more information out of the data.

Default: [empty]

property omero.search.cron

### omero.search.cron

Polling frequency of the indexing. Set empty to disable search indexing.

Cron Format: seconds minutes hours day-of-month month day-of-week year (optional). For example, “0,30 * * * * ?” is equivalent to running every 30 seconds. See https://www.quartz-scheduler.org/api/1.8.6/org/quartz/CronExpression.html

Default: */2 * * * * ?

property omero.search.event_log_loader

### omero.search.event_log_loader

Default: eventLogQueue

property omero.search.excludes

### omero.search.excludes

Indexing takes place on all EventLogs as they occur in the database. The types listed here will be skipped if they appear in the “entityType” field of the EventLog table.

Default: ome.model.annotations.ChannelAnnotationLink, ome.model.core.Channel, ome.model.core.PlaneInfo, ome.model.core.PixelsOriginalFileMap, ome.model.containers.DatasetImageLink, ome.model.containers.ProjectDatasetLink, ome.model.containers.CategoryGroupCategoryLink, ome.model.containers.CategoryImageLink, ome.model.display.ChannelBinding, ome.model.display.QuantumDef, ome.model.display.Thumbnail, ome.model.meta.Share, ome.model.meta.Event, ome.model.meta.EventLog, ome.model.meta.GroupExperimenterMap, ome.model.meta.Node, ome.model.meta.Session, ome.model.annotations.RoiAnnotationLink, ome.model.roi.Roi, ome.model.roi.Shape, ome.model.roi.Text, ome.model.roi.Rectangle, ome.model.roi.Mask, ome.model.roi.Ellipse, ome.model.roi.Point, ome.model.roi.Path, ome.model.roi.Polygon, ome.model.roi.Polyline, ome.model.roi.Line, ome.model.screen.ScreenAcquisitionWellSampleLink, ome.model.screen.ScreenPlateLink, ome.model.screen.WellReagentLink, ome.model.stats.StatsInfo

property omero.search.include_actions

### omero.search.include_actions

EventLog.action values which will be indexed. Unless custom code is generating other action types, this property should not need to be modified.

Default: INSERT, UPDATE, REINDEX, DELETE

property omero.search.include_types

### omero.search.include_types

Whitelist of object types which will be indexed. All other types will be ignored. This matches the currently available UI options but may need to be expanded for custom search bridges.

Default: ome.model.core.Image, ome.model.containers.Project, ome.model.containers.Dataset, ome.model.screen.Plate, ome.model.screen.Screen, ome.model.screen.PlateAcquisition, ome.model.screen.Well

property omero.search.locking_strategy

### omero.search.locking_strategy

Default: native

property omero.search.max_file_size

### omero.search.max_file_size

Maximum file size for text indexing (bytes) If a file larger than this is attached, e.g. to an image, the indexer will simply ignore the contents of the file when creating the search index. This should not be set to more than half of the Indexer heap space.

Note

If you set the max file size to greater than 1/2 the size of the indexer’s heap (256 MB by default), you may encounter Out of Memory errors in the Indexer process or you may cause the search index to become corrupt. Be sure that you also increase the heap size accordingly (see OutOfMemoryError / PermGen space errors in OMERO.server logs).

Default: 131072000

property omero.search.max_fileset_size

### omero.search.max_fileset_size

Maximum number of fileset entries which will be indexed Increasing this cut-off can lead to indexing performance degradation notably in the high-content screening domain where plates typically contain 1K-10K images associated with 10-100K fileset entries each If set to 0, no fileset entry will be indexed

Default: 10

property omero.search.max_partition_size

### omero.search.max_partition_size

Number of objects to load in a single indexing window. The larger this value the fewer times a single object will be indexed unnecessarily. Each object uses roughly 100 bytes of memory.

Default: 1000000

property omero.search.merge_factor

### omero.search.merge_factor

Default: 25

property omero.search.ram_buffer_size

### omero.search.ram_buffer_size

Default: 64

property omero.search.repetitions

### omero.search.repetitions

Instead, it is possible to tell the server to run more indexing repetitions, each of which gets completely committed before the next. This will only occur when there is a substantial backlog of searches to perform. (More than 1 hours worth)

Default: 1

property omero.search.reporting_loops

### omero.search.reporting_loops

Periodically the completion percentage will be printed. The calculation can be expensive and so is not done frequently.

Default: 100

## Security

property omero.security.chmod_strategy

### omero.security.chmod_strategy

Default: groupChmodStrategy

property omero.security.filter.bitand

### omero.security.filter.bitand

Default: (int8and(permissions, %s) = %s)

property omero.security.ignore_case

### omero.security.ignore_case

Whether to ignore the case of the username during login (true or false). Default: false (JSmith and jsmith will be considered two different users).

Warning

Before enabling this feature, lower the case of all usernames in OMERO (omename column in the experimenter table). It is the system administrator’s responsibility to handle any username clashes.

Default: false

property omero.security.keyStore

### omero.security.keyStore

A keystore is a database of private keys and their associated X.509 certificate chains authenticating the corresponding public keys. A keystore is mostly needed if you are doing client-side certificates for authentication against your LDAP server.

Default: [empty]

property omero.security.keyStorePassword

### omero.security.keyStorePassword

Sets the password of the keystore

Default: [empty]

property omero.security.login_failure_throttle_count

### omero.security.login_failure_throttle_count

Default: 1

property omero.security.login_failure_throttle_time

### omero.security.login_failure_throttle_time

Default: 3000

property omero.security.password_provider

### omero.security.password_provider

Implementation of PasswordProvider that will be used to authenticate users. Typically, a chained password provider will be used so that if one form of authentication (e.g. LDAP) does not work, other attempts will be made.

Default: chainedPasswordProvider

property omero.security.password_required

### omero.security.password_required

Controls whether the server will allow creation of user accounts with an empty password. If set to true (default, strict mode), empty passwords are disallowed. This still allows the guest user to interact with the server.

Default: true

property omero.security.trustStore

### omero.security.trustStore

A truststore is a database of trusted entities and their associated X.509 certificate chains authenticating the corresponding public keys. The truststore contains the Certificate Authority (CA) certificates and the certificate(s) of the other party to which this entity intends to send encrypted (confidential) data. This file must contain the public key certificates of the CA and the client’s public key certificate.

Default: [empty]

property omero.security.trustStorePassword

### omero.security.trustStorePassword

Sets the password of the truststore

Default: [empty]

## Server

property omero.server.nodedescriptors

### omero.server.nodedescriptors

Override the default set of OMERO services. For example, to run OMERO.server with Blitz and Tables only (i.e. disable Processor, DropBox, Indexer, PixelData) set this to `master:Blitz-0,Tables-0`. Also use this to distribute OMERO services across multiple nodes, for example: `master:Blitz-0,Tables-0 worker1:Processor-0`. See https://docs.openmicroscopy.org/omero/latest/sysadmins/grid.html#deployment-examples

Default: [empty]

## Web

property omero.web.admins

### omero.web.admins

A list of people who get code error notifications whenever the application identifies a broken link or raises an unhandled exception that results in an internal server error. This gives the administrators immediate notification of any errors, see OMERO.mail. Example:`'[["Full Name", "email address"]]'`.

Default: []

property omero.web.application_server

### omero.web.application_server

OMERO.web is configured to run in Gunicorn as a generic WSGI (TCP)application by default. Available options: `wsgi-tcp` (Gunicorn, default), `wsgi` (Advanced users only, e.g. manual Apache configuration with `mod_wsgi`).

Default: wsgi-tcp

property omero.web.application_server.host

### omero.web.application_server.host

The front-end webserver e.g. NGINX can be set up to run on a different host from OMERO.web. The property ensures that OMERO.web is accessible on an external IP. It requires copying all the OMERO.web static files to the separate NGINX server.

Default: 127.0.0.1

property omero.web.application_server.max_requests

### omero.web.application_server.max_requests

The maximum number of requests a worker will process before restarting.

Default: 0

property omero.web.application_server.port

### omero.web.application_server.port

Upstream application port

Default: 4080

property omero.web.apps

### omero.web.apps

Add additional Django applications. For example, see Creating an app

Default: []

property omero.web.base_include_template

### omero.web.base_include_template

Template to be included in every page, at the end of the <body>

Default: None

property omero.web.caches

### omero.web.caches

OMERO.web offers alternative session backends to automatically delete stale data using the cache session store backend, see Django cached session documentation for more details.

Default: {\”default\”: {\”BACKEND\”: \”django.core.cache.backends.dummy.DummyCache\”}}

property omero.web.chunk_size

### omero.web.chunk_size

Size, in bytes, of the “chunk”

Default: 1048576

property omero.web.cors_origin_allow_all

### omero.web.cors_origin_allow_all

If True, cors_origin_whitelist will not be used and all origins will be authorized to make cross-site HTTP requests.

Default: false

property omero.web.cors_origin_whitelist

### omero.web.cors_origin_whitelist

A list of origin hostnames that are authorized to make cross-site HTTP requests. Used by the django-cors-headers app as described at https://github.com/ottoyiu/django-cors-headers

Default: []

property omero.web.csrf_cookie_httponly

### omero.web.csrf_cookie_httponly

Prevent CSRF cookie from being accessed in JavaScript. Currently disabled as it breaks background JavaScript POSTs in OMERO.web.

Default: false

property omero.web.csrf_cookie_samesite

### omero.web.csrf_cookie_samesite

The value of the SameSite flag on the CSRF cookie. This flag prevents the cookie from being sent in cross-site requests thus preventing CSRF attacks and making some methods of CSRF session cookie impossible.

Default: Lax

property omero.web.csrf_cookie_secure

### omero.web.csrf_cookie_secure

Restrict CSRF cookies to HTTPS only, you are strongly recommended to set this to `true` in production.

Default: false

property omero.web.csrf_trusted_origins

### omero.web.csrf_trusted_origins

A list of hosts which are trusted origins for unsafe requests. When starting with ‘.’, all subdomains are included. Example `'[".example.com", "another.example.net"]'`. For more details see CSRF trusted origins.

Default: []

property omero.web.databases

### omero.web.databases

Default: {}

property omero.web.debug

### omero.web.debug

A boolean that turns on/off debug mode. Use debug mode only in development, not in production, as it logs sensitive and confidential information in plaintext.

Default: false

property omero.web.django_additional_settings

### omero.web.django_additional_settings

Additional Django settings as list of key-value tuples. Use this to set or override Django settings that aren’t managed by OMERO.web. E.g. `["CUSTOM_KEY", "CUSTOM_VALUE"]`

Default: []

property omero.web.favicon_url

### omero.web.favicon_url

Favicon URL, specifies the path relative to django’s static file dirs.

Default: webgateway/img/ome.ico

property omero.web.feedback.comment.enabled

### omero.web.feedback.comment.enabled

Enable the feedback form for comments. These comments are sent to the URL in `omero.qa.feedback` (OME team by default).

Default: true

property omero.web.feedback.error.enabled

### omero.web.feedback.error.enabled

Enable the feedback form for errors. These errors are sent to the URL in `omero.qa.feedback` (OME team by default).

Default: true

property omero.web.html_meta_referrer

### omero.web.html_meta_referrer

Default content for the HTML Meta referrer tag. See https://www.w3.org/TR/referrer-policy/#referrer-policies for allowed values and https://caniuse.com/referrer-policy for browser compatibility. Warning: Internet Explorer 11 does not support the default value of this setting, you may want to change this to “origin” after reviewing the linked documentation.

Default: origin-when-crossorigin

property omero.web.index_template

### omero.web.index_template

Define template used as an index page `http://your_host/omero/`.If None user is automatically redirected to the login page.For example use ‘webclient/index.html’.

Default: None

property omero.web.logdir

### omero.web.logdir

A path to the custom log directory.

Default: /home/omero/OMERO.server/var/log

property omero.web.login.client_downloads_base

### omero.web.login.client_downloads_base

GitHub repository containing the Desktop client downloads

Default: ome/omero-insight

property omero.web.login.show_client_downloads

### omero.web.login.show_client_downloads

Whether to link to official client downloads on the login page

Default: true

property omero.web.login_incorrect_credentials_text

### omero.web.login_incorrect_credentials_text

The error message shown to users who enter an incorrect username or password.

Default: Connection not available, please check your user name and password.

property omero.web.login_logo

### omero.web.login_logo

Customize webclient login page with your own logo. Logo images should ideally be 150 pixels high or less and will appear above the OMERO logo. You will need to host the image somewhere else and link to it with the OMERO logo.

Default: None

property omero.web.login_redirect

### omero.web.login_redirect

Redirect to the given location after logging in. It only supports arguments for Django reverse function. For example: `'{"redirect": ["webindex"], "viewname": "load_template", "args":["userdata"], "query_string": {"experimenter": -1}}'`

Default: {}

property omero.web.login_view

### omero.web.login_view

The Django view name used for login. Use this to provide an alternative login workflow.

Default: weblogin

property omero.web.max_table_download_rows

### omero.web.max_table_download_rows

Prevent download of OMERO.tables exceeding this number of rows in a single request.

Default: 10000

property omero.web.maximum_multifile_download_size

### omero.web.maximum_multifile_download_size

Prevent multiple files with total aggregate size greater than this value in bytes from being downloaded as a zip archive.

Default: 1073741824

property omero.web.middleware

### omero.web.middleware

Warning: Only system administrators should use this feature. List of Django middleware classes in the form [{“class”: “class.name”, “index”: FLOAT}]. See Django middleware. Classes will be ordered by increasing index

Default: [{\”index\”: 1, \”class\”: \”django.middleware.common.BrokenLinkEmailsMiddleware\”},{\”index\”: 2, \”class\”: \”django.middleware.common.CommonMiddleware\”},{\”index\”: 3, \”class\”: \”django.contrib.sessions.middleware.SessionMiddleware\”},{\”index\”: 4, \”class\”: \”django.middleware.csrf.CsrfViewMiddleware\”},{\”index\”: 5, \”class\”: \”django.contrib.messages.middleware.MessageMiddleware\”},{\”index\”: 6, \”class\”: \”django.middleware.clickjacking.XFrameOptionsMiddleware\”}]

property omero.web.nginx_server_extra_config

### omero.web.nginx_server_extra_config

Extra configuration lines to add to the Nginx server block. Lines will be joined with n. Remember to terminate lines with; when necessary.

Default: []

property omero.web.open_with

### omero.web.open_with

A list of viewers that can be used to display selected Images or other objects. Each viewer is defined as `["Name", "url", options]`. Url is reverse(url). Selected objects are added to the url as ?image=:1&image=2Objects supported must be specified in options with e.g. `{"supported_objects":["images"]}` to enable viewer for one or more images.

Default: [[\”Image viewer\”, \”webgateway\”, {\”supported_objects\”: [\”image\”],\”script_url\”: \”webclient/javascript/ome.openwith_viewer.js\”}]]

property omero.web.page_size

### omero.web.page_size

Number of images displayed within a dataset or ‘orphaned’ container to prevent from loading them all at once.

Default: 200

property omero.web.ping_interval

### omero.web.ping_interval

Timeout interval between ping invocations in seconds

Default: 60000

property omero.web.pipeline_css_compressor

### omero.web.pipeline_css_compressor

Compressor class to be applied to CSS files. If empty or None, CSS files won’t be compressed.

Default: None

property omero.web.pipeline_js_compressor

### omero.web.pipeline_js_compressor

Compressor class to be applied to JavaScript files. If empty or None, JavaScript files won’t be compressed.

Default: None

property omero.web.pipeline_staticfile_storage

### omero.web.pipeline_staticfile_storage

The file storage engine to use when collecting static files with the collectstatic management command. See the documentation for more details.

Default: pipeline.storage.PipelineStorage

property omero.web.plate_layout

### omero.web.plate_layout

If ‘shrink’, the plate will not display rows and columns before the first Well, or after the last Well. If ‘trim’, the plate will only show Wells from A1 to the last Well. If ‘expand’ (default), the plate will expand from A1 to a multiple of 12 columns x 8 rows after the last Well.

Default: expand

property omero.web.prefix

### omero.web.prefix

Used as the value of the SCRIPT_NAME environment variable in any HTTP request.

Default: None

property omero.web.public.cache.enabled

### omero.web.public.cache.enabled

Default: false

property omero.web.public.cache.key

### omero.web.public.cache.key

Default: omero.web.public.cache.key

property omero.web.public.cache.timeout

### omero.web.public.cache.timeout

Default: 86400

property omero.web.public.enabled

### omero.web.public.enabled

Enable and disable the OMERO.web public user functionality.

Default: false

property omero.web.public.get_only

### omero.web.public.get_only

Restrict public users to GET requests only

Default: true

property omero.web.public.password

### omero.web.public.password

Password to use during authentication.

Default: None

property omero.web.public.server_id

### omero.web.public.server_id

Server to authenticate against.

Default: 1

property omero.web.public.url_filter

### omero.web.public.url_filter

Set a regular expression that matches URLs the public user is allowed to access. If this is not set, no URLs will be publicly available.

Default: (?#This regular expression matches nothing)a^

property omero.web.public.user

### omero.web.public.user

Username to use during authentication.

Default: None

property omero.web.redirect_allowed_hosts

### omero.web.redirect_allowed_hosts

If you wish to allow redirects to an external site, the domains must be listed here. For example [“openmicroscopy.org”].

Default: []

property omero.web.root_application

### omero.web.root_application

Override the root application label that handles `/`. Warning you must ensure the application’s URLs do not conflict with other applications. omero-gallery is an example of an application that can be used for this (set to `gallery`)

Default: [empty]

property omero.web.search.default_group

### omero.web.search.default_group

ID of the group to pre-select in search form. A value of 0 or -1 pre-selects All groups.

Default: 0

property omero.web.search.default_user

### omero.web.search.default_user

ID of the user to pre-select in search form. A value of 0 pre-selects the logged-in user. A value of -1 pre-selects All Users if the search is across all groups or All Members if the search is within a specific group.

Default: 0

property omero.web.secret_key

### omero.web.secret_key

A boolean that sets SECRET_KEY for a particular Django installation.

Default: None

property omero.web.secure

### omero.web.secure

Force all backend OMERO.server connections to use SSL.

Default: false

property omero.web.secure_proxy_ssl_header

### omero.web.secure_proxy_ssl_header

A tuple representing a HTTP header/value combination that signifies a request is secure. Example `'["HTTP_X_FORWARDED_PROTO_OMERO_WEB", "https"]'`. For more details see secure proxy ssl header.

Default: []

property omero.web.server_list

### omero.web.server_list

A list of servers the Web client can connect to.

Default: [[\”localhost\”, 4064, \”omero\”]]

property omero.web.session_cookie_age

### omero.web.session_cookie_age

The age of session cookies, in seconds.

Default: 86400

property omero.web.session_cookie_domain

### omero.web.session_cookie_domain

The domain to use for session cookies

Default: None

property omero.web.session_cookie_name

### omero.web.session_cookie_name

The name to use for session cookies

Default: None

property omero.web.session_cookie_path

### omero.web.session_cookie_path

The path to use for session cookies

Default: None

property omero.web.session_cookie_samesite

### omero.web.session_cookie_samesite

The value of the SameSite flag on the session cookie. This flag prevents the cookie from being sent in cross-site requests thus preventing CSRF attacks and making some methods of stealing session cookie impossible.

Default: Lax

property omero.web.session_cookie_secure

### omero.web.session_cookie_secure

Restrict session cookies to HTTPS only, you are strongly recommended to set this to `true` in production.

Default: false

property omero.web.session_engine

### omero.web.session_engine

Controls where Django stores session data. See Configuring the session engine for more details.Allowed values are: `omeroweb.filesessionstore` (deprecated), `django.contrib.sessions.backends.db`, `django.contrib.sessions.backends.file`, `django.contrib.sessions.backends.cache` or `django.contrib.sessions.backends.cached_db`.

Default: django.contrib.sessions.backends.file

property omero.web.session_expire_at_browser_close

### omero.web.session_expire_at_browser_close

A boolean that determines whether to expire the session when the user closes their browser. See Django Browser-length sessions vs. persistent sessions documentation for more details.

Default: true

property omero.web.session_serializer

### omero.web.session_serializer

You can use this setting to customize the session serialization format. See Django session serialization documentation for more details.

Default: django.contrib.sessions.serializers.PickleSerializer

property omero.web.sharing.opengraph

### omero.web.sharing.opengraph

Dictionary of server-name: site-name, where server-name matches a name from omero.web.server_list. For example: `'{"omero": "Open Microscopy"}'`

Default: {}

property omero.web.sharing.twitter

### omero.web.sharing.twitter

Dictionary of server-name: @twitter-site-username, where server-name matches a name from omero.web.server_list. For example: `'{"omero": "@openmicroscopy"}'`

Default: {}

property omero.web.show_forgot_password

### omero.web.show_forgot_password

Allows to hide ‘Forgot password’ from the login view - useful for LDAP/ActiveDir installations

Default: true

property omero.web.static_root

### omero.web.static_root

The absolute path to the directory where collectstatic will collect static files for deployment. If the staticfiles contrib app is enabled (default) the collectstatic management command will collect static files into this directory.

Default: /home/omero/OMERO.server/var/static

property omero.web.static_url

### omero.web.static_url

URL to use when referring to static files. Example: `'/static/'` or `'http://static.example.com/'`. Used as the base path for asset definitions (the Media class) and the staticfiles app. It must end in a slash if set to a non-empty value.

Default: /static/

property omero.web.staticfile_dirs

### omero.web.staticfile_dirs

Defines the additional locations the staticfiles app will traverse if the FileSystemFinder finder is enabled, e.g. if you use the collectstatic or findstatic management command or use the static file serving view.

Default: []

property omero.web.template_dirs

### omero.web.template_dirs

List of locations of the template source files, in search order. Note that these paths should use Unix-style forward slashes.

Default: []

property omero.web.thumbnails_batch

### omero.web.thumbnails_batch

Number of thumbnails retrieved to prevent from loading them all at once. Make sure the size is not too big, otherwise you may exceed limit request line, see https://docs.gunicorn.org/en/latest/settings.html?highlight=limit_request_line

Default: 50

property omero.web.time_zone

### omero.web.time_zone

Time zone for this installation. Choices can be found in the `TZ database name` column of: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones Default `"Europe/London"`

Default: Europe/London

property omero.web.top_logo

### omero.web.top_logo

Customize the webclient top bar logo. The recommended image height is 23 pixels and it must be hosted outside of OMERO.web.

Default: [empty]

property omero.web.top_logo_link

### omero.web.top_logo_link

The target location of the webclient top logo, default unlinked.

Default: [empty]

property omero.web.ui.center_plugins

### omero.web.ui.center_plugins

Add plugins to the center panels. Plugins are `['Channel overlay', 'webtest/webclient_plugins/center_plugin.overlay.js.html', 'channel_overlay_panel']`. The javascript loads data into `$('#div_id')`.

Default: []

property omero.web.ui.metadata_panes

### omero.web.ui.metadata_panes

Manage Metadata pane accordion. This functionality is limited to the existing sections.

Default: [{\”name\”: \”tag\”, \”label\”: \”Tags\”, \”index\”: 1},{\”name\”: \”map\”, \”label\”: \”Key-Value Pairs\”, \”index\”: 2},{\”name\”: \”table\”, \”label\”: \”Tables\”, \”index\”: 3},{\”name\”: \”file\”, \”label\”: \”Attachments\”, \”index\”: 4},{\”name\”: \”comment\”, \”label\”: \”Comments\”, \”index\”: 5},{\”name\”: \”rating\”, \”label\”: \”Ratings\”, \”index\”: 6},{\”name\”: \”other\”, \”label\”: \”Others\”, \”index\”: 7}]

property omero.web.ui.right_plugins

### omero.web.ui.right_plugins

Add plugins to the right-hand panel. Plugins are `['Label', 'include.js', 'div_id']`. The javascript loads data into `$('#div_id')`.

Default: [[\”Acquisition\”, \”webclient/data/includes/right_plugin.acquisition.js.html\”, \”metadata_tab\”],[\”Preview\”, \”webclient/data/includes/right_plugin.preview.js.html\”, \”preview_tab\”]]

property omero.web.ui.top_links

### omero.web.ui.top_links

Add links to the top header: links are `['Link Text', 'link|lookup_view', options]`, where the url is reverse(‘link’), simply ‘link’ (for external urls) or lookup_view is a detailed dictionary {“viewname”: “str”, “args”: [], “query_string”: {“param”: “value” }], E.g. `'["Webtest", "webtest_index"] or ["Homepage", "http://...", {"title": "Homepage", "target": "new"} ] or ["Repository", {"viewname": "webindex", "query_string": {"experimenter": -1}}, {"title": "Repo"}]'`

Default: [[\”Data\”, \”webindex\”, {\”title\”: \”Browse Data via Projects, Tags etc\”}],[\”History\”, \”history\”, {\”title\”: \”History\”}],[\”Help\”, \”https://help.openmicroscopy.org/\”,{\”title\”:\”Open OMERO user guide in a new tab\”, \”target\”:\”new\”}]]

property omero.web.use_x_forwarded_host

### omero.web.use_x_forwarded_host

Specifies whether to use the X-Forwarded-Host header in preference to the Host header. This should only be enabled if a proxy which sets this header is in use.

Default: false

property omero.web.user_dropdown

### omero.web.user_dropdown

Whether or not to include a user dropdown in the base template. Particularly useful when used in combination with the OMERO.web public user where logging in may not make sense.

Default: true

property omero.web.viewer.view

### omero.web.viewer.view

Django view which handles display of, or redirection to, the desired full image viewer.

Default: omeroweb.webclient.views.image_viewer

property omero.web.webgateway_cache

### omero.web.webgateway_cache

Default: None

property omero.web.wsgi_args

### omero.web.wsgi_args

A string representing Gunicorn additional arguments. Check Gunicorn Documentation https://docs.gunicorn.org/en/latest/settings.html

Default: None

property omero.web.wsgi_timeout

### omero.web.wsgi_timeout

Workers silent for more than this many seconds are killed and restarted. Check Gunicorn Documentation https://docs.gunicorn.org/en/stable/settings.html#timeout

Default: 60

property omero.web.wsgi_workers

### omero.web.wsgi_workers

The number of worker processes for handling requests. Check Gunicorn Documentation https://docs.gunicorn.org/en/stable/settings.html#workers

Default: 5

property omero.web.x_frame_options

### omero.web.x_frame_options

Whether to allow OMERO.web to be loaded in a frame.

Default: SAMEORIGIN