所以问题是我想在 jmeter 上运行一些需要 jwt 授权的测试用例。该 jwt 必须使用私钥 (RSA-256) 生成。
有什么办法可以在 jMeter 上做到这一点吗?
答案 0 :(得分:0)
您可以使用:
假设 JJWT library 在 JMeter Classpath 中具有依赖关系的示例方法
def generator = java.security.KeyPairGenerator.getInstance("RSA");
generator.initialize(2048, new java.security.SecureRandom())
def keyPayr = generator.generateKeyPair()
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)