共用方式為


教學課程:使用 Microsoft 身分識別平台來註冊 Python Web 應用程式

本教學課程系列示範如何建置 Python Web 應用程式來登入使用者,並呼叫受保護的 Web API。 您可以使用適用於 Python 的 Microsoft 驗證程式庫來驗證您 Microsoft Entra ID 租用戶中的使用者。 最後,您將執行應用程式來登入、呼叫受保護的 API,以及將使用者登出。

在本教學課程中,您已:

  • 在 Microsoft Entra 系統管理中心內註冊 Web 應用程式並記錄其識別碼
  • 定義平台和 URL
  • 建立 Web 應用程式的用戶端密碼
  • 將權限授與 Web 應用程式以存取 Microsoft Graph API

必要條件

  • 具有有效訂用帳戶的 Azure 帳戶。 如果您沒有帳戶,可免費建立帳戶
  • 您所使用的 Azure 帳戶必須具有管理應用程式的權限。 下列任何 Microsoft Entra 角色都包含必要的權限:
    • 應用程式系統管理員
    • 應用程式開發人員
    • 雲端應用程式系統管理員

註冊 Python Web 應用程式並記錄識別碼

若要將身分識別和存取管理功能整合到您的應用程式中,請使用 Microsoft 身分識別平台來註冊您的應用程式。 遵循下列步驟,以在 Microsoft Entra 系統管理中心內註冊您的應用程式:

  1. 登入 Microsoft Entra 系統管理中心。
  2. 如有多個租用戶的存取權,則請使用頂端功能表中的 [設定] 圖示 ,以從 [目錄 + 訂用帳戶] 功能表來切換要在其中註冊應用程式的租用戶。
  3. 瀏覽至 [身分識別] > [應用程式] > [應用程式註冊],然後選取 [新增註冊]
  4. 輸入您應用程式的名稱,例如 python-flask-webapp。 當應用程式的使用者使用應用程式時 (例如在登入期間),可能會看到顯示名稱。 您可以隨時變更顯示名稱。
  5. 在 [支援的帳戶類型] 底下,選取 [僅在此組織目錄中的帳戶]
  6. 選取 [註冊] 以完成伺服器初始註冊。

註冊完成時,Microsoft Entra 系統管理中心會顯示應用程式註冊的 [概觀] 窗格。 從 [概觀] 窗格中,記錄要用於後續步驟的 [目錄 (租用戶) 識別碼] 和 [應用程式 (用戶端) 識別碼]。

新增重新導向 URI

若要為 Python Flask Web 應用程式新增重新導向 URI,請遵循下列步驟:

  1. 在 Microsoft Entra 系統管理中心的 [應用程式註冊] 中,選取您的應用程式。
  2. 在 [管理] 底下,選取 [驗證]
  3. 在 [平台設定] 下方,選取 [新增平台],然後選取 [Web]
  4. 選取 Web 作為應用程式的平台時,會提示您輸入重新導向 URI。 新增 http://localhost:5000/getAToken 作為 Web 應用程式的重新導向 URI。
  5. 選取設定

設定認證

在本教學課程中,您將使用用戶端密碼 (也稱為應用程式密碼) 以將應用程式識別為機密用戶端。 請遵循下列步驟,將用戶端祕密新增至您的應用程式註冊:

  1. 在 Microsoft Entra 系統管理中心的 [應用程式註冊] 中,選取您的應用程式。
  2. 在 [管理] 下,選取 [憑證和密碼]
  3. 用戶端密碼區段底下,選取新增用戶端密碼
  4. 在 [新增用戶端祕密] 窗格中,提供用戶端祕密的描述。
  5. 選取祕密的到期日,或指定自訂存留期。
    • 用戶端祕密存留期限制為兩年 (24 個月) 或更少。 您無法指定超過 24 個月的自訂存留期。 Microsoft 建議您將到期值設定為少於 12 個月。
  6. 選取新增
  7. 記錄用戶端祕密值 (不是其識別碼),供後續步驟使用。 祕密值只有在您建立時才會顯示一次,且在離開此頁面之後永遠不會顯示。

雖然您已在本教學課程中使用用戶端密碼,但建議先使用憑證,再將應用程式移至生產環境。 如需如何使用憑證的詳細資訊,請參閱這些指示 \(部分機器翻譯\)。

新增範圍

因為此應用程式會將使用者登入,所以您需要新增委派的權限:

  1. 在 [管理] 底下,選取 [API 權限]>[新增權限]
  2. 確認已選取 [Microsoft API] 索引標籤。
  3. 在 [常用的 Microsoft API] 區段中,選取 [Microsoft Graph]
  4. 從 [委派的權限] 區段中,確定已選取 [User.Read]。 如有需要請使用搜尋方塊。
  5. 選取新增權限

下一步