Skip to content

Latest commit

 

History

History
108 lines (102 loc) · 9.22 KB

uhppoted.conf.md

File metadata and controls

108 lines (102 loc) · 9.22 KB

uhppoted.conf

uhppoted.conf is the shared configuration file for all the uhppoted modules and is variously located in:

  • /etc/uhppoted/uhppoted.conf (Linux)
  • /usr/local/etc/com.github.uhppoted/uhppoted.conf (MacOS)
  • \Program Data\uhppoted\uhppoted.conf (Windows)

The file contains optional configuration sections for all supported modules. For uhppoted-httpd, only the HTTPD section is relevant.

HTTPD

Attribute Description Default
httpd.html Folder containing the HTML pages, images, etc Embedded HTML
httpd.http.enabled Enables/disables the HTTP server i.e. without TLS false
httpd.http.port HTTP server port 8080
httpd.https.enabled Enables/disables the HTTPS server true
httpd.https.port HTTPS server port 8443
httpd.tls.ca HTTPS server CA certificate PEM file config/httpd/ca.cert
httpd.tls.certificate HTTPS server TLS certificate PEM file config/httpd/uhppoted.cert
httpd.tls.key HTTPS server TLS key PEM file config/httpd/uhppoted.key
httpd.tls.client.certificates.required Enforces client mutual TLS authentication false
httpd.security.auth Authorization for HTTP requests (none/some) some
httpd.security.local.db auth.json file config/httpd/auth.json
httpd.security.cookie.max-age Security cookie expiry (hours) 24
httpd.security.login.expiry Login cookie expiry e.g. 5m 1m
httpd.security.session.expiry Session cookie expiry e.g. 300s 5m
httpd.security.admin.role Administrator role name admin
httpd.security.otp.issuer Issuer name for OTP QR code uhppoted-httpd
httpd.security.otp.login allow enables login using OTP no
httpd.request.timeout Time limit for fulfilling an HTTP request 15s
httpd.system.interfaces System file for data var/system/interfaces.json
httpd.system.controllers System file for data var/system/controllers.json
httpd.system.doors System file for data var/system/doors.json
httpd.system.groups System file for data var/system/groups.json
httpd.system.cards System file for data var/system/cards.json
httpd.system.events System file for data var/system/events.json
httpd.system.logs System file for data var/system/logs.json
httpd.system.users System file for data var/system/users.json
httpd.system.history System file for data var/system/history.json
httpd.system.refresh Controller information refresh interval 30s
httpd.system.windows.ok 'ok' time window after refresh 10s
httpd.system.windows.uncertain 'uncertain' time window after last refresh 30s
httpd.system.windows.systime Allowed time window for controller system time 5m0s
httpd.system.windows.expires Cached controller attribute expiry time 2m0s
httpd.db.rules.acl grules file for fine-grained access control etc/httpd/acl.grl
httpd.db.rules.interfaces grules file for interfaces admin authorisation etc/httpd/grules/interfaces.grl
httpd.db.rules.controllers grules file for controllers admin authorisation etc/httpd/grules/controllers.grl
httpd.db.rules.cards grules file for cards admin authorisation etc/httpd/grules/cards.grl
httpd.db.rules.doors grules file for doors admin authorisation etc/httpd/grules/doors.grl
httpd.db.rules.groups grules file for groups admin authorisation etc/httpd/grules/groups.grl
httpd.db.rules.events grules file for events admin authorisation etc/httpd/grules/events.grl
httpd.db.rules.logs grules file for logs admin authorisation etc/httpd/grules/logs.grl
httpd.db.rules.users grules file for users admin authorisation etc/httpd/grules/users.grl
httpd.audit.file Audit trail file var/httpd/audit/audit.log
httpd.retention Retention time for deleted items 5m0s
httpd.timezones File for custom timezones e.g. Afica/Cairo etc/timezones
httpd.PIN.enabled Enables card keypad PIN codes false
httpd.cards.default-start-date Default start date for cards '' (none)
httpd.cards.default-end-date Default end date for cards '' (none)

Sample HTTPD section:

# HTTPD
httpd.html = /usr/local/etc/com.github.uhppoted/http/html
httpd.http.enabled = true
; httpd.http.port = 8080
; httpd.https.enabled = true
; httpd.https.port = 8443
; httpd.tls.ca = /usr/local/etc/com.github.uhppoted/httpd/ca.cert
; httpd.tls.certificate = /usr/local/etc/com.github.uhppoted/httpd/uhppoted.cert
; httpd.tls.key = /usr/local/etc/com.github.uhppoted/httpd/uhppoted.key
httpd.tls.client.certificates.required = true
httpd.security.auth = some
; httpd.security.local.db = /usr/local/etc/com.github.uhppoted/httpd/auth.json
; httpd.security.cookie.max-age = 24
; httpd.security.login.expiry = 1m
httpd.security.session.expiry = 300s
httpd.request.timeout = 15s
; httpd.system.interfaces = /usr/local/var/com.github.uhppoted/httpd/system/interfaces.json
; httpd.system.controllers = /usr/local/var/com.github.uhppoted/httpd/system/controllers.json
; httpd.system.doors = /usr/local/var/com.github.uhppoted/httpd/system/doors.json
; httpd.system.groups = /usr/local/var/com.github.uhppoted/httpd/system/groups.json
; httpd.system.cards = /usr/local/var/com.github.uhppoted/httpd/system/cards.json
; httpd.system.events = /usr/local/var/com.github.uhppoted/httpd/system/events.json
; httpd.system.logs = /usr/local/var/com.github.uhppoted/httpd/system/logs.json
; httpd.system.users = /usr/local/var/com.github.uhppoted/httpd/system/users.json
; httpd.system.refresh = 30s
httpd.system.windows.ok = 10s
httpd.system.windows.uncertain = 30s
; httpd.system.windows.systime = 5m0s
; httpd.system.windows.expires = 2m0s
; httpd.db.rules.acl = /usr/local/etc/com.github.uhppoted/httpd/acl.grl
httpd.db.rules.interfaces = /usr/local/etc/com.github.uhppoted/httpd/grules/interfaces.grl
httpd.db.rules.controllers = /usr/local/etc/com.github.uhppoted/httpd/grules/controllers.grl
httpd.db.rules.cards = /usr/local/etc/com.github.uhppoted/httpd/grules/cards.grl
httpd.db.rules.doors = /usr/local/etc/com.github.uhppoted/httpd/grules/doors.grl
httpd.db.rules.groups = /usr/local/etc/com.github.uhppoted/httpd/grules/groups.grl
httpd.db.rules.events = /usr/local/etc/com.github.uhppoted/httpd/grules/events.grl
httpd.db.rules.logs = /usr/local/etc/com.github.uhppoted/httpd/grules/logs.grl
httpd.db.rules.users = /usr/local/etc/com.github.uhppoted/httpd/grules/users.grl
; httpd.audit.file = /usr/local/var/com.github.uhppoted/httpd/audit/audit.log
httpd.retention = 5m0s
; httpd.timezones = /usr/local/etc/com.github.uhppoted/timezones
; http.PIN.enabled = false