我正在进行istio配置,以建立自动授权系统。
我使用OAuth2-Proxy进行外部授权,使用Dex进行OICD。
我必须避免对某些子地址进行授权检查,因此我在授权策略中设置了notPath选项。
但每次我设置notPath选项时,网页都变成空白页面,而不是显示正确的页面。控制台显示CORB警告标志。
我不知道为什么会这样。
以下是我的授权策略和网关、虚拟服务配置。
apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
name: oauth-policy
namespace: istio-system
spec:
selector:
matchLabels:
istio: ingressgateway
action: CUSTOM
provider:
name: "oauth2-proxy"
rules:
- to:
- operation:
hosts:
- "my.domain.com"
notPaths:
- "/main*"
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: cm-gateway
namespace: cm-temp
spec:
selector:
istio: ingressgateway # use Istio default gateway implementation
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "my.domain.com"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: cm-vs
namespace: cm-temp
spec:
hosts:
- "my.domain.com"
gateways:
- cm-gateway
http:
- match:
- uri:
prefix: /api
route:
- destination:
host: cm-be-svc
port:
number: 5000
- match:
- uri:
prefix: /
route:
- destination:
host: cm-fe-svc
port:
number: 80
1条答案
按热度按时间hc8w905p1#
多亏了Nataraj Medayhal,我解决了问题!
我将选择器:matchLabels设置为适当的标签,它工作得很好。
顺便说一句,我没有选择方法,因为我想采用所有的方法。
感谢您的评论Nataraj Medayhal!:d
不,它也不能正常工作,😂😂..
它确实显示了正确的页面。但也会阻止重定向到Dex的地址。