2012-08-13 29 views
3

我有一個使用Amazon EC2與Django和Google App Engine的網站,它的強大圖像API和圖像服務基礎設施。當用戶上傳圖片時,瀏覽器向我的EC2服務器發送一個AJAX請求,以獲取Blobstore上傳網址。我通過我的Django服務器獲取這個信息,以便檢查用戶是否已通過身份驗證,然後服務器需要從App Engine服務器獲取URL。上傳完成並在App Engine中處理後,我需要將上傳信息發送回django服務器,以便構建所需的模型實例。我怎樣才能做到這一點?我正在考慮使用urllib,但我如何確保這些信息只能通過我的服務器訪問,而不能通過Web用戶訪問?也許某種祕密鑰匙?兩個Web服務器之間的安全通信(使用Django和Google App Engine的Amazon EC2)

回答

2

除了Https調用(您應該將信息傳遞給django)之外,您可以使用AES加密(使用Pycrypto /任何其他lib)。它需要一個祕密密鑰來加密你的消息。

1

對於服務器到服務器的通信,傳統的安全建議會在網絡服務器級別爲URL提供某種類型的IP範圍限制,以及任何默認安全性。但是,由於您正在從雲提供商撥打電話到另一個雲提供商,因此您永久控制客戶端和服務器的IP地址的能力可能會降低。

這就是說,我會建議使用標準的用戶名/密碼認證機制和HTTPS傳輸安全。基本身份驗證用戶名/密碼將是我的建議(https:\\username:[email protected]\)。另外,我會確保在特定的時間窗內根據一定數量的失敗嘗試強制執行鎖定。這將阻止企圖蠻橫強制密碼。

取決於您在App Engine上使用的Web框架,可能已經支持部分或全部剛剛提到的內容。如果您更新了關於您架構的更多細節的問題,或者通過更多信息提出了一個新問題,我們可以爲您提供更準確的建議。

1

SDC提供從AppEngine到其他地方的專用網絡的安全隧道 - 如果您在那裏運行它,可能是您的EC2實例。

相關問題