2016-06-13 137 views
0

我一直在搜索2天,但我仍然不確定自己應該做什麼。在PHP身份驗證流程中實現用於身份驗證的JavaScript SDK

我目前擁有的是一種認證流程,它使用php搜索數據庫以驗證用戶的正確用戶ID和密碼。

但是我想改變這個身份驗證來使用「Amazon Cognito用戶池」,即使有一個PHP SDK這個特定功能(仍在測試版)似乎還不存在。目前可以處理的示例和sdks是Mobile(iOS,Android)和Web(JavaScript)。

所以我必須進行身份驗證,就好像我在做一個Web應用程序(使用JavaScript)。

要做到這一點,我認爲我必須替換驗證php文件在檢查數據庫的位置,而不是使用此JavaScript驗證。

據我所知,PHP文件不只是在腳本中間執行JavaScript,而是將它呈現給html結果網頁,然後客戶端瀏覽器就可以執行它們。這會削弱安全性,也不是我想要的。

所以我的第二個想法是讓PHP調用一個RESTful請求到同一個服務器,但是一個不同的文件。然後,該文件將是一個JavaScript函數,它對所需的所有內容進行身份驗證並返回結果,然後php文件將會得到結果,我可以繼續正常流程。

現在這似乎很奇怪,有點不對勁,因爲對於我的服務器使用JavaScript文件使用RESTful請求,似乎我需要安裝並運行node.js。

這真的是正確的做法嗎?

回答

0

其實你可以實現你自己的包裝,因爲這種事情基於在服務器端獲取請求或發佈請求。如果您有一些庫可以發出請求並獲得PHP請求(例如使用curl),則可以查看他們的身份驗證流程並實現您自己的身份驗證。下面的流程鏈接。

Authentication Flow

+0

一個包裝在哪? PHP的?我不確定我明白你的意思。 – Pochi

+0

是在PHP上。爲了使認證成爲可能,你需要根據它們在鏈路中的流量向亞馬遜服務器做出一些獲取和發佈請求。 –

+0

是的,但問題是get和post端點沒有公開,也沒有在它們的本地sdk上存在php。他們提供的圖書館是用JavaScript編寫的。 – Pochi