You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EKS集群Ingress登录时出现403 Forbidden问题求助

排查AWS EKS中Ingress暴露应用登录403 Forbidden问题

以下是针对你的场景的具体排查方向:

  • 检查Ingress的请求头传递配置
    Nginx Ingress默认可能会丢失或修改登录相关的请求头(如Cookie、Authorization、X-Forwarded系列头),导致后端应用无法正确处理登录请求。可以尝试给Ingress添加以下annotation,确保必要的请求头被正确传递:

    annotations:
      kubernetes.io/ingress.class: nginx
      nginx.ingress.kubernetes.io/configuration-snippet: |
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header Cookie $http_cookie;
    

    更新Ingress后重新测试登录。

  • 验证后端服务的登录接口可用性
    跳过Ingress直接在集群内测试应用的登录接口,确认问题是否出在Ingress转发环节:

    1. 进入应用Pod内部:kubectl exec -it <your-app-pod-name> -n ns -- /bin/bash
    2. 调用登录接口:curl -X POST http://localhost/login -d "username=test&password=test"
      如果返回正常,说明问题在Ingress或负载均衡器层面;如果仍返回403,检查应用在K8s环境中的依赖(如数据库、认证服务)是否正常。
  • 检查Nginx Ingress控制器日志
    查看Ingress控制器的请求转发日志,确认登录请求的URI、方法和转发状态:

    kubectl logs -n kube-system <nginx-ingress-controller-pod-name> | grep "my.website.io"
    

    重点关注POST请求的日志,看是否有路径重写错误、头丢失或其他异常。

  • 检查AWS ALB目标组配置
    虽然你重建了负载均衡器,仍需确认ALB目标组的以下配置:

    • 目标组的健康检查是否正常,所有应用Pod都处于健康状态
    • 是否开启了会话粘性,导致请求被转发到状态异常的Pod
    • 目标组是否允许POST方法(默认是允许的,但需确认无自定义规则限制)
  • 排查NetworkPolicy限制
    检查应用命名空间下是否存在NetworkPolicy,限制了Ingress控制器到应用Pod的访问:

    kubectl get networkpolicy -n ns
    

    如果有NetworkPolicy,确认其规则允许Ingress控制器的IP段访问应用服务的80端口,且允许POST方法。

  • 检查Ingress API版本兼容性
    你当前使用的Ingress API版本是networking.k8s.io/v1beta1,该版本在K8s 1.22+已被废弃。如果你的EKS集群版本较高,建议升级Ingress配置到networking.k8s.io/v1版本,避免兼容性问题:

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      namespace: ns
      name: example-ingress
      annotations:
        kubernetes.io/ingress.class: nginx
    spec:
      rules:
        - host: my.website.io
          http:
            paths:
              - path: /
                pathType: Prefix
                backend:
                  service:
                    name: example-service
                    port:
                      number: 80
    

内容的提问来源于stack exchange,提问作者gundocan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 15:23:23