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

问题描述 投票:0回答:2

目前,我正在对API进行性能测试,需要RSA 256私钥的动态JWT令牌。我没有找到任何解决方案。谁能给我提供 JWT jar 文件和groove代码

jmeter jwt rsa jmeter-plugins
2个回答
1
投票

我相信您需要为此使用 Groovy 脚本

  1. 获取一个JWT客户端库,例如这个家伙将是一个不错的选择,并将其放到JMeter类路径(确保包含所有依赖项

  2. 重新启动JMeter以获取.jar

  3. JSR223 Sampler 添加到您的测试计划

  4. 示例代码类似于:

    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)
    

演示:


0
投票

我已经为 Apache Jmeter 构建了一个预处理器插件,它可以生成 JWT 令牌。您可以从 Jmeter 插件管理器安装它,它支持 HS256 和 RS256 签名算法。

插件维基页面

插件源码

© www.soinside.com 2019 - 2024. All rights reserved.