首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多重认证(Basic Auth + Keycloak)

多重认证(Basic Auth + Keycloak)
EN

Stack Overflow用户
提问于 2021-03-23 20:57:45
回答 1查看 43关注 0票数 0

我的Quarkus项目中有两个不同的rest端点:

代码语言:javascript
复制
/api/ws/...
/api/web/...

根据我的理解,Keycloak就是这样,我在访问端点之前获得了一个持有者令牌,并且使用这个令牌我可以访问端点。但是,如果我只想用基本身份验证(用户名+密码)保护"ws“端点,我该怎么做呢?这样我就可以在SecurityIdentity (主体)中包含用户了吗?

当前的"application.properties“如下所示:

代码语言:javascript
复制
# AUTH
quarkus.http.auth.basic=true
quarkus.http.auth.permission.authenticated.paths=/*
quarkus.http.auth.permission.authenticated.policy=authenticated
quarkus.http.auth.permission.web.paths=/*
quarkus.http.auth.permission.web.policy=authenticated
quarkus.oidc.tenant-id=RealmResolver
quarkus.oidc.enabled=true

quarkus.oidc.auth-server-url=${keycloak.url}/auth/realms/${keycloak.realm}
quarkus.oidc.client-id=${keycloak.client_id}
quarkus.oidc.token-path=${keycloak.url}/auth/realms/${keycloak.realm}/protocol/openid-connect/token
quarkus.oidc.token.refresh-expired=true
quarkus.oidc.application-type=WEB_APP

## WS
quarkus.http.auth.ws.basic=true
quarkus.oidc.ws.auth-server-url=${keycloak.url}/auth/realms/${keycloak.realm}
quarkus.oidc.ws.client-id=${keycloak.client_id}
quarkus.oidc.ws.application-type=hybrid
quarkus.http.auth.permission.ws.paths=/api/ws/*
quarkus.http.auth.permission.ws.policy=authenticated
EN

回答 1

Stack Overflow用户

发布于 2021-03-23 22:25:00

Quarkus可以同时支持多个身份验证机制-但目前它不能仅为特定的请求路径应用一种机制。请收看https://github.com/quarkusio/quarkus/issues/11886,谢谢

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66763607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档