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

如何使用Openshift OAuth服务器作为在Openshift集群中运行的web应用程序的身份验证提供程序?,openshift,openshift-origin,openshift-enterprise,Openshift,Openshift Origin,Openshift Enterprise,我正在Openshift集群中部署一个web应用程序。我想使用Openshift身份验证登录到web应用程序。但找不到有关如何对部署在Openshift中的第三方应用程序使用Openshift身份验证的文档。有人能在这里给点建议吗?这里有两个站点/存储库,描述了如何使用oauth代理作为侧车容器: apiVersion: apps/v1 kind: Deployment [..] spec: [..] template: spec: containers:

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

这里有两个站点/存储库,描述了如何使用
oauth代理作为侧车容器:

 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
其要点是,您需要将
openshift/oauth代理
容器作为侧车添加到部署中,并通过此附加容器路由流量:

 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
apiVersion:apps/v1 种类:部署 [..] 规格: [..] 模板: 规格: 容器: - -名称:oauth代理 args: --provider=openshift --https地址=:8888 --http地址= --电子邮件域=* --上游=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/servicecomport/token --cookie secret file=/etc/proxy/secrets/session\u secret --openshift服务帐户=reversewords --openshift ca=/var/run/secrets/kubernetes.io/servicecomport/ca.crt --skip auth regex=^/metrics 图片:quay.io/openshift/oauth代理:4.6 端口: -名称:oauth代理 集装箱港口:8888 协议:TCP

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

谢谢您的教程。您知道如何增加请求的超时时间吗?oauth代理是否在内部使用nginx?不确定“请求超时”是什么意思。存储库中有一个配置文件示例:据我所知,它在内部不使用NGINX,但可以轻松连接到一个(请参阅存储库)