Skip to content

Instantly share code, notes, and snippets.

@ntsh999
Created July 24, 2019 17:45
Show Gist options
  • Save ntsh999/1c1e0ad7f0e62d95c6a1565604098b59 to your computer and use it in GitHub Desktop.
Save ntsh999/1c1e0ad7f0e62d95c6a1565604098b59 to your computer and use it in GitHub Desktop.
oauth2_proxy implementation on Kubernetes
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: example
annotations:
kubernetes.io/ingress.class: nginx
kubernetes.io/tls-acme: "true"
nginx.ingress.kubernetes.io/auth-signin: https://example.com/oauth2/start?rd=https://$host$request_uri$is_args$args
nginx.ingress.kubernetes.io/auth-url: http://oauth2-proxy.oauth-proxy.svc.cluster.local:4180/oauth2/auth
spec:
rules:
- host: example.com
http:
paths:
- backend:
serviceName: example-service
servicePort: 80
path: /
tls:
- hosts:
- "example.com"
secretName: tls-secret-eic
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: oauth2-proxy
namespace: oauth-proxy
annotations:
kubernetes.io/tls-acme: "true"
kubernetes.io/ingress.class: "nginx"
kubernetes.io/ingress.allow-http: "false"
nginx.ingress.kubernetes.io/affinity: cookie
nginx.ingress.kubernetes.io/auth-response-headers: X-Auth-Request-User,X-Auth-Request-Email,Authorization,Set-Cookie
nginx.ingress.kubernetes.io/auth-trust-headers: "true"
nginx.ingress.kubernetes.io/secure-backends: "true"
nginx.ingress.kubernetes.io/session-cookie-name: _oauth2_proxy
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
spec:
rules:
- host: example.com
http:
paths:
- backend:
serviceName: oauth2-proxy
servicePort: 4180
path: /oauth2
tls:
- hosts:
- example.com
secretName: tls-secret-eic
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment