在MpJwt环境中保护Liberty microprofile指标端点

时间:2018-04-10 20:19:04

标签: open-liberty microprofile

我正在关注微型文档的OpenLiberty指南,并尝试构建一个示例应用程序,突出显示所有微型元素功能,作为最终实现的概念证明。

我正在使用Liberty v2018.0.0.1并添加了mpMetrics-1.1功能。 Liberty公开了度量标准端点/度量标准,但这需要身份验证。我发现的所有示例都使用配置来提供用户凭据。

我的应用程序使用mpJwt-1.0功能来授权JAX-RS资源。当我将标记添加到server.xml时,用户不再被授权(状态代码401)。如果我发送JWT,我会收到403.

我的问题: - 如果我希望使用JWT访问/ metrics端点,那么应该在JWT中配置哪个角色? - 我可以在同一server.xml中使用两种不同的身份验证方法 - 即基本身份验证与指标的基本注册表和我的应用程序端点的JWT吗?

缩写的server.xml:

<feature>mpMetrics-1.1</feature>
<feature>mpJwt-1.0</feature>

<mpJwt id="jwtConsumer"...

<quickStartSecurity userName="tech" userPassword="techpwd" />

<keyStore id="defaultKeyStore"...

1 个答案:

答案 0 :(得分:1)

这是一个已知问题,https://github.com/OpenLiberty/open-liberty/issues/2793。以下是解决方法:1。创建一个用户注册表,其中包含用户名与JWT中的upn声明相同的用户,并且您可以使用任何虚拟密码。 2.将mapToUserRegistry设置为&#34; true&#34;在mpjwt配置元素中。

相关问题