我想使用Apigility和Jquery作爲登錄策略進入我的應用程序。我正在努力瞭解如何做到這一點。Jquery和ApiGility登錄策略
我的設置如下:
客戶端和登錄API,因爲他們是我的應用程序的兩個部分是值得信賴的。
我在努力理解的是從我的表單中獲取用戶名和密碼,在JQuery中處理它的過程,然後使用Apigility授權策略來確保請求是真實的,並將其安全地傳遞到所需的登錄終點。
我有一個標準的登錄表單:
用戶輸入用戶名和密碼,並點擊 「登錄」。 jQuery的驗證數據,現在我需要發送的用戶憑據登錄終點...如何與ApiGility做到這一點,我不知道......
我一直在這裏閱讀文檔:https://apigility.org/documentation/auth/authentication-oauth2和我不太明白。
這就是我用ApiGility設置的。
- 我創建了一個登錄終點ApiGility
- 這個終點只能接受POST請求。
- 終點要求授權才能被訪問。
現在該如何與之交互?
由於我使用客戶端腳本(儘管這是我自己的應用程序),我不能使用傳統的客戶端ID和密碼,因爲沒有辦法,以確保在JQuery的這個信息,而無需將其暴露於世界。
取而代之,我應該使用隱式授權,即客戶端身份,而不使用密碼。
要獲得隱式授權,我需要將用戶重定向到Apigilities:http://example.com/oauth/authorize?response_type=token&client_id=testclient2&redirect_uri=/oauth/receivecode&state=1端點,以確保在發佈請求中包含用戶名和密碼。
當用戶被重定向時,他們必須點擊是或否按鈕,如果是,則創建令牌並生成會話(存儲客戶用戶名和密碼)並返回。這個令牌我使用會話存儲在客戶機器上。
現在我有一個令牌,我使用這個令牌來訪問我的安全登錄端點。
一旦我有權訪問登錄控制器,我現在使用令牌從會話中獲取用戶名和密碼。
最後 - 檢查憑證,並返回:真/假等
如何接近或遠離我是誰?