问题标签 [keycloak-authorization-services]

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 回答
29 浏览

keycloak - 我们如何在 Keycloak 授权服务策略中为所有用户分配权限?

我想在 Keycloak 中创建一个所有用户策略:

在此处输入图像描述

如何指定此策略适用于所有用户?

使用“*”不起作用。

0 投票
0 回答
68 浏览

authorization - 无效资源或 Resource[id] 不存在 keycloak

我已经从 keycloak 中删除了一个资源、策略和权限,因为它是另一个名称不同的资源的副本,但现在对于该 URL,keycloak 被删除的资源并试图找出已删除的资源而不是现有资源,因此这给了我一个错误java无效错误和 Resource[id] 不存在。我检查了数据库也找不到任何地方的资源ID。

0 投票
1 回答
166 浏览

keycloak - 不推荐使用的方法 org.keycloak.TokenVerifier.realmUrl() 的替代方法是什么

我正在尝试使用以下代码验证 AccessToken -

TokenVerifier 验证器 = TokenVerifier.create(StringAccessToken, AccessToken.class).withDefaultChecks(); PublicKey publicKey = getRealmPublicKey(verifier.getHeader()); return verifier.realmUrl(“someStringUrl”).publicKey(publicKey).verify().getToken();

但似乎不推荐使用 realmUrl() 方法。您能否为此提供替代解决方案?

或者你能建议一种有效的方法来验证访问令牌吗?

0 投票
0 回答
104 浏览

java - 请求正文在 Keycloak 的策略执行者评估后被删除

我正在尝试通过使用Keycloak-Quickstarts的app-authz-rest-springboot来熟悉 Keycloak 的授权服务概念。

我按照指南在本地运行keycloak-serverapp-authz-rest-springboot,它们按预期工作。但是,当我尝试将新端点添加到应用程序并将其保护为 app-authz-rest-springboot 中提供的其他端点时,我遇到了一个问题。

我尝试做的是将 HTTP 请求的请求正文转发给 keycloak 客户端的策略执行器,并根据请求正文决定是否应授予请求。

在应用程序方面,我有以下内容:

  1. 新端点:
  1. 端点的请求正文:
  1. policy-enforcer-config将请求正文推送到 keycloak-policy-enforcer 以进行端点的权限评估

在密钥斗篷服务器端:

  1. 称为示例资源绑定的资源/api/example(上述端点)
  2. 自定义 js 策略,将端点的请求正文打印到标准输出并始终授予请求。
  1. 将示例资源(1)与自定义 js 策略(2)绑定的权限

我使用带有请求正文的 Postman 向应用程序发出请求:

自定义 js 策略脚本打印请求正文 10:37:46,387 INFO [stdout] (default task-6) blablabla ,这意味着应用程序将请求正文正确推送到 policy-enforcer。此外,keycloak 会成功授予请求。

虽然,在应用程序端,在 keycloak 的策略执行器拦截之后,请求失败并返回400 Bad RequestHTTP 状态和响应:

似乎 keycloak 的策略执行者在权限评估后以某种方式从请求中“删除”了请求正文。这很奇怪,因为正如我所提到的,声明已成功推送到 keycloak 并且请求已成功授予。

有没有人遇到过类似的问题?或者我可以关注任何在线帖子或示例?我用谷歌搜索了很多,但不幸的是,我还没有找到任何东西。并且,keycloak-quickstarts 没有提供任何将请求正文推送到策略执行器的类似示例。这些示例仅限于展示如何将请求参数转发到 keycloak。

0 投票
0 回答
39 浏览

vue.js - 如何为 VueJs 启用 Keycloak 授权服务?

是否可以在 Angular 应用程序或 vuejs 中启用授权服务,而不仅仅是身份验证,以从 KeyCloak 准入控制台管理它的资源?如果是这样,我在哪里可以找到示例或教程?

为谷歌翻译道歉!!。

我有一个使用 Springboot 构建的微服务,我可以通过启用“授权服务”检查在 Keycloak 管理控制台中管理其资源的授权,它甚至可以从 Web 应用程序进行身份验证,并且有一个 SPA-Springboot-Keycloak 工作流程。我也想做同样的事情,从 Keycloak 的管理控制台授权我的 VueJs Web 应用程序的资源。这可能吗?如何?

0 投票
0 回答
65 浏览

keycloak - 在 ktor 中注册策略执行器配置的正确方法是什么

在 Spring Boot 中,将 keycloak 适配器和“keycloak.policy-enforcer-config.claimInformationPointConfig.claims[claim-from-uri]={ request.uri }”添加到 application.properties 文件中,我能够收到“claim-from- uri”在 keycloak javascript 策略中。但是在 ktor 中使用类似的设置是行不通的。

我在 keyclaok.json 中添加了“policy-enforcer”,但在 keycloak 的 javascript 策略中,“claim-from-uri”属性始终为空。

我的用例是从 URI 获取声明,然后使用它从 keycloak 服务器获取策略。

下面是我的 keycloak.json 文件。

0 投票
1 回答
24 浏览

java - Keycloak、java 插件、auth 用户自定义连接到第三方

我需要制作“hacky”的oauth流程。我的意思是为用户添加能力,使用来自其他人的凭据登录到我的系统,不幸的是,它没有 oidc 并且不会有好几个月。

我想有这个选项,输入这个其他系统登录名/密码点击登录按钮,然后在keycloak流程中尝试这些凭据来连接这个其他系统,获取令牌,然后像往常一样使用keycloak用户数据库登录这个用户或者如果此用户不存在创建他。

我不知道如何实现这个目标,有人做过类似的吗?

谢谢!

编辑:嗯,可能我需要使用 AbstractUsernameFormAuthenticator,完成后会在这里发送响应。