如何使用RSA 256私钥在JMETER上生成JWT令牌需要库或jar文件?

bis0qfac  于 2023-10-20  发布在  其他
关注(0)|答案(1)|浏览(145)

目前我正在做API的性能测试,需要一个动态JWT token,RSA 256私钥。我没有找到任何解决办法。任何人都可以提供我任何JWTjar文件和凹槽代码

pkmbmrz7

pkmbmrz71#

我相信你需要为此编写Groovy脚本
1.获取JWT client library,例如this guy将是一个很好的选择,并将其放入JMeter类路径(确保包含所有依赖项)
1.重新启动JMeter以获取.jar文件
1.将JSR223采样器添加到您的测试计划
1.示例代码如下所示:

def keyPayr = io.jsonwebtoken.security.Keys.keyPairFor(io.jsonwebtoken.SignatureAlgorithm.RS256)

def now = java.time.Instant.now()

def clientId = 'foo'

def jwt = io.jsonwebtoken.Jwts.builder()
        .setAudience('https://example.com')
        .setIssuedAt(Date.from(now))
        .setExpiration(Date.from(now.plus(5L, java.time.temporal.ChronoUnit.MINUTES)))
        .setIssuer(clientId)
        .setSubject(clientId)
        .setId(UUID.randomUUID().toString())
        .signWith(keyPayr.private)
        .compact()

log.info('Token: ' + jwt)

演示:

相关问题