如何将Openshift OAuth服务器用作在openshift集群中运行的Web应用程序的身份验证提供程序?

问题描述

我正在Openshift集群中部署Web应用程序。我想使用Openshift身份验证登录到Web应用程序。但是找不到有关如何对Openshift中部署的第三方应用程序使用Openshift身份验证的文档。谁能在这里给一些指点?

解决方法

这里有两个站点/存储库,描述了如何将oauth-proxy用作便车容器:

要点是,您需要将openshift/oauth-proxy容器作为辅助工具添加到Deployment中,并通过此附加容器路由流量:

 apiVersion: apps/v1
 kind: Deployment
[..]
 spec:
[..]
   template:
     spec:
       containers:
         - <YOUR_APPLICATION_CONTAINER>
         - name: oauth-proxy 
           args:
             - -provider=openshift
             - -https-address=:8888
             - -http-address=
             - -email-domain=*
             - -upstream=http://localhost:8080
             - -tls-cert=/etc/tls/private/tls.crt
             - -tls-key=/etc/tls/private/tls.key
             - -client-secret-file=/var/run/secrets/kubernetes.io/serviceaccount/token
             - -cookie-secret-file=/etc/proxy/secrets/session_secret
             - -openshift-service-account=reversewords
             - -openshift-ca=/var/run/secrets/kubernetes.io/serviceaccount/ca.crt
             - -skip-auth-regex=^/metrics
           image: quay.io/openshift/oauth-proxy:4.6
           ports:
             - name: oauth-proxy
               containerPort: 8888    
               protocol: TCP

您可以在链接的资料库或链接的教程中找到完整的示例。