PostMan授權認證使用


Authorization

對於很多應用,出於安全考慮我們的接口並不希望對外公開。這個時候就需要使用授權(Authorization)機制。
授權過程驗證您是否具有訪問服務器所需數據的權限。
當發送請求時,通常必須包含參數,以確保請求具有訪問和返回所需數據的權限。
Postman提供授權類型,可以輕松地在Postman本地應用程序中處理身份驗證協議。

Postman中授權協議類型

支持的授權協議類型:

  • Inherit auth from parent
  • No Auth
  • API key
  • Bear Token
  • Basic Auth
  • Digest Auth
  • OAuth 1.0
  • OAuth 2.0
  • Hawk Authentication
  • AWS Signature
  • NTML Authentication[Beta]

Inherit auth from parent(從父類集成身份驗證)

向集合或文件夾添加授權。
假設您在集合中添加了一個文件夾。在授權選項卡下,默認的授權類型將被設置為“從父類繼承auth”。

“從父”設置的“繼承auth”指示默認情況下,該文件夾中的每個請求都使用父類的授權類型。假如,該集合使用“No Auth”,因此該文件夾使用“No Auth”,這意味着該文件夾中的所有請求將使用“No Auth”

如果您希望將父集合授權類型保留為“No Auth”,但要更新這個特定的文件夾的授權助手,該怎么辦呢?您可以編輯文件夾的詳細信息,從類型下拉菜單中選擇“基本的Auth”,並輸入您的憑證。因此,這個文件夾中的每個請求都依賴於“基本的Auth”,而父集合中的其余請求仍然不使用任何授權。

No Auth

不需要認證,這是默認選中的。

Basic Auth

這是一種比較簡單的授權類型,需要經過驗證的用戶名和密碼才能訪問數據資源。這就需要我們輸入用戶名和對應的密碼。
使用基本身份驗證:
第一步:從下拉菜單中選擇“Basic Auth”。
第二步:要設置請求的授權參數,請輸入您的用戶名和密碼。

第三步:點擊發送按鈕。

目前項目中使用的就是這種認證方式。

案例:請求URL如下,授權賬號為:

  • 用戶名:username

  • 密碼:password

  • 授權協議為:Basic Auth

    https://{{beta}}/oauth2/token?grant_type=password&sms_verify=true
    
  • 如果不輸入用戶密碼,直接GET請求,則會返回提示:Unauthorized

  • 輸入用戶名密碼,選擇Basic auth授權類型,則返回如下結果

{
    "access_token": "dda7b55f-574d-4de6-9f62-d849d5894ba9",
    "token_type": "bearer",
    "refresh_token": "1da3f4fb-dbf7-40d6-9316-32916f4c0d03",
    "expires_in": 3599,
    "scope": "READ WRITE"
}

postman中這里使用的是保存登錄的token,在下一個接口中使用該token信息。

代碼如下:

if(responseCode.code === 200){
    // 判斷是否存在 'access_token' 值  
    tests["Body matches access_token"] = responseBody.has("access_token");
    //保存響應結果json
    var jsonData = JSON.parse(responseBody);
    //將響應結果中的access_token保存為全局變量hb_access_token
    postman.setGlobalVariable("hb_access_token",jsonData.access_token);
    //打印請求參數
    tests[`[INFO] Request params: ${JSON.stringify(request.data)}`] = true;
// tests["have result "]=jsonData.hasOwnProperty("error")!==true;
	//驗證響應結果中存在access_token
    tests["have data "]=jsonData.hasOwnProperty("access_token")===true;
    //驗證該接口的響應時間
    tests[`[INFO] Response timeout: ${responseTime}`] = responseTime < 6000;
}else{
    //接口請求失敗
    tests["Waring:Request Failed. Please Fix!"] = false;
}

使用Basic Auth認完成。在下一個接口中,如何使用已經保存的全局變量access_token,如圖

Bear Token

Bearer Token是安全令牌。任何帶有Bearer Token的用戶都可以使用它來訪問數據資源,而無需使用加密密鑰。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM