问题标签 [mod-auth-openidc]
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.
apache - mod_auth_openidc 和 cilogon
我正在尝试让我的 apache 实例针对CILogon进行身份验证。我正在尝试配置mod_auth_openidc。但是,在启动时我在 apache 日志中看到:
但是 CILogon 的登录页面看起来很好。登录到我选择的身份提供者后,在网页中我看到:
我在我的 apache 日志中看到以下错误:
这是我的 auth_oidc.conf
安装的rpm(centos7):
任何指针非常感谢!
apache - Apache OpenID Connect 提前刷新令牌
我在我的资源服务器上使用 mod_auth_openidc,在 OAuth 提供程序和自定义登录和同意提供程序上使用 ORY HYDRA。OpenID Connect 通过登录和同意正确流动,并直接返回资源服务器,并且会话持续一段时间(似乎大约 30 分钟 - 不活动可能会更短)。在那之后,即使 id 令牌尚未过期,客户端发出的下一个请求也会被定向回登录和同意提供程序。我的 OAuth 提供者肯定会记住该会话,因为它会立即将客户端传递回资源服务器,但使用的是新令牌。
例如,我在 1587483280 开始了一个会话,并获得了一个过期时间为 1587486880 的令牌。会话持续存在,我能够在资源服务器中导航,而无需重定向到登录和同意提供程序。大约 10 分钟不活动后,下一页加载将我定向到登录和同意提供程序,它立即将我发送回资源服务器,并带有一个新令牌,发行时间为 1587485777,到期时间为 1587489377。我还可以看到我有一个新的 auth_openidc 会话 ID。
我对 OAuth 很陌生,所以我不确定从哪里开始解决这个问题。有人可以推荐一个起点吗?
apache - 如何在 Apache 中允许多种身份验证类型?
我有一个使用 mod_auth_openidc 的 Apache 服务器。对于一个特定的目录(API),我想首先允许不记名令牌身份验证并回退到 OpenID。这是我可以用 API 目录中的 .htaccess 文件完成的事情吗?
期望的行为: - 如果在 API 目录中发出请求: - 如果设置了“授权:承载”标头: - 使用承载认证 - 否则: - 使用 OpenID Connect - 如果在任何其他目录中发出请求: - 使用OpenID 连接
angularjs - 从 AngularJS 客户端中的 mod_auth_openidc 检索身份验证令牌
我正在构建一个应该从 API 检索数据的 AngularJS 应用程序。API 正在对我选择的 OIDC 提供者进行自省,以验证与 API 调用一起发送的令牌。
在登录 OIDC 登录页面之前,客户端不应被调用。为此,它受到使用 mod_auth_openidc 的 apache http 服务器的保护。如果不存在令牌,此 mod 可确保客户端被重定向到 OIDC 提供程序登录。成功登录后,AngularJS 应用程序被加载。
我的问题是如何在 AngularJS 客户端中检索令牌,以便我可以将其转发到 API?
mod-auth-openidc - 未在环境 apache mod _auth_openidc 中设置访问令牌声明
我团队在 apache httpd 中使用 mod_auth_openidc 模块进行 openauth\openid 身份验证。我从 OP 获得了 id_token 和 access_token 。id 令牌中的声明在环境和标头中设置。但是访问令牌中的声明没有得到解决。我在标头 oidc_access_token 中看到加密的访问令牌,但声明未解决。我已经配置了 userinfo 端点,它应该解决访问令牌中的声明,但它没有发生。感谢你的帮助。
apache - 执行 DNS 翻转时的 OIDC 问题
我们最近在 Rails 应用程序集成环境上执行了 DNS Flip。我们将 example-1.com 设置为指向 A 记录 example-2.com 的 CNAME。example-2.com 上的服务是一个带有 Apache 和 Passenger Phusion 的 Ruby on Rails 应用程序。在 Apache 之上,我们使用 OpenId-Connect(特别是 mod_auth_openidc 模块)。
当我们尝试直接访问 example-1.com 时,一切正常。但是当我们尝试通过 example-2.com 这样做时,我们会收到以下错误:
在我们的 .confd 文件中,我们有OIDC_REDIRECT_URI = "https://example-1.com/redirect"
.
我们认为我们可能必须使用 Apache 重写部分请求来解决这个问题,但我们并不完全确定。有谁知道最好的前进方式?
azure - Azure AD“组”声明未传递给 mod_auth_openidc
我创建了一个 Azure AD 帐户来测试 SSO。我能够让 Apache 使用 SSO 对站点进行身份验证,并将经过身份验证的用户的电子邮件地址作为标头传递。我无法让“团体”声明通过。
我的 Apache 配置如下所示:
我在 Azure AD 中的可选声明如下所示:
此外,我在 AD 中创建了一个名为“Users”的组,并将自己添加到该组中。所以我希望看到“用户”作为标题中的某种属性传递。
如果我在服务器上打印 HTTP 标头,我会看到...
REMOTE_USER、X_REMOTE_USER 和 HTTP_USER 都显示正确的经过身份验证的用户电子邮件。
我没有看到任何与“groups”、“USERINFO_”、“family_name”、“given_name”相关的内容。甚至没有空白占位符。
我有点卡住了,因为据我所知,Apache 配置看起来还不错,而且从我读过的内容来看,Azure 配置也不错。
任何想法为什么没有通过索赔?
apache - 对于某些用户/IP 范围/服务调用,有没有办法绕过 Apache Web 服务器中使用的 mod_auth_openidc 模块?
对于 Web 应用程序,我们使用带有 mod_auth_openidc 模块的 Apache Web 服务器作为身份验证层;它位于我们的网络应用程序前面。
需要让来自某些服务的请求(例如,网络爬虫,以爬取网络应用程序)绕过此 OIDC 层。有没有办法为来自某些用户、服务甚至 IP 范围的请求添加此覆盖或绕过 mod_auth_openidc?
我试图在配置选项列表中四处查看,但找不到任何可以做到这一点的配置。
apache - mod_auth_openidc:刷新令牌失败
我正在使用带有 Apache 的 mod_auth_openidc 和 varnish 在 Grafana 前面捕获反向代理来卸载 SSO OAuth2;一旦我登录,一段时间后我得到以下获取错误,因为我调查了这个问题;发现 OAuth 令牌已过期且 mod_auth_openidc 无法刷新令牌;我能够追踪流量
mod_auth_openidc 令牌刷新流程
- 令牌过期,http get 调用被重定向到带有 HTTP 302 的 oauth 服务器
- 重定向失败并出现 http 403 错误 使用 HTTP 选项方法而不是 get 或 post
火狐网络流量——
如果浏览器刷新并加载了整个页面,一切都很好,奇怪
- mod_auth_openidc 使用 http 302 重定向到 oauth 服务器
- 令牌被刷新,oauth 服务器使用 http 302 重定向到应用程序
- 页面加载了 http 200
火狐网络流量——
似乎 OAuth 服务器没有处理 HTTP 选项方法;我尝试使用“要求方法 GET POST”在 Apache 级别禁用,然后 mod_auth_openidc 不起作用;任何积分或帮助表示赞赏
- 谢谢
apache - 使用 Apache mod auth openidc 模块时重定向循环
我们在连接到 Okta OIDC 的 Apache 服务器中使用了 mod auth openidc 模块。登录到 okta 后,我们将多次重定向回重定向,然后再次返回 okta。类似于以下问题的内容:
正如本期所讨论的那样。 https://github.com/zmartzone/mod_auth_openidc/issues/181
我已确保 redirect_uri 与实际 url 页面加载 url 是分开的