0

技術堆棧的前端爲reactJS,後端由APIGateway和Lambda支持。我在我的反應App中使用Auth0作爲身份服務。在通過Auth0給出的社交登錄驗證身份之後,我返回access_tokenid_tokenexpiry_time。此外,我可以使用id_token獲得用戶信息,例如emailId。現在,我需要保護/阻止訪問我的後端,即APIGateway和Lambda。通過定製授權方法使用Auth0對AWS APIGateway進行授權

有很多的選擇,以保護訪問AWS APIGateway像IAM授權定製授權。有關於如何使用IAM authorizer with Auth0的Auth0文檔。我想知道,如何使用自定義授權者。我瞭解定製授權人工作原理的高級架構。

這裏是我的關於自定義授權問題:

1Q。通過使用react auth0認證模塊,我找回了access_tokenid_tokenexpiry。收到的access_token不是JWT。如何獲得JWT access_token,以便我可以通過Authorization標頭傳遞它。

2Q。我在Auth0儀表板中看到一個名爲API的單獨部分。這是非常混亂和模棱兩可的。在我的理解中,這個Auth0的API部分需要單獨調用Auth0服務器並接收新的access_token,這與社交登錄的訪問令牌不同。爲什麼我不能使用來自react的Auth客戶端的訪問令牌?我可能是錯的,但我不瞭解Auth0中的這個API部分。

3Q。假設以某種方式,我發送access_token在授權標頭中,我如何驗證在定製授權人的Lambda。有幾篇關於此的博文,但每篇文章都採用了不同的方法。有些使用id_token進行驗證,有些使用jwt package進行解碼,但是我沒有看到驗證呼叫到Auth0。

有一些關於授權APGateway Auth0的博客文章,但他們是舊的/不贊成或使用一些黑客來授權它。如果我們能夠記錄使用Auth0授權APGateway的正確方法,這將是件好事。

回答