共用方式為


Azure 上 Python 應用程式的身分識別和存取管理

在 Azure 中,適用於 Python 應用程式的身分識別和存取管理 (IAM) 包含兩個主要概念:

  • 驗證:驗證使用者、群組、服務或應用程式的身分識別
  • 授權:確定某個身分識別在 Azure 資源上可執行的動作權限

Azure 提供多個 IAM 選項,以符合應用程式的安全性需求。 本文包含基本資源的連結,可協助您開始使用。

若要深入瞭解,請參閱 身分識別和存取管理的建議

無密碼連線

盡可能使用受控識別來簡化身分識別管理並增強安全性。 受控識別支援無密碼驗證,不需要在程式碼或環境變數中內嵌敏感性認證,例如密碼或客戶端密碼。 受控識別適用於 App Service、Azure Functions 和 Azure Container Apps 等 Azure 服務。 它們可讓應用程式向 Azure 服務進行驗證,而不需要管理認證。

下列資源示範如何透過 DefaultAzureCredential搭配無密碼驗證使用適用於 Python 的 Azure SDK。 DefaultAzureCredential 最適合在 Azure 中執行的大部分應用程式,因為它能以安全且智能的順序鏈結多個認證類型,順利地支援本機開發和生產環境。

服務連接器

許多通常用於 Python 應用程式中的 Azure 資源都支援 Service Connector。 服務連接器可簡化在 Azure 服務之間設定安全連線的程式。 它會自動設定計算服務(例如 App Service 或 Container Apps)與相依服務(例如 Azure 記憶體、Azure SQL 或 Cosmos DB)之間的驗證、網路存取和連接字元串。 這可減少手動步驟、協助強制執行最佳做法(例如使用受控識別和私人端點),並改善部署一致性和安全性。

金鑰庫 (Key Vault)

使用 Azure Key Vault 之類的金鑰管理解決方案,可讓您更充分掌控您的秘密和認證,儘管其具有額外的管理複雜度。

在應用程式中登入用戶的驗證和身分識別

您可以開發 Python 應用程式,讓使用者使用Microsoft身分識別登入(例如 Azure AD 帳戶)或外部社交帳戶(例如 Google 或 Facebook)。 一旦通過驗證,您的應用程式就可以授權使用者存取自己的 API 或Microsoft API,例如 Microsoft Graph,以與使用者配置檔、行事歷和電子郵件等資源互動。