我的反应应用程序受Keycloak保护,其余的api配置为检查“授权承载[令牌]”的http标头 .

我查看了文档并在各处搜索,但无法找到如何创建永不过期的脱机令牌 . 我需要的原因是因为我的spring启动应用程序有一个CommandLineRunner bean,它使用spring的rest模板来填充一些数据 . 由于其余的api现在需要持有者令牌,因此对api的调用现在是“401授权” .

我已设法使用此keycloak endpoints 请求令牌:

http://localhost:8090/auth/realms/[my-realm]/protocol/openid-connect/token

使用client_id,username,password和grant_type作为请求正文并获得令牌 .

现在我遇到的问题是,当我开始招摇时,现在无法访问我的 endpoints ,因为它们也需要持有令牌 .

我的问题是:

  • 如何允许在招摇时输入持票人令牌?是否可以对标记进行招摇请求并在标头上附加承载标记?

  • 我试图通过使用@Profile(“production”)注释KeyCloakSecurityConfigurer类(它扩展KeycloakWebSecurityConfigurerAdapter),从spring上下文中排除keycloak配置java配置类 . 然而,这仍然被 Spring 天的背景所吸引 . 我怀疑这是因为这是在build.gradle上:

compile('org.keycloak:keycloak-spring-boot-2-starter:4.0.0.Beta2')compile('org.keycloak:keycloak-spring-security-adapter:3.1.0.Final')

有没有人遇到类似的问题,如果是这样,我很乐意听到你的反馈 .

我会继续更新这个 .

谢谢!