本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

防範跨網站要求偽造(CSRF)

貢獻者

您StorageGRID 可以使用CSRF權杖來強化使用Cookie的驗證功能、協助防範跨網站要求偽造(CSRF)攻擊。Grid Manager與租戶管理程式會自動啟用此安全功能、其他API用戶端則可選擇是否在登入時啟用。

攻擊者若能觸發要求至不同網站(例如HTTP表單POST)、可能會導致使用登入使用者的Cookie發出特定要求。

利用CSRF權杖協助防範CSRF攻擊。StorageGRID啟用時、特定Cookie的內容必須符合特定標頭或特定POST本文參數的內容。

若要啟用此功能、請在驗證期間將「csrfToken」參數設為「true」。預設值為「假」。

curl -X POST --header "Content-Type: application/json" --header "Accept: application/json" -d "{
  \"username\": \"MyUserName\",
  \"password\": \"MyPassword\",
  \"cookie\": true,
  \"csrfToken\": true
}" "https://example.com/api/v3/authorize"

如果為真、「GridCsrfToken」Cookie會以隨機值設定、以供登入Grid Manager、而「AccountCsrfToken」Cookie則會以隨機值設定、以供登入租戶管理程式。

如果Cookie存在、則所有可修改系統狀態的要求(POST、PUT、PATCH、DELETE)都必須包含下列其中一項:

  • 「X-CSRF-Token」標頭、其標頭值設為CSRF權杖Cookie的值。

  • 對於接受格式編碼實體的端點:「csrfToken」格式編碼的要求實體參數。

如需其他範例與詳細資料、請參閱線上API文件。

附註 若要求具有CSRF權杖Cookie集、也會針對任何要求執行「Content-Type:application/json」標頭、以進一步保護Json要求實體免受CSRF攻擊。