2017-01-24 27 views
2

我試圖加載測試需要進行身份驗證(OAuth 2.0用戶)和JMeter的模擬這個數的API。經過廣泛的搜索後,我只會遇到一個JMeter插件,但它並沒有太大的幫助。如何做一個JMeter的OAuth 2.0驗證?

我試圖驗證對Azure雲中的OAuth服務。有沒有人在那裏已經能夠成功地創建JMeter的HTTP請求對OAuth的認證2.0?

回答

4

基本上,您需要添加HTTP Header Manager才能發送Authorization標頭,其值爲Bearer ${ACCESS_TOKEN}以便進行經過身份驗證的OAuth API調用。

Access可以在2種主要的方式獲得令牌:

  1. 得到它以某種方式(要求它,使用嗅探工具和應用程序,你需要模擬等捕獲它),但是要知道,OAuth訪問令牌具有limited life span(默認爲1小時,這也適用於第2點爲好)
  2. 在測試實施OAuth2流程,即:

    • 身份驗證(提供客戶端ID和租戶ID)
    • 授權(使用客戶端ID和來自前一步驟的代碼)從以前的步驟
    • 獲取訪問令牌(提供授權代碼,來自第一步驟的代碼,以及客戶機ID

在問候實現選擇2 - 這將需要3個獨立的JMeter的採樣(或者你也可以通過JSR223 Sampler獲得訪問令牌編程)

參考文獻:

+0

首先感謝您對鞏固這一信息。我試圖避免必須手動執行此操作的整個麻煩。無論如何,我已成功能夠通過認證,授權來獲得,現在嘗試獲得訪問令牌我收到此誤導性的錯誤: **「AADSTS70002:錯誤驗證憑據AADSTS50012:提供無效的客戶端祕密。」 * * error_codes = 70002,50012 在面值我會相信這將是檢查卻多次(前導或尾隨空格)我沒有成功後的不正確client_secret。任何線索? –