-
Notifications
You must be signed in to change notification settings - Fork 37
Configuration V5
This page explains the configuration options for the SMP server. It ships with the following configuration files:
-
webapp.properties
for user interface properties -
smp-server.properties
for SMP functionality properties -
application.properties
(previouslypd-client.properties
) for (Peppol|TOOP|DE4A) Directory client configuration
All files reside by default in the src/main/resources
folder of the phoss-smp-webapp-(mongodb|sql|xml)
project.
All .properties files use ISO-8859-1 as their default encoding.
Note: since the default Java properties file handling is used to read the configuration file recall that trailing whitespaces of a property name and leading white spaces of a property value are automatically skipped. Trailing whitespaces of a property value are not skipped!
This project was tested with MySQL 5.x and PostgreSQL 13 as a backend and it works without problems. Since v5.3.0 the database is automatically created via a built-in Flyway database versioning engine.
The database should be setup using latin
collation, because the keys used internally would (when using utf8
) exceed the maximum length of 767 characters. This is a legacy problem because the data structures from the original CIPA SMP are re-used.
This properties file defines just settings relevant for the web application but not the SMP itself. Modifications to this file have no relevant impact on the SMP functionality.
Alternatively the absolute path of this configuration file can be specified by the environment variable SMP_WEBAPP_CONFIG
(since v5.1.0) or alternatively by the system property peppol.smp.webapp.properties.path
or smp.webapp.properties.path
(in that order).
It contains the following properties:
-
global.debug
: overall debug mode. This enables additional checks that should not be executed every time (e.g. because they are slow or because they are spamming the logfile etc.). This flag has no impact on the logging level! This flag should be set totrue
in development mode, but tofalse
in production mode. The value of this field is internally maintained in classcom.helger.commons.debug.GlobalDebug
. -
global.production
: overall production mode. If this flag is set tofalse
certain functionality not applicable in development environment (like mass mail sending) is disabled. This flag should be set totrue
in production mode. -
global.debugjaxws
(since 5.0.7): globally enable or disable Webservice API logging. To enable debug logging, set this value totrue
. If set tofalse
debug logging is disabled. The default value isfalse
and in production systems this should be set tofalse
as well. Recommendation: enable this flag only temporarily for debugging purposes. -
webapp.datapath
: the path where all relevant data and settings are stored. This can e.g. be a relative path (likeconf
- relative to the web application directory) for development purposes but should be an absolute path (e.g./var/www/smp/data
) in production. Make sure the user running the SMP has write access to this folder. -
webapp.checkfileaccess
: a flag that determines whether the directory of the web application should be checked for read and write access. This is only required if the data path inside the web application and should therefore always befalse
. -
webapp.testversion
: a special indicator for the web application whether the version should be highlighted as a "test" version. Set totrue
in debug mode andfalse
in production mode. -
webapp.version
(only in 4.0.3): the version number indicating the SMP server software version number -
webapp.statistics.persist
(since 5.2.4):true
to enable the persistence of usage statistics when shutting down,false
to not store the statistics. The default value istrue
. -
webapp.startpage.dynamictable
(since 5.0.2): make the public start page a dynamic page with searching, paging etc. This is slower than the static version because additional requests need to be performed. This property is mainly present to restore the default behaviour for versions up to 5.0.1. The default value isfalse
. -
webapp.startpage.participants.none
(since 5.0.4): set this property totrue
to disable the listing of all maintained participants of the SMP on the public start page. The default value isfalse
. -
webapp.startpage.extensions.show
(since 5.1.0):true
to show the content of the extensions in the public list of contained service groups. Default isfalse
. -
webapp.directory.name
(since 5.0.7): set this property to change the name of the Directory implementation on the user interface. By default "Peppol Directory" is used, but it maybe "TOOP Directory" for TOOP etc. - there are no limits on the name. This configuration item has no functional implications. -
webapp.servicegroups.extensions.show
(since 5.1.0):true
to show the content of the extensions in the service group list in the administrative area. Default isfalse
. -
webapp.security.login.errordetails
(since 6.0.0): enable or disable the display of error details on failed logins via the UI. The default value istrue
for backwards compatibility reasons. -
webapp.public.login.enabled
(since 5.2.0):true
to show a login UI element on the/public
application part,false
to not show it. The default value istrue
. -
webapp.public.logo.inline
(since 6.0.0): an optional data URL that contains an image that will be used as the application logo. -
webapp.public.logo.externalurl
(since 6.0.0): an optional absolute external URL (starting withhttp
orhttps
) that references an image that will be used as the application logo. If this is used, make sure the CORS HTTP headers are set correctly. -
webapp.public.logo.internalurl
(since 6.0.0): an optional relative internal URL (starting with/
) that references an image that will be used as the application logo. If this is used, make sure it is resolved correctly on the application host. -
webapp.public.showappname
(since 5.5.0):true
to show application name, application version and supported API on the public page,false
to hide it. Default istrue
. The information is always shown in the administration part. -
webapp.public.showsource
(since 5.5.0):true
to show the link to the GitHub project on the public page,false
to hide it. Default istrue
. The link to the source is always shown in the administration part. -
webapp.public.showauthor
(since 5.2.6):true
to show authorship on the public page,false
to hide it. Default istrue
. The authorship is always shown in the administration part. -
webapp.nicename.doctypes.path
(since 5.2.1): the file system path to an XML file that contains a mapping from document type identifiers to nice display names. By default an internal list is loaded. See below for the layout of the XML file. -
webapp.nicename.processes.path
(since 5.2.1): the file system path to an XML file that contains a mapping from process identifiers to nice display names. By default an internal list is loaded. See below for the layout of the XML file. -
webapp.imprint.enabled
(since 5.2.4):true
to enable the printing of a custom imprint in the footer of every page -
webapp.imprint.text
(since 5.2.4): the text to used for the imprint. This setting is mandatory if an imprint should be shown. This is only evaluated ifwebapp.imprint.enabled
is set totrue
. -
webapp.imprint.href
(since 5.2.4): an optional link target for the imprint. This must be a valid URL using the "http" or "https" scheme. The imprint text is shown even if no href is provided. Example value:https://www.google.com
-
webapp.imprint.target
(since 5.2.4): the optional link target for the imprint. This is only evaluated ifwebapp.imprint.href
is present. By default the link opens in the current window. Example value:_blank
. -
webapp.imprint.cssclasses
(since 5.2.4): an optional whitespace separated list of CSS classes that are applied on the imprint HTML node (<span>
for text only or<a>
if a link href is present). Only existing CSS classes from Bootstrap 4 can be used. Example value:mx-3 badge badge-primary
. -
http.method.options.disabled
(since 5.2.6): enable or disable support for the HTTP OPTIONS verb. By default it is enabled. -
csp.enabled
(since 5.2.6): enable or disable the output of the "Content Security Policy" HTTP headers. By default this is enabled. -
csp.reporting.only
(since 5.2.6): enable or disable the reporting of CSP issues only. So no content will be blocked if CSP is enabled but a CSP violation is found. By default this is disabled. The reporting URI inside the SMP is always/smp-cspreporting
. -
csp.reporting.enabled
(since 5.2.6): enable or disable the reporting of CSP issues if something is blocked. This only has an effect, ifcsp.enabled
istrue
andcsp.reporting.only
isfalse
. By default this is disabled. The reporting URI inside the SMP is always/smp-cspreporting
.
An XML file referenced by the property webapp.nicename.doctypes.path
(for document types) must look like this to be usable:
<root type="doctypeid">
<item id="busdox-docid-qns::urn:oasis:names:specification:ubl:schema:xsd:ApplicationResponse-2::ApplicationResponse##urn:fdc:peppol.eu:poacc:trns:catalogue_response:3::2.1" name="Peppol Catalogue Response transaction 3.0" deprecated="false">
<procid scheme="cenbii-procid-ubl" value="urn:fdc:peppol.eu:poacc:bis:catalogue_only:3" />
</item>
<item id="busdox-docid-qns::any-other-id" name="This is the fancy document type" deprecated="true" />
</root>
Note: the format for Document Type IDs was extended in v5.2.4 to allow the definition of allowed processes for a certain document type.
and the XML file reference by the property and webapp.nicename.processes.path
(for processes) looks basically the same:
<root type="processid">
<item id="cenbii-procid-ubl::urn:fdc:peppol.eu:2017:poacc:billing:01:1.0" name="Peppol BIS 5A" deprecated="false" />
<item id="cenbii-procid-ubl::any-other-id" name="This is a fancy process" deprecated="true" />
</root>
The SMP service is configured using a single configuration file src/main/resources/smp-server.properties
.
Alternatively the absolute path of the SMP configuration file can be specified by the environment variable SMP_SERVER_CONFIG
(since v5.1.0) or alternatively by the system property peppol.smp.server.properties.path
or smp.server.properties.path
(in that order).
The following list describes all the possible configuration items:
-
smp.backend
: The backend to be used. Can either be "sql" or "xml". Any other value will result in a startup error. -
smp.keystore.type
(since 5.0.4): The type of the keystore. Can either beJKS
orPKCS12
. The value is case insensitive. The default value isJKS
. -
smp.keystore.path
: The classpath - relative to the project - where the Java key store (of type JKS) with the SMP certificate is located. An empty directorysrc/main/resources/keystore
is present which could contain the key store. In this case the properties entry should start withkeystore/
. This may also be an absolute path to a file where the JKS keystore is located.
Note: The key store should contain exactly one certificate entry with an arbitrary name and the certificate must have the same password as the whole key store! -
smp.keystore.password
: The password used to access the key store. -
smp.keystore.key.alias
: The alias of the key within the key store. Is case sensitive and may not be empty. This alias is used to sign certain response messages. -
smp.keystore.key.password
: The password of the key with the above specified alias. Should be the same as the password of the whole key store (seesmp.keystore.password
). -
smp.truststore.type
(since 5.0.4): The type of the trust store. Can either beJKS
orPKCS12
. The value is case insensitive. The default value isJKS
. -
smp.truststore.path
(since 5.0.0): The classpath - relative to the project - where the Java trust store (of type JKS) with the public certificates of the SMLs to communicate with are contained. This property is optional. If no trust store path is provided, the SML client caller trusts all SML https certificates. -
smp.truststore.password
(since 5.0.0): The password used to access the truststore. This property is optional. -
smp.forceroot
: It indicates, whether all internal paths should be forced to root ("/"). This is a flag which may either have the valuetrue
orfalse
. This is especially helpful, when the application runs in a Tomcat application context (e.g. "/smp") but is proxied to a different domain via Apache httpd. -
smp.publicurl
(since 4.1.0): this optional property allows you to define the absolute server URL by which the SMP is accessible from the outside. This is helpful when the SMP runs on an application server (like Tomcat) that is proxied by a web server (like httpd) to pass out the correct name in SMP responses that require absolute URLs. -
smp.publicurl.mode
(since 5.2.4): determine how the ServiceGroup domain names in the REST calls to GET /{serviceGroup} should be rendered. Possible values are:-
default
- uses the value of thesmp.publicurl
as the domain name -
dynamic-participant
- will use the dynamically created hostname (Note: this may be slow when used with BDXR mode, because this will perform a NAPTR resolution)
-
-
smp.identifiertype
(since 5.0.0): determine the identifier types to be used. Possible values are (the default ispeppol
):-
simple
- all identifier schemes and values are accepted -
peppol
- the special stricter Peppol rules for identifiers are applied -
bdxr
- the BDXR SMP identifier rules are applied
-
-
smp.rest.type
(since 5.0.0): this property determines the layout of the REST responses. Possible values are (the default ispeppol
):-
peppol
- the returned XML data corresponds to the Peppol SMP specification (XML namespace URIhttp://busdox.org/serviceMetadata/publishing/1.0/
) -
bdxr
- the returned XML data corresponds to the OASIS BDXR SMP v1 specification (XML namespace URIhttp://docs.oasis-open.org/bdxr/ns/SMP/2016/05
) -
bdxr2
(since v5.7.0) - the returned XML data corresponds to the OASIS BDXR SMP v2 specification (XML namespace URIshttp://docs.oasis-open.org/bdxr/ns/SMP/2/ServiceGroup
andhttp://docs.oasis-open.org/bdxr/ns/SMP/2/ServiceMetadata
)
-
-
smp.rest.log.exceptions
(since 5.1.0): this property enables or disables the detailed logging of exceptions that occur while processing REST calls. By default the logging is disabled. -
smp.rest.payload.on.error
(since 5.2.1): this property enables or disables the provision of HTTP response contents in case of errors from the REST API. By default this is enabled (for backwards compatibility), but for security reasons this might be disabled. -
smp.rest.remote.queryapi.disabled
(since 5.3.0-RC2): this property enables or disables the availability of the remote query API, that allows to query remote SMPs for all document types, service information and business cards. By default this is disabled. -
smp.status.enabled
(since 5.0.6): this property can be used to enable or disable the status API at/smp-status/
. By default the status API is enabled. -
smp.status.sql.enabled
(since 5.4.0): this property can be used to enable or disable the SQL backend specific status items. This is especially relevant as a negative SQL connectivity check can take quite some time, which will contradict the usage of/smp-status
for health checking purposes. -
smp.status.show.certificate.dates
(since 5.7.0): if this property istrue
, the status itemssmp.certificate.notbefore
andsmp.certificate.notafter
are shown in the/smp-status
data -
smp.timezone
(since 5.4.0): this property can be used to set the default time zone in which the SMP operates. By default it isUTC
(aka Greenwich Mean Time / GMT) but any other time zone name likeEurope/Vienna
is also possible. The exact list of available time zones depends on the Java version that is used. If the provided value is incorrect, the SMP wont start up. -
smp.bdxr2.certificate.mimecode
(since 5.7.0): this property defines the value of the Endpoint CertificatemimeCode
attribute. The default value isapplication/base64
. This property is only evaluated if thesmp.rest.type
isbdxr2
. -
smp.bdxr2.certificate.typecode
(since 5.7.0): this property defines the value of the Endpoint CertificateTypeCode
element. The default value isbdxr-as4-signing-encryption
. This property is only evaluated if thesmp.rest.type
isbdxr2
. -
sml.smpid
: The SMP ID to use when using the SML interface.
Note: it must be the same ID that was used for the initial registration of the SMP to the SML.
Note: is only required if the entrysml.active
is set totrue
. -
sml.smp.ip
(since 5.0.3): this property defines the default value for the field physical address in the SMP to SML registration process and must contain the public IP address of the SMP server (e.g. like1.2.3.4
). If this property is not set the field must explicitly entered during the registration process.
Note: has only effect if the entrysml.active
is set totrue
. -
sml.smp.hostname
(since 5.0.3): this property defines the default value for the field logical address in the SMP to SML registration process and must contain the public hostname of the SMP server (e.g. likesmp.example.org
orhttp://smp.example.org
). If this property is not set the field must explicitly entered during the registration process.
Note: has only effect if the entrysml.active
is set totrue
. -
sml.connection.timeout.ms
(since 5.0.4): if this property is present it sets the connection timeout in milliseconds to the configured SML.
Note: is only required if the entrysml.active
is set totrue
. -
sml.request.timeout.ms
(since 5.0.4): if this property is present it sets the request timeout in milliseconds to the configured SML.
Note: is only required if the entrysml.active
is set totrue
.
Since version v5.0.2 the following properties can be managed on the GUI and therefore the effective values used, may differ from the ones specified in the configuration file:
-
sml.active
: This field indicates, whether connection to the SML is active or not. This is a flag which may either have the valuetrue
orfalse
. For testing purposes you may set it tofalse
to disable the communication with the SML. For production the value must betrue
so that all relevant adds, updates or deletes of participants is communicated to the SML which will create the respective DNS entries. -
sml.needed
(since 5.0.4): This fields triggers the display of warnings if the SML connection is disabled. If this field istrue
andsml.active
field isfalse
warnings are displayed on the UI. -
sml.url
(up to and including 5.0.6): The URL of the SML manage business identifier service. For production purposes (SML) usehttps://edelivery.tech.ec.europa.eu/edelivery-sml/manageparticipantidentifier
. For the test-SML (SMK) use the URLhttps://acc.edelivery.tech.ec.europa.eu/edelivery-sml/manageparticipantidentifier
.
Note: is only required if the entrysml.active
is set totrue
.
Note: from v5.0.7 the way how to select SML configurations changed and this flag is obsoleted -
smp.rest.writableapi.disabled
(since 4.0.2): this property can be used to programmatically disable the non-standard writable REST APIs. If they are invoked an HTTP 404 is returned if this flag is set totrue
. This property may have only the valuestrue
orfalse
. If not specified, the default value isfalse
meaning that the writable REST API is enabled (as it always was). -
smp.peppol.directory.integration.enabled
(since 4.1.2): set this property totrue
to activate the Peppol Directory Business Card Features -
smp.peppol.directory.hostname
(since 4.1.2): the fully qualified host name of the Peppol Directory server. Defaults tohttps://directory.peppol.eu
.
Note: up to and including version 5.0.2 the default value washttp://pyp.helger.com
-
smp.peppol.directory.integration.autoupdate
(since 5.0.4): automatically update the Peppol Directory server, if something changes in the business card. This feature can be changed on the UI of the SMP.
The following settings are only needed, when running the SMP behind a proxy server. They are available since version v5.0.7:
-
http.proxyHost
: Proxy host name or IP address for HTTP connections -
http.proxyPort
: Port number of the proxy host to use for HTTP connections -
https.proxyHost
: Proxy host name or IP address for HTTPS connections -
https.proxyPort
: Port number of the proxy host to use for HTTPS connections -
proxy.username
: Optional user name for the proxy server. -
proxy.password
: Optional password for the user on the proxy server
Note: make sure to set both http.
and https.
properties - this is related to the target server to connect and not the hosting of the SMP.
Note: If Peppol Directory is used, ensure that your pd-client.properties
file also contains the respective HTTP proxy configuration items as outlined in https://github.com/phax/phoss-directory/#pd-client
When the SQL backend is used, the following properties are also available:
-
jdbc.driver
: The JDBC driver class to be used by JPA. For MySQL usecom.mysql.jdbc.Driver
. -
jdbc.url
: The JDBC URL of the database to connect to. For a local MySQL database called "smp" the string would look like this:jdbc:mysql://localhost:3306/smp?autoReconnect=true
Note: the URL depends on the JDBC driver used! -
jdbc.user
: The database user to be used when connecting to the database. -
jdbc.password
: The password of the JDBC user to be used when connecting to the DB -
jdbc.schema
(since 5.3.0-RC5): The database schema to be used when connecting to the DB. The default value issmp
. -
jdbc.schema-create
(since 5.3.0-RC6): Should Flyway try to create the database schema (valuetrue
) or not (valuefalse
). The default value isfalse
. -
target-database
: The target database type to be used.
For MySQL this should beMySQL
.
For PostgreSQL this should bePostgreSQL
(since 5.3.0).
For Oracle this should beOracle
(since 5.6.0).
Note: this is not the name of the database schema. That name is part of thejdbc.url
. -
jdbc.execution-time-warning.enabled
(since 5.0.6): enable or disable the logging of long running JDBC transactions. Set this value totrue
to enable logging of long running JDBC transactions andfalse
to disable it. By default these warnings are enabled. -
jdbc.execution-time-warning.ms
(since 5.0.6): the milliseconds after which a warning will be emitted if a JDBC transaction takes longer. This only has an effect if the configuration itemjdbc.execution-time-warning.enabled
evaluates totrue
. The default value is1000
(1 second). -
smp.flyway.enabled
(since 5.4.0): enable or disable the usage of Flyway. It is highly recommended to NOT use this configuration item except you got instructions to do so. Allowed values aretrue
(=enabled) andfalse
(disabled). The default value istrue
.
For usage with the SMP you need to create a Database manually as well as a Login (matching the configuration items jdbc.user
and jdbc.password
) that needs the privilege "Can login" on that Database.
If the configuration jdbc.schema-create
is set to false
you also need to create the Schema (matching the configuration item jdbc.schema
) inside the Database before you can start.
When the XML backend is used no further configuration properties are available. The XML data is stored in the directory denoted by the webapp.datapath
property in the webapp.properties
file.
When the MongoDB backend is used (since v5.2.0), the following properties are also available:
-
mongodb.connectionstring
: The connection string to be used. The most simple one is e.g.mongodb://localhost
. -
mongodb.dbname
: The database name to be used. The recommended value isphoss-smp
.
Since version 5 you can configure internal error handling so that the SMP server tries to send an email in case an internal error occurs. This works independent of the used backend and can be used with any of them equally. Therefore the following configuration properties are available:
-
smp.errorhandler.sender.email
: the sender email address of the internal error email (e.g.smp@example.org
) -
smp.errorhandler.sender.name
: the sender display name of the internal error email. Defaults toSMP Internal Error Sender
. -
smp.errorhandler.receiver.email
: the receiver email address of the internal error email (e.g.support@example.org
) -
smp.errorhandler.receiver.name
: the receiver display name of the internal error email (e.g.Example Support
) -
smp.smtp.hostname
: SMTP hostname to use. Either as domain name or as IP address. -
smp.smtp.port
: SMTP server port -
smp.smtp.username
: optional SMTP user name -
smp.smtp.password
: optional SMTP password -
smp.smtp.ssl
: use SMTP SSL connection? Defaults tofalse
-
smp.smtp.starttls
: use SMTP STARTTLS connection? Defaults tofalse
-
smp.smtp.connectiontimeoutms
: SMTP server connection timeout in milliseconds. Defaults to10000
(10 seconds). -
smp.smtp.sockettimeoutms
: SMTP server read timeout in milliseconds. Defaults to10000
(10 seconds). -
smp.smtp.debug
: Emit debug SMTP server output? Defaults tofalse
Example of a development smp-server.properties
file with XML backend (for easy testing):
# The backend to be used
smp.backend = xml
## Keystore data
smp.keystore.path = keystore/keystore.jks
smp.keystore.password = peppol
smp.keystore.key.alias = smp keypair
smp.keystore.key.password = peppol
# Force all paths to be "/" instead of the context path
smp.forceroot = true
## Write to SML? true or false
sml.active=false
Example of a production-like smp-server.properties
with XML backend (for close to production setup):
# The backend to be used
smp.backend = xml
## Keystore data
smp.keystore.path = keystore/keystore.jks
smp.keystore.password = peppol
smp.keystore.key.alias = smp keypair
smp.keystore.key.password = peppol
# Force all paths to be "/" instead of the context path
smp.forceroot = true
## Write to SML? true or false
sml.active=true
# SMP ID
sml.smpid=TEST-SMP-ID1
Example of a development smp-server.properties
file using a local MySQL database called smp
without an SML connector (for easy testing):
# The backend to be used
smp.backend = sql
## Keystore data
smp.keystore.path = keystore/keystore.jks
smp.keystore.password = peppol
smp.keystore.key.alias = smp keypair
smp.keystore.key.password = peppol
# Force all paths to be "/" instead of the context path
smp.forceroot = true
## Write to SML? true or false
sml.active=false
## JDBC configuration for DB
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/smp
jdbc.user = smp
jdbc.password = smp
target-database = MySQL
jdbc.read-connections.max = 10
## Warn if JDBC execution time is exceeded? (since 5.0.6)
jdbc.execution-time-warning.enabled = true
jdbc.execution-time-warning.ms = 5000
Example of a production-like smp-server.properties
file using a local MySQL database called smp
with the SML connector (for close to production setup):
# The backend to be used
smp.backend = sql
## Keystore data
smp.keystore.path = keystore/keystore.jks
smp.keystore.password = peppol
smp.keystore.key.alias = smp keypair
smp.keystore.key.password = peppol
# Force all paths to be "/" instead of the context path
smp.forceroot = true
## Write to SML? true or false
sml.active=true
# SMP ID
sml.smpid=TEST-SMP-ID1
## JDBC configuration for DB
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/smp
jdbc.user = smp
jdbc.password = smp
target-database = MySQL
jdbc.read-connections.max = 10
The Peppol Directory (PD)/TOOP Directory client, that can optionally be used inside the SMP also requires a configuration file called application.properties
. The resolution rules are defined at https://github.com/phax/ph-commons/wiki/ph-config
See Migrations for details on the update.
The Peppol Directory (PD)/TOOP Directory client, that can optionally be used inside the SMP also requires a configuration file called pd-client.properties
(Peppol Directory Client properties). The resolution rules are:
- Check for the value of the system property
peppol.pd.client.properties.path
- Check for the value of the system property
pd.client.properties.path
- The filename
private-pd-client.properties
in the root of the classpath - The filename
pd-client.properties
in the root of the classpath
The following list describes the most relevant configuration items (independent of the version):
Note: the property names will change in release 5.7.0
-
keystore.type
: The type of the keystore. Can either beJKS
orPKCS12
. The value is case insensitive. The default value isJKS
.
Note: This value corresponds to the value ofsmp.keystore.type
insmp-server.properties
-
keystore.path
: The classpath - relative to the project - where the Java key store (of type JKS) with the SMP certificate is located. An empty directorysrc/main/resources/keystore
is present which could contain the key store. In this case the properties entry should start withkeystore/
. This may also be an absolute path to a file where the JKS keystore is located.
Note: The key store should contain exactly one certificate entry with an arbitrary name and the certificate must have the same password as the whole key store!
Note: This value corresponds to the value ofsmp.keystore.path
insmp-server.properties
-
keystore.password
: The password used to access the key store.
Note: This value corresponds to the value ofsmp.keystore.password
insmp-server.properties
-
keystore.key.alias
: The alias of the key within the key store. Is case sensitive and may not be empty. This alias is used to sign certain response messages.
Note: This value corresponds to the value ofsmp.keystore.key.alias
insmp-server.properties
-
keystore.key.password
: The password of the key with the above specified alias. Should be the same as the password of the whole key store (seekeystore.password
).
Note: This value corresponds to the value ofsmp.keystore.key.password
insmp-server.properties
See https://github.com/phax/phoss-directory/#pd-client for further details on the HTTP proxy configuration etc.
It is appreciated if you star the GitHub project if you like it.
Donation link: https://paypal.me/PhilipHelger
- Home
- News and noteworthy
- Migrations
- Download
- Features
- Configuration
- Running
- Source related
- Other information
- Future plans
- License
- Release Tasks