2017-03-10 40 views
0

我是webdev的新手,所以如果這是一個明顯的原諒我,但我無法將我的頭圍繞解決方案。使用AWS S3 Javascript SDK加載新的網頁

我目前在AWS S3上託管一個靜態網站。登錄頁面可供公衆訪問,但所有其他頁面僅可用於授權用戶將承擔的特定IAM角色。一旦用戶輸入他們的登錄憑證,他們將收到臨時的AWS憑證,授予他們訪問受限制的頁面的權限。

我的問題是:如何以編程方式加載受限制的網頁?通常我會做這樣的事情:

$('body').load(/path/to/index.html); 

/path/to/index.html只是與IAM角色的用戶訪問。那麼我需要使用S3 sdk來訪問該文件嗎?在我的腦海中,我需要做類似的事情:

$('body').load(s3.getObject(/path/to/index.html)); 

但是這實際上並不奏效。

感謝您的幫助!

+0

提供AWS憑據聽起來不對。您應該創建一個API服務器併爲您自己的基礎設施生成令牌和其他內容。 –

+0

我通過AWS認知獲取了這些信用卡。 –

回答

1

請勿將頁面(HTML)本身設爲祕密。相反,把你的基本數據放入一個json文件中,然後爲它做一個XHR。

在路由器上使用前端框架,您可以檢查用戶是否已通過身份驗證,如果沒有,則呈現403。

該方法取決於您的框架,我不打算描述它。您可以使用AWS SDK通過身份驗證從S3中獲取數據。

+0

「基本數據」是什麼意思,以及如何將其存儲在json文件中?因此,HTML將不會是祕密的,但數據json文件將是祕密的,用戶在訪問該json文件之前需要進行身份驗證? –

+0

是的。你不需要隱藏任何不保密的東西。 –