docs: Add vouch-proxy OAuth example (#10929)
This commit is contained in:
parent
5acc4230ee
commit
7d75abb0ff
4 changed files with 218 additions and 54 deletions
110
docs/examples/auth/oauth-external-auth/vouch-proxy.yaml
Normal file
110
docs/examples/auth/oauth-external-auth/vouch-proxy.yaml
Normal file
|
|
@ -0,0 +1,110 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
labels:
|
||||
k8s-app: vouch-proxy
|
||||
name: vouch-proxy
|
||||
namespace: kube-system
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
k8s-app: vouch-proxy
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
k8s-app: vouch-proxy
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: VOUCH_ALLOWALLUSERS
|
||||
value: true
|
||||
# Recommended: remove VOUCH_ALLOWALLUSERS and set an allowlist
|
||||
# - name: VOUCH_WHITELIST
|
||||
# value: alice,bob
|
||||
- name: VOUCH_COOKIE_DOMAIN
|
||||
value: <Ingress Host>
|
||||
- name: VOUCH_LISTEN
|
||||
value: 0.0.0.0
|
||||
- name: VOUCH_DOCUMENT_ROOT
|
||||
value: oauth2
|
||||
# See https://github.com/vouch/vouch-proxy/tree/master/config for different provider examples
|
||||
- name: OAUTH_PROVIDER
|
||||
value: github
|
||||
- name: OAUTH_CLIENT_ID
|
||||
value: <Client ID>
|
||||
- name: OAUTH_CLIENT_SECRET
|
||||
value: <Client Secret>
|
||||
image: quay.io/vouch/vouch-proxy:latest
|
||||
imagePullPolicy: Always
|
||||
name: vouch-proxy
|
||||
ports:
|
||||
- containerPort: 9090
|
||||
protocol: TCP
|
||||
|
||||
---
|
||||
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels:
|
||||
k8s-app: vouch-proxy
|
||||
name: vouch-proxy
|
||||
namespace: kube-system
|
||||
spec:
|
||||
ports:
|
||||
- name: http
|
||||
port: 9090
|
||||
protocol: TCP
|
||||
targetPort: 9090
|
||||
selector:
|
||||
k8s-app: vouch-proxy
|
||||
|
||||
---
|
||||
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: vouch-proxy
|
||||
namespace: kube-system
|
||||
spec:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: __INGRESS_HOST__
|
||||
http:
|
||||
paths:
|
||||
- path: /oauth2
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: vouch-proxy
|
||||
port:
|
||||
number: 9090
|
||||
tls:
|
||||
- hosts:
|
||||
- __INGRESS_HOST__
|
||||
secretName: __INGRESS_SECRET__
|
||||
|
||||
---
|
||||
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
annotations:
|
||||
nginx.ingress.kubernetes.io/auth-url: "https://$host/oauth2/validate"
|
||||
nginx.ingress.kubernetes.io/auth-signin: "https://$host/oauth2/login?url=$scheme://$http_host$request_uri"
|
||||
name: external-auth-oauth2
|
||||
namespace: kube-system
|
||||
spec:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: __INGRESS_HOST__
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: kubernetes-dashboard
|
||||
port:
|
||||
number: 80
|
||||
Loading…
Add table
Add a link
Reference in a new issue