RS Gateway application.yaml Properties

RS Gateway configuration is provided in YAML files.

Note: For information about configuring OAuth 2.0 security, see the discussion about Oauth2 identity and access management.
The configuration is read from one or more of the following files, in order, when RS Gateway starts.
  • application class path/application.yaml — Always exists and has default configuration values.
  • /opt/mtx/conf/rsgateway-site.yaml — Configure overrides here.
Table 1. RS Gateway application.yaml Properties
Property Description
logging.config.classpath The path to the Log4J configuration file.
spring.jmx.enabled Set to true to enable JMX.
spring.main.banner-mode Configures the banner. Set to log to print the banner to a log file or to off to disable printing of the banner.
spring.mvc.hiddenmethod.filter.enabled Set to true to specify that there is a filter that converts posted method parameters into HTTP methods.
spring.config.use-legacy-processing Set to true to use Spring Boot legacy processing.
server.port The port on which RS Gateway listens.
server.servlet.context-path The context path from which content is served.
server.servlet.session.persistent Set to true to persist session data between restarts.
server.servlet.session.timeout The session timeout. If a duration suffix is not specified, seconds is used.
server.error.include-stacktrace When to use the trace attribute.
server.ssl.key-store-type The format used for the keystore. Set this to JKS if it is a JKS file.
server.ssl.key-store.classpath The path to the keystore containing the certificate.
server.ssl.key-store-password The password used to generate the certificate.
server.ssl.key-alias The alias mapped to the certificate.
server.ssl.enabled Set to true to enable TLS.
management.health.pricing.enabled Set to true to check pricing during the health check.
security.allowedHttpMethods The allowed HTTP methods.
Note: Out-of-the-box, requests with methods that are not DELETE, GET, PATCH, POST, or PUT receive a response with http status code 400 and headers only (no payload). Responses to OPTIONS requests do not have the "allows" header.
security.httpStatusRequestRejected The error code returned for a bad request.

For information about other properties not listed in RS Gateway application.yaml Properties, see the Spring documentation.

The following example shows an RS Gateway application.yaml configuration.
logging:
  config: classpath:log4j2.xml

# Spring
spring:

  jmx:
    enabled: false

  main:
    banner-mode: log

  mvc:
    hiddenmethod:
      filter:
        enabled: true

  # Spring-Boot 2.3 compatible config loading logic
  config:
    use-legacy-processing: true

server:
  port: 8080
  servlet:
    context-path: /rsgateway
    session:
      persistent: false
      timeout: 10m

  error:
    include-stacktrace: never

# The format used for the keystore. It could be set to JKS in case it is a JKS file
# server.ssl.key-store-type=PKCS12
# # The path to the keystore containing the certificate
# server.ssl.key-store=classpath:keystore/matrixx.p12
# # The password used to generate the certificate
# server.ssl.key-store-password=password
# # The alias mapped to the certificate
# server.ssl.key-alias=matrixx
# server.ssl.enabled=true

  ssl:
    enabled: false
    key-store-type: PKCS12
    key-store: classpath:keystore/matrixx.p12
    key-store-password: matrixx
    key-alias: matrixx

# Actuator End Points
management:
  endpoints:
    enabledByDefault: false
    web:
      exposure:
        include: '*'
  endpoint:
    info:
      enabled: true
    health:
      showDetails: always
      enabled: true
    metrics:
      enabled: true
    camelroutes:
      enabled: true
      readOnly: true
    loggers:
      enabled: true
    prometheus:
      enabled: true

  # Disable the checking of the LDAP server and JMS in the health endpoint
  health:
    ldap:
      enabled: false
    jms:
      enabled: false
    # Enable checking of pricing as part of the health check
    pricing:
      enabled: true

  metrics:
    web:
      server:
        request:
          autotime:
            enabled: true
    tags:
      application: rsgateway


# Camel
camel:
  spring-boot:
    jmx-enabled: false

# Security
security:
  allowedHttpMethods: DELETE,GET,PATCH,POST,PUT
  httpStatusRequestRejected: 400

mtx:
  oauth2:
    oauth2-login: false
    logout:
      oidc-logout: true
      post-logout-redirect-uri: http://localhost:8080/rsgateway/
    roles-converter:
      app-prefix: RSG