Jmeter - Azure AD -不记名令牌-配置功能

but5z9lq  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(232)

我在Visual Studio中创建了一个插件,它使用以下类:

using Microsoft.Azure.KeyVault;
using Microsoft.Azure.Services.AppAuthentication;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.AzureKeyVault;

此类使用客户端ID、客户端密码和资源ID输出承载令牌,该令牌被附加到请求的标头,以提供对Azure中的应用程序的性能测试访问。
然而,我们现在希望使用JMeter,目标是在JMeter中创建相同的函数。
我看了各种论坛和网站。然而,它似乎并不完全迎合我在使用所需的变量方面寻找,通过微软配置配置令牌的步骤。

public string TenantId = "{TenantID}";
public string Authority = "{Authority URL}";

private static IConfiguration Configuration;
private ApplicationAuthenticator _applicationAuthenticator;

public override void PreWebTest(object sender, PreWebTestEventArgs e)
    {
        Configuration = 
TestConfigurationBuilder.BuildConfiguration(KeyVaultUrl, AppId, TenantId, 
AppKey, Authority);

        _applicationAuthenticator = new 
ApplicationAuthenticator(Authority);
        string token = 
_applicationAuthenticator.SetToken
(Configuration[ClientIdKeyVaultVariable], 
Configuration[ClientSecretKeyVaultVariable], 
Configuration[ResourceIdKeyVaultVariable]);

        e.WebTest.Context.Add("AuthToken", $"Bearer {token}");
    }

这是在Visual Studio中使用C#生成{token}的代码。
为了输出相同的值,我需要在JMeter中使用什么类和函数?

goqiplq2

goqiplq21#

Sod 's law...我能够运行脚本。下面的链接很有帮助:https://swtestacademy.com/jmeter-tutorial-api-performance-testing
这比我想象的要简单。第一个HTTP请求需要沿着以下语句:

login.microsoftonline.com/{company specific}/oauth2/token?=

添加变量:- grant_type - client_id - client_secret - resource

相关问题