我正在为我的后端服务设置基本认证的简单规则。当我用curl或postman发送请求时,它完美地运行。但是当我的前端应用程序尝试执行相同的操作时,就会出现问题。据我所知,浏览器会发送预检请求(OPTIONS方法),用于CORS策略检查。问题在于此请求未添加Authorization标头,服务器响应401错误。有没有办法让Ingress忽略特定方法的授权?
这里是我的Ingress(nginx)配置:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: somesome-routing
annotations:
nginx.ingress.kubernetes.io/auth-type: basic
nginx.ingress.kubernetes.io/auth-secret: basic-auth
nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required'
spec:
rules:
- host: somesome.com
http:
paths:
- path: /
backend:
serviceName: backend-service
servicePort: 80