问题标签 [oauth2-proxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
290 浏览

azure - 如何使用 oauth2_proxy 对 AAD(Azure Active Directory)进行身份验证并获取访问令牌

我正在尝试使用 Kubernetes 中使用的 oauth2_proxy 对 AAD(Azure Active Directory)进行身份验证以获取访问令牌。

首先,我正在努力让正确的身份验证流程正常工作。

其次,在被重定向到我的应用程序后,访问令牌不在oauth2_proxy 文档中指定的请求标头中。

0 投票
1 回答
67 浏览

azure - 如何在 Kubernetes 中针对 oauth2_proxy 对多个 Azure 应用进行身份验证

我有两个独立的应用程序:

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

两个应用都使用 oauth2 流针对 Azure Active Directory 对用户进行身份验证。

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

我该怎么做才能让oauth2_proxy验证它?

0 投票
0 回答
18 浏览

linux - 如何从 Oauth2_proxy 登录页面隐藏域

我有一个特定的场景,我需要隐藏 Oautho2_proxy 登录页面以显示电子邮件域。我已经浏览了文档并在互联网上进行了搜索,但找不到任何有用的信息来说明如何使用 oauth2_proxy 的配置来完成它。

由于这可能是一个严重的隐私或安全问题,我确信一定有某种方法可以隐藏登录页面上显示的域。

在此处输入图像描述

0 投票
1 回答
307 浏览

nginx - 在 Kubernetes 上以 oidc 模式与 Keycloak 一起使用时,OAuth2 代理 pod 不断崩溃

我正在尝试使用 Keycloak 运行 oauth2-proxy 的简约示例。我使用 oauth2-proxy 的k8s 示例(它使用 dex)来构建我的 keycloak 示例。问题是我似乎没有让代理工作:

日志指示网络错误:

不过,我相信我已经正确设置了入口。

重现步骤

  1. 设置集群:
  1. 部署测试应用程序。我的deployment.yaml文件:
  1. 在开发机器文件上配置/etc/hosts以包含localtest.me域:

请注意,我可以http://keycloak.localtest.me/auth/realms/master/.well-known/openid-configuration从我的主机浏览器毫无问题地访问。似乎oauth2-proxy的 pod 无法通过入口访问服务。真的很感激这里的任何帮助。

0 投票
0 回答
66 浏览

kubernetes - 如何使用 Oauth2-Proxy 在 kubernets 中配置 consul 身份验证

根据以下问题的建议,我正在尝试使用 oauth2-proxy 使用此图表在 Consul UI 中添加身份验证

Consul 的安装使用了v0.34.1版本的图表。Consul UI 入口配置如下:

关于 oauth2-proxy 我使用的是4.0.0 版本

当我访问提供 Consul UI 服务的域 consul.mydomain.com 时,它会重定向到使用 Google 登录,在输入 Google 凭据后,它会重定向到https://auth.mydomain.com ,并返回404 错误。

我检查了 oauth2-proxy 日志,它设法创建了令牌。但是,在 Consul 日志中,并没有新的记录。

0 投票
0 回答
156 浏览

oauth-2.0 - 在 oauth2-proxy 的上游服务中使用访问令牌进行授权?

调用上游服务时,有没有办法在授权标头中将访问令牌作为承载发送?

默认情况下,根本没有设置授权标头。使用该标志--pass-authorization-header,ID-Token 被设置为 Bearer Token。

如果不支持,是否有原因?据我了解,访问令牌应该用于授权。

0 投票
1 回答
202 浏览

azure-active-directory - Azure AD:通过 AAD 在 jwt 令牌中缺少角色声明

使用 AzureAD 进行身份验证时,我无法获取角色声明。

使用 quay.io/oauth2-proxy

0 投票
1 回答
107 浏览

adfs - OAuth2 代理无法处理从 ADFS 返回的值

我尝试使用 OAuth2 代理将我的 SSO 身份验证直接管理到 ADFS,而不是通过像 Keycloak 这样的中介。我首先尝试在旧版本 (7.1.x) 中使用 OIDC 提供程序,然后在全新版本 (7.2.0) 中使用 OAuth2 代理文档中指定的配置新 ADFS 提供程序(在 ADFS 上我有一个应用程序组集向上)。

在这两种情况下,我都成功连接到 ADFS,并且 ADFS 显示了一个身份验证屏幕。一切似乎都在 ADFS 端工作(我输入凭据,它接受它们并且 ADFS 登录屏幕消失)。ADFS 日志中没有错误事件。但是,OAuth2 代理在回调上失败(正确发送到 https:\ myserver \oauth2\callback。从 URL 中的 ADFS 返回的值看起来像是被格式化为 JWT,但它是垃圾(即当我粘贴它时)进入 jwt.io,它显示“无效签名”,标头为空白,有效负载完全是垃圾。)换句话说,ADFS 重定向到“https:\ myserver \oauth2\callback?code=”,其中“code”后面的值=" 无法理解。

我认为 ADFS 正在加密令牌,但似乎无法指定 ADFS 用于 OAuth2 代理的证书,文档中也没有任何迹象表明它希望我这样做。

有问题的 ADFS 来自 Server 2016,所以我假设它是 ADFS v4.0。

有什么想法吗?我错过了什么吗?一切似乎都正常,直到它从 ADFS 返回到 OAuth2 代理。


根据一个答案,我在设置 ADFS 应用程序组时可能使用了错误的模板。是否应该使用特定模板以便 OAuth2 代理获得预期的答案?

0 投票
1 回答
527 浏览

docker - oauth2-proxy:本地设置拒绝连接

我在另一个无法自己提供 A&A 的应用程序前面设置oauth2-proxy ( https://github.com/oauth2-proxy/oauth2-proxy )。

  • Keycloak-OIDC 提供者被配置用于身份管理,
  • 在最终状态下,应用程序将作为 pod sidecar 在 K8s 上运行,它应该向 pod 中的应用程序容器添加身份验证。但我认为这在此刻无关紧要,
  • 目前,如果它被配置为在 localhost 上运行。

“实验”在 docker-compose 文件之上运行:

每当我向 发出呼叫时http://localhost:4180/,我都可以在 Keycloak IDP 上对自己进行身份验证。不幸的是,oauth2-proxy之后无法将流量转发到我配置的上游应用程序,说明Connection refused. 不涉及 TLS 设置。

日志:

当我直接访问“http://localhost:4440”时,一切正常。

感谢您的帮助/评论。

0 投票
0 回答
316 浏览

elasticsearch - oauth2_proxy 用于基本身份验证登录

我正在尝试在我的 ELK 安装之前设置 OAuth2 授权。我正在使用oauth2_proxy。想法是使用 Google 作为 SSO,从 SSO 质询中提取用户名,将此用户名设置为基本身份验证(具有固定密码)以登录 Kibana。

我在获取用户名并将其设置为基本身份验证字符串时遇到了困难。似乎该变量$remote_user没有被重视。如果我硬编码一个有效的用户名:密码,它会让我登录。

这是我到目前为止的配置:

  • oauth2_proxy 在端口 4180 上运行
  • nginx 监听 80/443 并通过代理传递到 localhost:4180 (oauth2_proxy)
  • oauth2_proxy 使用 localhost:8080 作为上游(nginx)执行 SSO
  • nginx 监听 8080 并通过代理传递到 localhost:5601 (kibana)

像这样的东西:

在此处输入图像描述

这里的conf文件:

oauth2_proxy 启动字符串

oauth2_proxy.conf

kibana.conf

我的问题是它${remote_user}是空的,我该如何评估它?我也尝试过$upstream_http_x_auth_request_user$upstream_http_x_auth_request_email但没有运气。

你看到任何明显的错误吗?