Merge "Adding docs for TLS mutual authentication in VES."
[dcaegen2.git] / docs / sections / services / ves-http / tls-authentication.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3
4 Certificates as authentication method for PNFs/VNFs
5 ===================================================
6
7 VES supports mutual TLS authentication via X.509 certificates. If VES is deployed via docker image then VES configuration can be modified by editing */opt/app/VESCollector/etc/collector.properties* which is present on the docker container. VES detects changes made to the mentioned file automatically and restarts the application.
8
9 The authentication can be enabled by *collector.service.secure.clientauth* property. When *collector.service.secure.clientauth=1* VES uses additional properties:
10
11     * *collector.truststore.file.location* - a path to jks trust store containing certificates of clients or certificate authorities
12     * *collector.truststore.passwordfile* - a path to file containing password for the trust store
13
14 Of course, mutual TLS authentication requires also server certificates, so following properties have to be set to valid values:
15
16     * *collector.keystore.file.location* - a path to jks key store containing certificates which can be used for TLS handshake
17     * *collector.keystore.passwordfile* - a path to file containing a password for the key store
18     * *collector.keystore.alias* - a name of a certificate from a key store which VES will use during TLS handshake
19
20 Property *header.authflag=1* may by used along *collector.service.secure.clientauth=1* in order to enable mutual TLS authentication and basic HTTP authentication.