如何在 Python 中整合金鑰 (FastAPI)

WBOY
發布: 2024-08-31 14:43:03
原創
446 人瀏覽過

介紹

在本指南中,我們將引導您完成使用 FastAPI 框架將金鑰驗證整合到 Python Web 應用程式中的過程。此實作利用 Corbado 的密鑰優先 web-js 包,該包簡化了與密鑰後端的整合。在本教程結束時,您將擁有一個可運行的 FastAPI 應用程序,該應用程式具有基於密碼的身份驗證。

在這裡閱讀完整的原始教學

FastAPI 金鑰整合的先決條件

要學習本教學課程,您應該對 Python、FastAPI、HTML 和 JavaScript 有基本的了解。 
此外,您需要一個 Corbado 帳戶才能使用金鑰服務。讓我們開始吧!

FastAPI 金鑰項目結構

您的 FastAPI 專案將包含幾個關鍵檔案。重要的包括:

雷雷

設定您的 Corbado 帳戶

開始編碼之前,請先設定一個 Corbado 帳戶。這將允許您存取他們的密鑰服務。請依照以下步驟操作:

  1. 註冊:在 Corbado 開發者面板上註冊。
  2. 建立專案:為您的專案命名並在設定過程中選擇「Corbado Complete」。
  3. 環境設定: 選擇「DEV」作為您的環境,選擇「Web 應用程式」作為應用程式類型。
  4. 會話管理: 選擇「Corbado 會話管理」來處理金鑰驗證和會話管理。
  5. 前端框架: 選擇「Vanilla JS」作為您的前端框架。
  6. 設定: 設定您的應用程式 URL(例如,http://localhost:8000)和依賴方 ID(例如,localhost)。

設定後,您將收到 HTML/JavaScript 片段,您將把它們整合到 FastAPI 專案中。

初始化 FastAPI 項目

如果尚未建立 main.py 文件,請先建立它。使用以下命令安裝 FastAPI 和其他必要的軟體包:

雷雷

您的 main.py 將處理應用程式邏輯,包括設定路由和管理會話。

配置環境變數

在專案的根目錄中,建立一個 .env 檔案來儲存環境變數:

雷雷

使用 python-dotenv 將這些變數載入到您的應用程式中:

雷雷

使用會話管理建立 HTML 模板

接下來,設定您的 HTML 範本。在 templates/ 目錄中,建立 login.html 和 profile.html。其中將包括整合 Corbado 身份驗證元件所需的 JavaScript。
這是 login.html 的基本結構:

雷雷

對於 profile.html,包含顯示使用者資料的元素和登出按鈕:

雷雷

設定 FastAPI 控制器

您的控制器邏輯將駐留在 main.py 檔案中。該文件將管理登入和個人資料頁面的路由。登入路由將簡單地將 PROJECT_ID 注入到範本中,而設定檔路由將驗證會話並使用 Corbado 的 Python SDK 取得使用者資料。

範例 main.py:

雷雷

運行 FastAPI 應用程式

最後,要執行 FastAPI 應用程序,請安裝 Uvicorn:

雷雷

然後,啟動你的伺服器:

雷雷

在瀏覽器中造訪 http://localhost:8000 以查看正在執行的 UI 元件。

How to Integrate Passkeys in Python (FastAPI)

結論

本教學示範如何使用 Corbado 的 web-js 套件將金鑰驗證整合到 FastAPI 應用程式中。此設定提供了安全且現代化的身份驗證方法,同時也無縫管理使用者會話。有關擴展此實現或與現有應用程式整合的更多詳細信息,請參閱 Corbado 文件。

以上是如何在 Python 中整合金鑰 (FastAPI)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!