当应用程序需要访问 Azure 资源(如 Azure 存储、Azure 密钥保管库 或 Azure 认知服务)时,必须向 Azure 进行身份验证。 对于所有应用程序(无论是部署到 Azure、在本地部署还是在本地开发人员工作站上进行开发)而言,这一要求都是如此。 本文介绍使用 Azure SDK for Python 时向 Azure 验证应用的建议方法。
建议的应用身份验证方法
对 Azure 资源进行身份验证时,请使用基于令牌的身份验证,而不是应用的连接字符串。 用于 Python 的 Azure SDK 提供支持基于令牌的身份验证的类。 无论应用是在本地开发中、部署到 Azure 还是部署到本地服务器,应用都可以无缝地向 Azure 资源进行身份验证。
应用用来向 Azure 资源进行身份验证的特定类型的基于令牌的身份验证取决于应用正在运行的位置。 下图显示了基于令牌的身份验证类型。
- 当开发人员在本地开发期间运行应用时: 应用使用用于本地开发的应用程序服务主体或开发人员的 Azure 凭据向 Azure 进行身份验证。 这些选项在 本地开发过程中的“身份验证”部分中进行了讨论。
- 当应用托管在 Azure 上时: 应用使用托管标识向 Azure 资源进行身份验证。 在 服务器环境中的身份验证部分中讨论了此选项。
- 在本地托管和部署应用时: 应用使用应用程序服务主体向 Azure 资源进行身份验证。 在 服务器环境中的身份验证部分中讨论了此选项。
DefaultAzureCredential
Azure SDK 提供的 DefaultAzureC