Аутентификация PhpMyAdmin OIDC с OAuth2-Proxy, вызывая перенаправленную петлю между логином и страницей SignonurlPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Аутентификация PhpMyAdmin OIDC с OAuth2-Proxy, вызывая перенаправленную петлю между логином и страницей Signonurl

Сообщение Anonymous »

В настоящее время я использую PhpMyAdmin и OAuth2-Proxy в моем кластере Kubernetes. Аутентификация OIDC работает отлично, я подтвердил, что PMA_USERNAME устанавливается должным образом, и меня аутентифицируют мой IDP. Тем не менее, я получаю слишком много ошибок перенаправления, кажется, что я застрял в цикле между/базы данных/и my /database/scripts/signon.php. Как вы можете видеть ниже, я пробовал все, поэтому извините за любые ненужные дополнения. Заранее спасибо!apiVersion: apps/v1
kind: Deployment
metadata:
name: phpmyadmin
labels:
app: phpmyadmin
spec:
replicas: 1
selector:
matchLabels:
app: phpmyadmin
template:
metadata:
labels:
app: phpmyadmin
spec:
containers:
- name: phpmyadmin
# image: phpmyadmin/phpmyadmin:latest
image: phpmyadmin/phpmyadmin:5.2.1
ports:
- containerPort: 80
env:
- name: PMA_HOST
value: ""
- name: PMA_PORT
value: ""
- name: PMA_ABSOLUTE_URI
value: "https:///database/"
- name: PMA_ARBITRARY
value: "0"
lifecycle:
postStart:
exec:
command:
- sh
- -c
- |
set -x # Enable verbose output

# Disable username on login screen
sed -i 's/name="pma_username"/name="pma_username" disabled="disabled"/g' "/var/www/html/templates/login/form.twig"

# Create the directories
mkdir -p /etc/phpmyadmin/conf.d
mkdir -p /var/www/html/scripts

# Create the new config file
cat
EOF

# Change ownership to www-www-data
chown -R www-data:www-data /etc/phpmyadmin/conf.d
chown -R www-data:www-data /var/www/html/scripts

phppmyadmin-ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: phpmyadmin-ingress
namespace: default
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /$2
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
nginx.ingress.kubernetes.io/auth-url: http://oauth2-proxy.ingress-nginx.svc.c ... auth2/auth
nginx.ingress.kubernetes.io/auth-signin: https:///oauth2/start?rd=https://$host$request_uri
nginx.ingress.kubernetes.io/auth-response-headers: "X-Auth-Request-Email"

spec:
ingressClassName: nginx
tls:
- hosts:
-
secretName:
rules:
- host:
http:
paths:
- path: /database(/|$)(.*)
pathType: ImplementationSpecific
backend:
service:
name: phpmyadmin-service
port:
number: 80

walues.yaml
config:
existingSecret: oauth2-secret # includes client-id, client-secret, and cookie-secret

configFile: |
provider = "oidc"
set_xauthrequest = true
oidc_issuer_url = "https:///oidc/"
email_domains = ["*"]
cookie_secure = true
upstreams = ["http://phpmyadmin.default.svc.cluster.local"]
redirect_url = "https:///oauth2/callback"
#scope = "openid email profile"
scope = "openid"
profile_url = "https:///oidc//userinfo"
user_id_claim = "mail"
pass_access_token = true
pass_authorization_header = true
pass_user_headers = true
set_authorization_header = true
cookie_domains = ""
#cookie_name = "_oauth2_proxy"
cookie_refresh = "2m"
cookie_expire = "24h"
cookie_csrf_per_request= true
cookie_csrf_expire = "5m"

extraArgs:
- --cookie-secure=true
- --cookie-samesite=lax
- --whitelist-domain=
- --skip-provider-button
- --user-id-claim=mail

ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
hosts:
-
path: /oauth2


Подробнее здесь: https://stackoverflow.com/questions/796 ... -between-l
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»