oauth2-proxy 和子域 - 无法获取 CSRF cookie

oauth2-proxy and subdomains - unable to obtain CSRF cookie

提问人:user3069488 提问时间:11/18/2023 最后编辑:user3069488 更新时间:11/18/2023 访问量:23

问:

我在域上使用 oauth2-proxy 设置了我的 Istio externalProvider,并且该域上的所有应用程序都在工作,例如等oauth2.example.comapp1.example.comapp2.example.com

在同一个集群上,我有其他环境使用相同的 istio extensionProvider 并指向相同的 oauth2-proxy。问题是,在同一个集群上,我在 subdomianins 上还有其他环境,我用这样的设置共同配置了我的 oauth:app1.subdomain.example.comapp1.subdomain2.example.com

configFile: |-
      provider = "oidc"
      user_id_claim = "sub" #uses the subject as ID instead of the email
      provider_display_name = "ZITADEL"
      code_challenge_method = "S256"
      redirect_url = "https://oauth2.example.com/oauth2/callback" <-- this i was removed but still some issues with CSRF
      oidc_issuer_url = "https://zitadel.exampleother.com"
      whitelist_domains=[
        "*.example.com",
        "*.subdomain1.example.com",
        "*.subdomain2.example.com"
      ]
      upstreams = [
        "static://200"
      ]
      email_domains = [
        "*"
      ]
      pass_access_token = true
      # cookie_secret = "{SUPPLY_SOME_SECRET_HERE}"
      cookie_csrf_per_request = true
      cookie_samesite = "none"
      skip_provider_button = true
      cookie_secure = true #localdev only false
      cookie_domains = [
        "example.com",
        "subdomain1.example.com",
        "subdomain2.example.com"
      ]

问题是当我尝试登录例如在成功授权后,我进入“AuthFailure 通过 OAuth2 的身份验证无效:无法获取 CSRF cookie”我的 oauth2-proxy 配置中缺少什么?app1.subdomain1.example.com

编辑:

我删除了redirect_url并且更好,但仍然无法完全工作。在每次登录/站点打开我得到:

Login Failed: Unable to find a valid CSRF token. Please try again.

但是当我单击“登录”时,网站正在正常打开。在私人浏览器上奇怪的是,它没有发生。

oauth-2.0 oauth istio oauth2-代理

评论


答: 暂无答案