security_hashes
security_hashes 用來把 hash token 關聯到特定資料表的某一筆資料。
資料表關聯
| 欄位 | 規則 |
|---|---|
model | 目標資源類型 |
foreign_id | 目標資源 id |
hash | 對外 token |
user_id | hash 通過後使用的 user id |
常見對應:
model | foreign_id 對應 |
|---|---|
QuoteRequest | quote_requests.id |
QuoteBid | quote_bids.id |
User | users.id |
查詢規則
查 quote request hash:
SELECT *
FROM security_hashes
WHERE model = 'QuoteRequest'
AND hash = ?通過後還要確認:
(int)$hashRecord['foreign_id'] === $quoteRequestId新舊專案位置
| 專案 | 位置 |
|---|---|
| 舊專案 | get-lancer-php56/app/Model/SecurityHash.php |
| 新專案 | pro360_api_82/Lib/Model/SecurityHash.php |
注意
QuoteRequesthash 查詢本身不檢查 14 天期限;舊新專案目前都是Usermodel 才套期限。- hash flow 通過時,用
security_hashes.user_id,不是 session user。