在 istio 授权策略中设置 notpaths 配置时发生跨源读取阻塞 (CORB)

我正在研究 istio 配置以构建自动授权系统。


我使用 oauth2-proxy 进行外部授权,使用 dex 进行 OICD。


我必须避免对某些子地址进行授权检查,因此我在授权策略中设置了 notPaths 选项。


但是每次我设置 notPaths 选项时,网络都会变成空白页面而不是显示正确的页面。控制台显示 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


猛跑小猪
浏览 110回答 1
1回答

郎朗坤

这是授权策略配置问题。我用react来显示页面,索引页面的地址被屏蔽了,因为我没有添加它的子地址。我将子地址添加到身份验证策略并且有效。apiVersion: security.istio.io/v1beta1kind: AuthorizationPolicymetadata:  name: oauth-policy  namespace: istio-systemspec:  selector:    matchLabels:      istio: ingressgateway  action: CUSTOM  provider:    name: "oauth2-proxy"  rules:  - to:    - operation:        hosts:        - "my.domain.com"        notPaths:        - "/main*"        - "/index*"        - "/favicon*"
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go