小编mel*_*tik的帖子

Swagger中的Keycloak集成

我有一个Keycloak受保护的后端,我想通过swagger-ui访问.Keycloak本身提供了oauth2隐式和accessCode流程,但我都没有工作.目前Keycloak的文档缺乏这一点,哪些url应该用于swagger.json中的authorizationUrltokenUrl.

Keycloak中的每个领域都通过访问http://keycloak.local/auth/realms/REALM/.well-known/openid-configuration提供了大量的配置URL列表.

此外,我试图通过添加以下行直接在swagger-ui index.html中集成keycloak js-client:

<script src="keycloak/keycloak.js"></script>
<script>
  var keycloak = Keycloak('keycloak.json');
    keycloak.init({ onLoad: 'login-required' })
      .success(function (authenticated) {
        console.log('Login Successful');
        window.authorizations.add("oauth2", new ApiKeyAuthorization("Authorization", "Bearer " + keycloak.token, "header"));
      }).error(function () {
        console.error('Login Failed');
        window.location.reload();
      }
    );
 </script>
Run Code Online (Sandbox Code Playgroud)

"登录成功"后我也尝试了类似的东西

swaggerUi.api.clientAuthorizations.add("key", new SwaggerClient.ApiKeyAuthorization("Authorization", "Bearer " + keycloak.token, "header"));
Run Code Online (Sandbox Code Playgroud)

但它也行不通.

有什么建议我如何能够在swagger中集成keycloak auth?

oauth jboss-tools swagger swagger-ui keycloak

36
推荐指数
3
解决办法
6672
查看次数

标签 统计

jboss-tools ×1

keycloak ×1

oauth ×1

swagger ×1

swagger-ui ×1