Micronaut:同一应用的多种安全配置

问题描述

说明

我有一个典型的 Micronaut API 应用,有两种类型的端点:

1/ 使用签名 A 签名的 JWT 令牌身份验证面向客户端

2/ internal (service to service) 使用签名 B 签名的 JWT 令牌认证

因此有两种不同的安全 JWT 令牌类型和相应的两种不同的签名,我希望它们是独占的,例如给定的签名仅用于相应的控制器。

我当前的配置如下:

  security:
    enabled: true
    token:
      jwt:
        signatures:
          secret:
            secret-a:
              base64: true
              secret: XXXX
            secret-b:
              base64: true
              secret: YYY

在进行 JWT 令牌验证时,它会检查至少一个签名,而我需要精确地提供一个签名。

是否可以通过配置来解决这个问题,例如通过标记签名和注释相应的控制器?

这是一些例子:

        signatures:
          secret:
            secret-a:
              base64: true
              secret: XXXXX
              tag: client
            secret-b:
              base64: true
              secret: YYYY
              tag: admin
@Secured(SecurityRule.IS_AUTHENTICATED,tag=admin)
class AdminController {

Micronaut 1.3.7 版

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)