如何在Kubernetes中针对oauth2_proxy验证多个Azure应用程序



我有两个独立的应用:

  • 第一个应用部署在Kubernetes集群oauth2_proxy后面。
  • 第二个应用部署在Azure应用服务中。

两个应用程序都使用oauth2流对Azure Active Directory进行用户认证。

我想使用第二个应用程序的访问令牌,并使用它来访问第一个应用程序的API。

我怎么做才能使oauth2_proxy验证它?

解决方案是将应用程序的第二应用程序受众添加到--extra-jwt-issuers参数中。下面是配置和如何使用它的基本细节。

- --azure-tenant=11111111-2222-3333-4444-55555555
- --email-domain=*
- --http-address=0.0.0.0:4180
- --provider=oidc
- --set-authorization-header=true
- --set-xauthrequest=true
- --pass-access-token=true
- --pass-authorization-header=true
- --pass-user-headers=true
- --pass-host-header=true
- --skip-jwt-bearer-tokens=true
- --oidc-email-claim=oid
- --oidc-issuer-url=https://sts.windows.net/11111111-2222-3333-4444-55555555/
- --extra-jwt-issuers=https://sts.windows.net/11111111-2222-3333-4444-55555555/=api://app1-2222-3333-4444-55555555,https://sts.windows.net/11111111-2222-3333-4444-55555555/=api://app2-2222-3333-4444-55555555

正如你在上面看到的,我实际上添加了两个发行者,这是因为我正在使用两个需要进行身份验证的应用程序。

相关内容

  • 没有找到相关文章

最新更新