问题标签 [redhat-sso]

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 投票
2 回答
25058 浏览

java - 从 KeyCloak 导出所有用户

我有一个特定的用例,我们希望每天向 Keycloak 询问所有用户以及每个用户的组和角色。用于与其他内部系统进行核对。

目前我们正在为此使用 UsersResource 中提供的 Keycloak 端点。但是我们看到每次调用后性能都会下降到我们不能再使用这个解决方案的地步。该领域有超过 30K 的用户。

我们还看到 Keycloak 可以导出数据库,但只能在系统启动时导出(我猜是出于迁移目的)。鉴于我们想每天提取所有用户,我们不能使用它。

是否有一些已知的功能或解决方法?

0 投票
0 回答
1176 浏览

oauth-2.0 - 当凭证错误时,仅 KeyCloak 不记名客户端不应该能够调用安全端点,但他可以,为什么?

我有一个具有此配置的 Spring Boot 应用程序:

我使用另一个有效的客户端(cli1,secret1)获得了访问令牌:

现在我使用该不记名令牌来调用我的 Spring Boot 服务:

Spring Boot 应用程序正在正确调用安全端点,但不应允许这样做,因为资源(不存在)和秘密(错误秘密)实际上并不存在,它们甚至没有在 KeyCloak 中配置! !为什么这行得通?客户端不应该验证其客户端 ID 客户端机密吗?

Realm public keys successfully retrieved for client non-existing什么???不存在的客户不存在!!

0 投票
1 回答
3137 浏览

spring-boot - 使用 Keycloak 的 Spring Boot 应用程序,单点登录在 Apache Web 服务器后面不起作用

我有一个带有 RedhatSSO (Keycloak) 作为 OIDC 提供程序的 Spring Boot + Spring Security 应用程序。此应用程序部署在 Openshift 上,它为其分配如下路线:http://my-app.cloud.mycompany.com/. 该应用程序具有以下上下文路径:/my-app.

当我使用应用程序的 Openshift 路由地址访问受保护资源时http://my-app.cloud.mycompany.com/my-app/someProtectedResource,我被重定向到https://sso.mycompany.com我登录的 Keycloak 登录页面,然后我被发送回http://my-app.cloud.mycompany.com/my-app/sso/login. 然后它将代码交换为访问令牌并毫无问题地工作,允许访问受保护的路径。

但是,这不是我们的目标场景,因为所有应用程序都通过具有此 url 的 Apache 服务器访问http://intranet.mycompany.com

当我输入http://intranet.mycompany.com/my-app/someProtectedResource请求时,我的应用程序在 Openshift 中的 pod 会重定向到https://sso.mycompany.com. 但是参数redirect_uri指向应用程序的 Openshift 路由地址的 URL,http://my-app.cloud.mycompany.com/my-app/sso/login而不是http://intranet.mycompany.com/my-app/sso/login

这样,在成功登录后,我被发送到错误的地址并且单点登录失败。

我正在使用这个配置:

摇篮:

弹簧靴:

当应用程序位于 Apache 服务器后面时,如何使应用程序实现其实际redirect_uri应该具有的功能?intranet.mycompany.com

0 投票
1 回答
1750 浏览

saml - Keycloak 客户端设置,SAML 私钥暴露

我知道在 SAML 协议中,IDP 和 SP 他们拥有自己的密钥对,并且不会将他们的私钥暴露给对方。

我假设下面的领域密钥是 IDP 密钥对,这是有道理的,因为私钥没有公开。 在此处输入图像描述

但是当我在客户端设置中打开“需要客户端签名”时,会生成 SAML 密钥并暴露私钥?这意味着 IDP 知道将在 SP 应用程序中使用的私钥。 在此处输入图像描述

这没有意义,一定是我弄错了。有人可以帮忙澄清一下吗?

0 投票
0 回答
341 浏览

jboss - 从工件加载 Keycloak 模块

我将自定义模块添加到 keycloak(keycloak 版本 2.5.5,RH-SSO 7.1.GA)。Module_PATH/main/module.xml 之类的;

(就像这个例子http://blog.keycloak.org/2016/07/loading-providers-and-themes-from-maven.html)=>

Maven 本地 repo 看起来是一个远程 nexus 服务器(中央远程 repo,setting.xml 配置)。

当我在 module.xml 中使用资源路径标记(使用 jar 路径)时,它可以成功运行。

但是,当我在 module.xml 中使用工件标记时,我接受了这个例外;

问题是什么 ?

Keycloak 可以看不到 .m2 文件或无法访问吗?

请帮忙,

0 投票
0 回答
341 浏览

keycloak - “无效代码”(令牌),因为已访问过重置密码链接

在 Red Hat Single Sign-On(以及 Keycloak)中,有这个Forgot Password? 功能。如果您单击它然后输入您的用户名,您将收到一封电子邮件,其中包含更改密码的链接。

注意:访问该链接的 URL 会使其无效。

问题:我们的一些客户拥有跟踪电子邮件中每个链接的安全软件,导致在链接到达客户之前就生成了无效令牌(“无效代码”)。

有什么建议么?

0 投票
1 回答
1621 浏览

single-sign-on - 为同一用户名 Keycloak 多个会话

我最近使用 Keycloak servlet 适配器配置了 SSO。问题是我们有服务到服务的通信,这与 BASIC 身份验证有关。
以前,我们使用 JAAS 身份验证,因此 S2S 通信是无状态的(没有关联的会话)。

使用 SSO/Keycloak,情况不再如此。此外,每个 REST 请求都会创建一个新的 Keycloak 会话。

我试图找到没有 Keycloak 自定义和编码的配置或替代解决方案,但我找不到。

PS 由于向后兼容性,我无法将 REST 客户端更改为切换到 BEARER 或其他身份验证方法。

有人有更好的主意吗?

0 投票
0 回答
1904 浏览

java - 如何使用 Keycloak Admin REST API 使用刷新令牌

我正在尝试使用Keycloak Admin REST API SDK

然后,我想使用刷新令牌来生成访问令牌。
我知道以下代码代码可以通过刷新令牌生成访问令牌。

但是这段代码只能在 TokenManager 上运行。
我想使用任何刷新令牌,例如管理员用户的以下代码。

任何 SDK 类都可以根据需要刷新令牌吗?

0 投票
0 回答
5259 浏览

docker - 在 Keycloak Docker Swarm 服务中添加健康检查

测试配置为集群部署为docker swarm 服务的 Keycloak 运行状况的最佳方法是什么?

我尝试了以下运行状况检查来测试 Keycloak 服务描述符中的可用性:

还有更多需要检查的东西吗?找不到这方面的文档。

0 投票
2 回答
3408 浏览

keycloak - 是否可以在 Keycloak 中使用自定义身份验证逻辑?

我已经使用 LDAP 用户联合配置了 Keycloak。当用户想要登录应用程序时,他会被重定向到 Keycloak 登录页面,输入 uid/pwd 并使用 LDAP 绑定进行身份验证。

这不足以满足我的要求,因为我想实现一些自定义身份验证逻辑,例如:

如何将自己的身份验证逻辑包含到 Keycloak 中?