Microsoft 标识导致 Azure Web 应用程序崩溃

Posted

技术标签:

【中文标题】Microsoft 标识导致 Azure Web 应用程序崩溃【英文标题】:Microsoft Identity causes a crash in an Azure Web App 【发布时间】:2021-12-16 06:56:03 【问题描述】:

我正在尝试使用 Azure 迈出第一步。我已经上传了一个 webapp(Blazor Wasm 服务器主机),但是使用 RoleManger 或 UserManager 会导致崩溃。不幸的是,我还没有弄清楚如何在 Azure Web 应用程序中启用日志(这是论坛上的另一个问题)。 我可以通过多次尝试发现,即使是简单的查询也不起作用。但是,我的本地数据库没有问题。 无论执行哪一行,应用程序都会崩溃。因此我认为它与配置有关。

var adminRoleInDb = await _roleManager.FindByNameAsync("adminRoleName");
var superUserInDb = await _userManager.FindByEmailAsync("admin");

编辑: 我尝试了 Web-Api 调用来获取错误消息。我收到错误“无效的对象名称'AspNetUsers'。”。没错,我用modelbuider更改表中的名称和架构。

modelBuilder.Entity<AppUser>(entity =>
            
entity.ToTable(name: "Users", "Identity")

【问题讨论】:

如果不了解更多信息,我们绝对无能为力。 “崩溃”是什么意思?你有错误信息吗?如果有,是什么? 当应用程序启动时,我得到一个带有消息“:( 应用程序错误”的网站和一个查看诊断资源的选项。它说,有 8x 503 Server Unavailable-Error。但我认为,这是一条错误消息。我没有更多信息。我无法获取日志。 我尝试了一个 api 调用,但我收到一条错误消息“无效的对象名称 'AspNetUsers'。”在上面编辑。 “无效的对象名称”可能意味着您指向错误或空的数据库。 没错,但我已经重命名了。见我上面的代码。我不明白,为什么用户管理器使用旧名称。数据库当前已创建。 【参考方案1】:

我发现了问题,我对 dbcontext 中的模型构建器进行了许多更改。我用了base.OnModelCreating(modelBuilder); 两次。首先开始建筑物和身份变化背后的某个地方。

【讨论】:

以上是关于Microsoft 标识导致 Azure Web 应用程序崩溃的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Microsoft.WindowsAzure.Storage.Table.CloudTableClient 授权托管标识访问 Azure 表存储

如何将 Azure 托管标识分配给 Azure 存储帐户?

在 Azure 中整合托管标识与身份验证/授权标识

使用 Terraform 创建具有托管标识的 Azure AKS 会导致 AutoUpgradePreview 未启用错误

有时调用 Microsoft Azure 托管的 WCF 服务会导致“SSL/TLS 的信任关系”问题

如何将python web应用程序部署到Microsoft Azure