【发布时间】:2015-12-03 23:10:55
【问题描述】:
我想将 keycloak 安全功能集成到基于 Spring Boot 的 rest api 中。 我正在使用 KeyCloak 1.3.1 Final。 现在这是纯粹的基于休息的 api,我正在通过 postman 进行测试
我的 rest api 得到了保护,当我尝试访问它时,确实要求我授权,但我无法执行我的请求。基本上被我的 api 锁定了。
我会快速列出我已经做过的事情
- 创建了一个 spring boot rest api 并对其进行了测试。效果很好。
- 为 KeyCloak 修改了我的 gradle 并按照 document 进行了配置
- 为“仅承载”应用程序配置了我的 keyCloak
- 我尝试生成访问令牌,但无法生成。因此,我在 keycloak 中使用“机密”创建了另一个客户端,并使用该客户端生成访问令牌(两个客户端都指向同一个应用程序。不确定这是否正确)
- 使用此访问令牌,我正在尝试进行 api 调用,但得到 401 我再次使用这个document。
我是 keycloak 和 spring 的新手。
所以我想在这里问的是,我们如何生成访问令牌以在类似于此处的场景中测试 rest api。
KeyCloak 上任何可以帮助我的有用资源。到目前为止,我不知道问题出在哪里?是我的 api 还是我配置 KeyCloak 的方式。 另外,由于我是 Spring 新手,我只是找不到关于如何为 Spring Boot 配置 cloak 的体面文档。如果你也能帮忙的话。
更进一步,我在 KeyCloak 邮件列表中得知 Spring Boot 适配器仅支持基本身份验证,因此我决定将 Spring 安全适配器本身合并。 我这样做了,当我运行应用程序并提供凭据时仍然无法使其工作。然而,有趣的事情正在发生。我被重定向到http://127.0.0.1:8090/sso/login 我仔细检查了它,这不是我提供的重定向网址。 ??? 知道为什么吗? (我又是新手,在这个项目中学习弹簧和安全性。所以请多多包涵。)
【问题讨论】:
标签: rest spring-boot keycloak