2016-07-09 103 views
0

我正在使用Spring構建Web應用程序。我有多個Spring客戶端應用程序和一個OAuth2授權和資源服務器。最終用戶首先在客戶端應用程序內進行身份驗證,然後客戶端應用程序從資源服務器請求一些資源(從授權服務器獲取訪問令牌之後),處理數據並將其返回給用戶。用戶也可以更改資源服務器上的數據,但只能通過客戶端應用程序。爲了獲得資源,只使用客戶端證書,在這種情況下,資源所有者是可信的客戶端。春季OAuth2客戶端,CSRF保護

在資源服務器上僅存儲客戶端詳細信息和資源,但沒有關於最終用戶的信息。資源服務器不關心誰請求資源,只是該請求來自授權的客戶端應用程序。

客戶端應用程序具有CSRF保護,但需要在授權服務器上啓用CSRF保護嗎?我無法想象任何攻擊情形,因爲通信是服務器到服務器,客戶端憑證安全地存儲,用戶無法直接訪問資源。

回答

1

如果您的授權服務器只能從應用程序服務器訪問,我不會看到您對兩者都啓用CSRF保護可能會產生什麼興趣。 最終用戶可訪問的服務器上的CSRF保護應該足夠了。 此外,如果您的應用程序服務器上的CSRF保護被破壞,然後您的應用程序與您的授權服務器進行通信,我不會在您的授權服務器中檢測到它,因爲請求是由您的服務器完成的。