From 5e217217e43fc6d8a73f5aca0dfcbbf28fdd32c6 Mon Sep 17 00:00:00 2001 From: PatrikBuhr Date: Fri, 16 Dec 2022 12:10:58 +0100 Subject: [PATCH] Updated documentation Added documentation of authentification support component. Signed-off-by: PatrikBuhr Issue-ID: NONRTRIC-742 Change-Id: Ie5fa95cb638ef7abf16305fa7376afa11e20c52d --- docs/AuthSupport.odp | Bin 0 -> 16299 bytes docs/AuthSupport.png | Bin 0 -> 72895 bytes docs/overview.rst | 31 +++++++++++++++++++++++++++---- 3 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 docs/AuthSupport.odp create mode 100644 docs/AuthSupport.png diff --git a/docs/AuthSupport.odp b/docs/AuthSupport.odp new file mode 100644 index 0000000000000000000000000000000000000000..96fb3d928f0dbbb866ee881964a8577bc3c7a389 GIT binary patch literal 16299 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 literal 0 HcmV?d00001 diff --git a/docs/AuthSupport.png b/docs/AuthSupport.png new file mode 100644 index 0000000000000000000000000000000000000000..4068c22120260aa8f627aff571fc1d58ee4d1b7d GIT binary patch literal 72895 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 C>_(Zzlc5`2`` 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 N#>(OB9~PI1{{`19!!G~; literal 0 HcmV?d00001 diff --git a/docs/overview.rst b/docs/overview.rst index 9b33c4f3..04ba2248 100644 --- a/docs/overview.rst +++ b/docs/overview.rst @@ -38,7 +38,7 @@ These are the components that make up the Non-RT-RIC: * `DMaaP/Kafka Information Producer Adapters <#dmaap-kafka-information-producer-adapters>`_. :doc:`Documentation site adapter `. :doc:`Documentation site mediator `. * `Initial Non-RT-RIC App Catalogue <#initial-non-rt-ric-app-catalogue>`_. :doc:`Documentation site `. * `Initial K8S Helm Chart LCM Manager <#id5>`_. :doc:`Documentation site `. -* `Auth Token Fetch <#id6>`_. :doc:`Documentation site `. +* `Authentication Support <#id6>`_. :doc:`Documentation site `. * `Service Management & Exposure (SME) <#service-management-and-exposure>`_. :doc:`Documentation site `. * `Test Framework <#id7>`_. * `Use Cases: <#non-rt-ric-use-cases>`_ @@ -239,10 +239,33 @@ Implementation: - Repo: *nonrtric/plt/sme* - Documentation at the :doc:`Service Management & Exposure (SME) documentation site `. -Auth Token Fetch -~~~~~~~~~~~~~~~~ +Authentication Support +~~~~~~~~~~~~~~~~~~~~~~ -Work in progress. +The auth-token-fetch provides support for authentication. +It is intended to be used as a sidecar and does the authentication procedure, gets and saves the access token +in the local file system. This includes refresh of the token before it expires. +This means that the service only needs to read the token from a file. + +It is tested using Keycloak as authentication provider. + +.. image:: ./AuthSupport.png + :width: 500pt + +So, a service just needs to read the token file and for instance insert it in the authorization header when using HTTP. +The file needs to be re-read if it has been updated. + +The auth-token-fetch is configured by the following environment variables. + +* CERT_PATH - the file path of the cert to use for TSL, example: security/tls.crt +* CERT_KEY_PATH - the file path of the private key file for the cert, example: "security/tls.key" +* ROOT_CA_CERTS_PATH - the file path of the trust store. +* CREDS_GRANT_TYPE - the grant_type used for authentication, example: client_credentials +* CREDS_CLIENT_SECRET - the secret/private shared key used for authentication +* CREDS_CLIENT_ID - the client id used for authentication +* OUTPUT_FILE - the path where the fetched authorization token is stored, example: "/tmp/authToken.txt" +* AUTH_SERVICE_URL - the URL to the authentication service (Keycloak) +* REFRESH_MARGIN_SECONDS - how long in advance before the authorization token expires it is refreshed Test Framework ~~~~~~~~~~~~~~ -- 2.16.6