在 Python 的 Azure 函数中使用 DefaultAzureCredential()
Using DefaultAzureCredential() in Azure Function with Python
我正在尝试在我的 Azure 函数中将 DefaultAzureCredential() 与 python 结合使用以连接到 Azure SQL。
到目前为止我发现的是:https://github.com/felipefandrade/azuresqlspn。我正在尝试使用托管身份进行身份验证。
有没有一种方法可以在 python 代码中将 DefaultAzureCredential() 与 SQLAlchemy 结合使用,并使其在 visual studio 代码中用于本地开发?而不是使用 CLIENT_ID、TENANT_ID & CLIENT_SECRET?
我无法谈论与 SQLAlchemy 的集成或 Azure SQL 对 Azure Active Directory 访问令牌的要求(您可能会发现 sqlalchemy/6031 有帮助)。但我可以说是的,DefaultAzureCredential 可以在令牌获取方面做你想做的,只要满足一些先决条件:你的 Functions 应用程序必须配置为托管身份,你必须在 VS Code 中登录到 Azure,以及环境您提到的变量不得在任何一个环境中设置(它们用于配置服务主体,即不是您想要的)。
DefaultAzureCredential 遍历一系列凭据,直到有人提供令牌(package readme 记录了这些凭据的顺序)。鉴于上述先决条件,托管身份将在您的 Azure Function 中成功,但在本地失败,导致凭据尝试 VS Code。请注意,您将对不同的身份进行身份验证,因此您需要确保登录到 VS Code 的托管身份和用户都有权访问 Azure SQL.
我正在尝试在我的 Azure 函数中将 DefaultAzureCredential() 与 python 结合使用以连接到 Azure SQL。
到目前为止我发现的是:https://github.com/felipefandrade/azuresqlspn。我正在尝试使用托管身份进行身份验证。
有没有一种方法可以在 python 代码中将 DefaultAzureCredential() 与 SQLAlchemy 结合使用,并使其在 visual studio 代码中用于本地开发?而不是使用 CLIENT_ID、TENANT_ID & CLIENT_SECRET?
我无法谈论与 SQLAlchemy 的集成或 Azure SQL 对 Azure Active Directory 访问令牌的要求(您可能会发现 sqlalchemy/6031 有帮助)。但我可以说是的,DefaultAzureCredential 可以在令牌获取方面做你想做的,只要满足一些先决条件:你的 Functions 应用程序必须配置为托管身份,你必须在 VS Code 中登录到 Azure,以及环境您提到的变量不得在任何一个环境中设置(它们用于配置服务主体,即不是您想要的)。
DefaultAzureCredential 遍历一系列凭据,直到有人提供令牌(package readme 记录了这些凭据的顺序)。鉴于上述先决条件,托管身份将在您的 Azure Function 中成功,但在本地失败,导致凭据尝试 VS Code。请注意,您将对不同的身份进行身份验证,因此您需要确保登录到 VS Code 的托管身份和用户都有权访问 Azure SQL.