Fix documentation
[oom/platform/cert-service.git] / docs / sections / architecture.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. Copyright 2020 NOKIA
4 .. _architecture:
5
6 Architecture
7 ============
8
9 Interaction between components
10 ------------------------------
11
12 .. image:: resources/certservice_high_level.png
13    :width: 855px
14    :height: 223px
15    :alt: Interaction between components
16
17 The micro-service called CertService is designed for requesting certificates signed by external Certificate Authority (CA) using CMP over HTTP protocol. It uses CMPv2 client to send and receive CMPv2 messages.
18
19 CertService's client is also provided so other ONAP components (aka end components) can easily get certificate from CertService. End component is an ONAP component (e.g. DCAE collector or controller) which requires certificate from CMPv2 server to protect external traffic and uses CertService's client to get it.
20
21 CertService's client communicates with CertService via REST API over HTTPS, while CertService with CMPv2 server via CMP over HTTP.
22
23 To proof that CertService works Open Source CMPv2 server (EJBCA) is deployed and used in E2E tests.
24
25
26 Simplified certificate enrollment flow
27 --------------------------------------
28
29 .. image:: resources/certService_cert_enrollment_flow.png
30    :width: 1191px
31    :height: 893px
32    :alt: Simplified certificate enrollment flow