驗證授權機制
API驗證授權說明
本平台導入API Management方案,採HMAC認證授權機制。
HMAC機制
以HMAC簽章驗證使用者的身份,用戶在請求API服務時,將APPKEY與當下時間做HMAC-SHA256運算後,轉成Base64格式,帶入signature屬性欄位,服務器端將驗證用戶請求時的header欄位,驗證使用者的身份及請求服務的時效性。
HMAC簽章時效性
於Swagger頁面測試時,請在最上方輸入APPID與APPKEY,每次請求下方API時,會於header帶入Authorization和x-date,依照請求當下的時間及APPKEY製作簽章。
當下時間為GMT時間
簽章時效性為5分鐘
Header參數
API驗證授權使用範例
POSTMAN
可搭配Swagger頁面使用,自動產出Authorization,帶入Header設定。
以下為使用Swagger頁面取用API時,Curl所帶出的內容,將Authorization
內容(粗體字部分)、x-date
內容(粗體字部分)分別帶入POSTMAN的Header中,如下圖。
curl -X GET --header 'Accept: application/json' --header '
Authorization
: hmac username="FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF", algorithm="hmac-sha256", headers="x-date", signature="40EN7Ec/rw3xL3Y0x5ZS2TPNZkE="' --header 'x-date
: Fri, 09 Jul 2021 16:09:29 GMT' --header 'Accept-Encoding: gzip' --compressed 'https://parksim.moeaidb.gov.tw/apim/v2/Agency?$top=30&$format=JSON'
SAMPLE CODE
Last updated