Skip to main content
Skip table of contents

User Authentication and Service Communication

Kaptain uses some components of the service mesh Istio and the authservice for user authentication and traffic management purposes.

For user authentication, Kaptain uses the authservice to allow end-users to log in to the Kubeflow UI using authentication credentials. The authservice consults the OIDC provider (for example, Dex) to verify the user’s credentials and authenticate them. If not yet authenticated, the integrated, zero-trust EnvoyFilter redirects the login request to the OIDC provider for authentication. Access is granted to successfully authenticated users, if the credentials are valid, or rejected for failed login attempts. For more information on users and permissions, refer to Users and Permissions Management.

For traffic management, Kaptain uses Istio as a load balancing solution that serves HTTPS traffic to allow secure connections between service users. These service users correspond to all of Kaptain’s services, which run as a part of a service mesh, where all service-to-service connections are encrypted with a mutual TLS certificate. For this purpose, Kaptain uses a customization of the IstioOperator to install an Ingress Gateway through which all kaptain-ingress inbound and outboud HTTPS requests are routed. This is done using the default Kaptain-managed or an alternative customer-managed certificate.

The previous diagram depicts the istio-system namespace and two other namespaces of Kaptain’s landscape, to which Istio and the authservice have access:

  • The kubeflow namespace, which hosts the Kaptain UI, and other virtual services related to model training, model tracking and more.

  • The kaptain-ingress namespace, which hosts services related to user management, authentication management, among other administrative tasks.

By having access to these namespaces, Istio and the authservice can provide traffic management and user authentication in Kaptain.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.