【发布时间】:2019-12-11 06:49:04
【问题描述】:
我创建了一个简单的 AspNetCore(3.0 预览版)Web 应用程序,该应用程序基于具有应用内身份验证的内置模板(遵循基本教程)。
我可以运行我的应用程序,当我尝试访问安全页面时,我需要登录。
我注册并可以按预期登录。我可以在数据库的 AspNetUsers 表中找到我的用户。
我已成功修改 ApplicationUser 以添加 CustomTag (string) 并运行 EF 迁移和更新以将此列添加到 AspNetUsers 表中。我使用 SQL UPDATE AspNetUsers... 命令填充了该列,因此该列现在包含“Hello World!”。
现在我运行我的应用程序,但我没有关于经过身份验证的用户的有用数据,除了他已经过身份验证。
我在控制器操作中放置了一个断点来查看经过身份验证的ApplicationUser,我看到了 IdentityServer4 添加的 13 个声明的身份,但我不知道这与我的用户有什么关系?用户已通过身份验证,但名称为 NULL。该用户没有我的自定义属性“CustomTag”。我找错地方了吗?
大量搜索导致有关如何扩展模型(完成)以及如何运行 EF 迁移(完成)的深入文章。
大量搜索导致有关如何覆盖 IdentityServer4 的代码和 UI 的深入文章,但在我的模板化应用程序中没有这些,所以我不知道应该在哪里修改代码。
谁能告诉我如何让我的ApplicationUser 自定义属性在控制器操作处理程序中可见?
【问题讨论】:
-
在您的代码中搜索
IdentityUser,它应该只作为 AppUser 的基类出现。
标签: c# asp.net-core asp.net-identity identityserver4