...
The AUTHENTICATION service manages the access to the yuuvis® Momentum API gateway. With a suitable configuration, also the access to external services running in the same Kubernetes cluster can be managed via the AUTHENTICATION service of yuuvis® Momentum.
...
In order to create a route for a service in the API gateway, in the file authentication<externalservice>-service.yaml
in the section labels
the entry yuuvis:
true
has to be added.
...
Deploy the pod for the external service
app
in the namespaceother
.Code Block language yml title <app>-deployment.yaml linenumbers true apiVersion: apps/v1 kind: Deployment metadata: namespace: other name: app spec: replicas: 1 selector: matchLabels: name: app template: metadata: labels: name: app spec: containers: - name: app ... ports: - containerPort: 80 ...
Create a Kubernetes Service for cognisphere
app
in the namespaceother
, e.g.app-svc
.Code Block language yml title service in the namespace other<app>-service.yaml linenumbers true apiVersion: v1 kind: Service metadata: name: app-svc labels: name: app-svc namespace: other spec: ports: - name: "http" port: 80 targetPort: 80 selector: name: app type: ClusterIP
Create the Kubernetes Service in the namespace
yuuvis
. Use the typeexternalName
that references the namespaceother
.Code Block language yml title service im namespace yuuvis type externalName:<externalservice>-service.yaml linenumbers true apiVersion: v1 kind: Service metadata: name: app labels: yuuvis: "true" namespace: yuuvis spec: type: ExternalName externalName: app-svc.other.svc.cluster.local ports: - port: 80
Add the external service
app
to the sectionsrouting.endpoints:
androuting.access:
in the fileauthentication-prod.yml
.Code Block language yml title authentiaction-prod.yml linenumbers true routing.endpoints: - 'app' # external service added to the list ... authorization.accesses: - endpoints: /app/** # add # optionally restrict to a method, e.g.: method: Post # optionally restrict to users with specific roles, e.g.: hasAuthority('COGNISPHERE')
- Restart the AUTHENTICATION service.
...