2

我正在尝试将 Azure 托管服务标识与 Azure 功能和 KeyVault 一起使用。我希望能够从保管库中获取机密,并使用 ADAL 通过证书进行身份验证以访问 SharePoint Online。我正在使用 Visual Studio 2017 进行本地开发。

我想使用 Microsoft.IdentityModel.Clients.ActiveDirectory 的 3.19.8 和 Microsoft.Azure.Services.AppAuthentication 的 nuget 包,说明 Microsoft.IdentityModel.Clients.ActiveDirectory (>= 3.14.2) 的依赖关系。但是,它似乎与 3.14.2 硬链接。如果我尝试访问保管库,则会收到异常“无法加载文件或程序集 'Microsoft.IdentityModel.Clients.ActiveDirectory, Version=3.14.2.11'”。

如果我尝试使用 3.14.2,那么我会遇到使用证书进行身份验证的异常,说方法未找到。

所以我想知道 Nuget 中的描述是否不正确,或者是否可以在 Azure 函数中使用更高版本的 Microsoft.IdentityModel.Clients.ActiveDirectory,它似乎不允许重定向程序集版本。

谢谢

4

2 回答 2

0

旧版本的 NuGet/Visual Studio 使用项目提示路径来引用打包的依赖项。使用较新版本的 NuGet 升级似乎不起作用,因为旧提示路径未更新。

请手动编辑您的 csproj 以删除这些。

于 2018-07-02T13:13:01.747 回答
0

这很奇怪。在发现我可以在家中的 PC 上运行后,我在 Visual Studio 中重新输入了凭据,并删除并重新添加了 Microsoft.Azure.Services.AppAuthentication 包,它也开始在我的工作 PC 上运行。

于 2018-07-02T23:35:13.090 回答