3

我正在尝试在我的 API 中验证来自 AzureAD 的 JWT 上的签名。我检索公钥的端点在这里:https ://login.microsoftonline.com/common/discovery/keys

到目前为止,我已经尝试使用 Auth0 库 ( https://github.com/auth0/java-jwt )和 Nimbusds 库 ( https://connect2id.com/products/nimbus-jose-jwt/download ) 但我看不到如何将 JWK 以它所在的形式(字符串)实际转换为可以操作的对象。

Nimubs 似乎是更有前途的选择,因为它有一种方法可以用来从 JWK 中提取公钥......

List<JWK> matches = new JWKSelector(
        new JWKMatcher.Builder()
            .keyType(KeyType.RSA)
            .keyID("123456")
            .build()
        ).select(jwkSet);

这看起来或多或少像我需要的,但我不确定如何从提供的字符串中设置我的 JWK 对象列表。

谢谢。

4

0 回答 0