X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=capifcore%2FREADME.md;h=f773802ce498bdeb63af615a1c2d1056cd6a0986;hb=5e46d1483292c01c71c92796d0d87012fac29cae;hp=38a0aa2c2434e8f3fde5ab4e174ef2255a4be799;hpb=82a60949ea3507b00313bb627d91c9169c0a37c7;p=nonrtric%2Fplt%2Fsme.git diff --git a/capifcore/README.md b/capifcore/README.md index 38a0aa2..f773802 100644 --- a/capifcore/README.md +++ b/capifcore/README.md @@ -1,44 +1,44 @@ # O-RAN-SC Non-RealTime RIC CAPIF Core implementation -This product is a Go implementation of the CAPIF Core function, based on the 3GPP "29.222 Common API Framework for 3GPP Northbound APIs (CAPIF)" interfaces, see https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3450. +This product is a Go implementation of the CAPIF Core function, which is based on the 3GPP "29.222 Common API Framework for 3GPP Northbound APIs (CAPIF)" interfaces, see https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3450. -The, almost, complete data model for CAPIF is shown in the diagram below. +The nearly complete data model for CAPIF is shown in the diagram below. -The data used within CAPIF Core for registering rApps that both provides and consumes services is shown in the diagram below. +The data used within CAPIF Core for registering rApps that provide and consume services is shown in the diagram below. Some examples of interactions between components using the CAPIF interface are shown in the sequence diagram below. -***NOTE!*** It has not been decided that CAPIF Core will actually do the Helm chart installation. This is just provided in the prototype as an example of what CAPIF Core could do. +***NOTE!*** It has not been decided that CAPIF Core will actually handle the Helm chart installation. The prototype includes this as an example of what CAPIF Core could potentially do. -If Helm is used, before publishing a service, the chart that belongs to the service must be registered in ChartMuseum. When publishing the service the following information should be provided in the `ServiceAPIDescription::description` attribute; "namespace", "repoName", "chartName", "releaseName". An example of the information: "Description of rApp helloWorld,namespace,repoName,chartName,releaseName". +If Helm is used, before publishing a service, the chart belonging to the service must be registered in ChartMuseum. When publishing the service the following information should be provided in the `ServiceAPIDescription::description` attribute; "namespace", "repoName", "chartName", "releaseName". An example of the information: "Description of rApp helloWorld,namespace,repoName,chartName,releaseName". ## Generation of API code @@ -70,7 +70,7 @@ For the CAPIF specification "TS29222_CAPIF_Discover_Service_API" a new dependenc ### Security in CAPIF -Security requirements that are applicable to all CAPIF entities includes provide authorization mechanism for service APIs from the 3rd party API providers and support a common security mechanism for all API implementations to provide confidentiality and integrity protection. +The security requirements applicable to all CAPIF entities include providing an authorization mechanism for service APIs from third-party API providers and supporting a common security mechanism for all API implementations to ensure confidentiality and integrity protection. In the current implementation Keycloak is being used as identity and access management (IAM) solution that provides authentication, authorization, and user management for applications and services. Keycloak provides robust authentication mechanisms, including username/password, two-factor authentication, and client certificate authentication that complies with CAPIF security requirements.