Rob*_*man 4 azure-active-directory azure-functions azure-managed-identity
我有一个 C# dotnet core 3.1 Azure Function App(名为 func-utrngen-dev-001),我想将其配置为通过托管标识对 Sql Azure 数据库进行身份验证。
采取的步骤:
为 sql server 帐户创建 AAD 管理员
使用该帐户打开与 sql server 的连接
运行以下命令创建与 azure 函数应用程序同名的“包含用户”
从外部提供商创建用户 [func-utrngen-dev-001]
更改角色 db_datareader 添加成员 [func-utrngen-dev-001]
更改角色 db_datawriter 添加成员 [func-utrngen-dev-001]
确保在 Sql Server\Security\Firewalls 和虚拟网络 blas 下的 Azure 门户中将“允许 Azure 服务和资源访问此服务器”设置为“是”
确保函数应用的“身份”边栏选项卡上的“系统分配\状态”设置为“打开”
当函数应用尝试进行身份验证时,我收到以下错误:
用户“<令牌识别的主体>”登录失败
因此,我安装了 Microsoft 的“MSI Validator”工具并执行了此处描述的步骤。我从 Kudu 会话的 Powershell 窗口运行了以下命令:
./msi-validator.exe test-connection -r sql -e "数据源=sql-utrngen-dev-001.database.windows.net;初始目录=utrngen;"
它成功获取了令牌,但随后失败,并出现与我的函数应用程序相同的错误:
无法连接到 SQL。异常:用户“<令牌识别的主体>”登录失败
接下来我应该尝试什么?
| 归档时间: |
|
| 查看次数: |
5169 次 |
| 最近记录: |