【问题标题】:Remove/Disable "Two-factor authentication" and "Personal Data" from /Identity/Account/Manage page从 /Identity/Account/Manage 页面删除/禁用“双重身份验证”和“个人数据”
【发布时间】:2022-01-02 22:16:36
【问题描述】:

我正在使用 ASP.NET Core MVC (.NET 5) 和 Identity 开发 Web 应用程序以进行用户管理。如果我导航到 /Identity/Account/Manage 页面,我可以看到 5 个选项:

  • 简介
  • 电子邮件
  • 密码
  • 双因素身份验证
  • 个人资料

我想从页面中删除双重身份验证个人数据选项。并且还删除或禁用对这些功能的访问。我该怎么做?

编辑:

我添加了新的脚手架项目并检查了帐户/管理/布局,然后我删除了 双因素身份验证个人数据<li> 元素但 /Identity /Account/Manage/PersonalData 和 /Identity/Account/Manage/TwoFactorAuthentication 链接仍然可以访问。

【问题讨论】:

  • but /Identity/Account/Manage/PersonalData and /Identity/Account/Manage/TwoFactorAuthentication links are still accessible.也许你可以在你的项目中删除它们。

标签: asp.net-core asp.net-core-mvc asp.net-core-5.0


【解决方案1】:

最后,我按照文档 (Disable a page) 中的说明成功禁用了这些页面,但做了一些改动。

我添加了这些新的脚手架项目:

  • 帐户/管理/布局(以前添加)
  • 帐户/管理/删除个人数据
  • 帐户/管理/禁用2fa
  • 帐户/管理/下载个人数据
  • 帐户/管理/启用身份验证器
  • 帐户/管理/个人数据
  • 帐户/管理/重置验证器
  • 帐户/管理/TwoFactorAuthentication

对于 DeletePersonalData、Disable2fa、DownloadPersonalData、EnableAuthenticator、PersonalData、ResetAuthenticator 和 TwoFactorAuthentication,我从 .cshtml.cshtml.cs 文件中删除了所有内容,留下了

_ManageNav.cshtml 文件中,我删除了这些列表项:

<li class="nav-item"><a class="nav-link @ManageNavPages.TwoFactorAuthenticationNavClass(ViewContext)" id="two-factor" asp-page="./TwoFactorAuthentication">Two-factor authentication</a></li>
<li class="nav-item"><a class="nav-link @ManageNavPages.PersonalDataNavClass(ViewContext)" id="personal-data" asp-page="./PersonalData">Personal data</a></li>

ManageNavPages.cs 文件中,我删除了以下属性和方法:

    public static string DownloadPersonalData => "DownloadPersonalData";
    public static string DeletePersonalData => "DeletePersonalData";
    public static string PersonalData => "PersonalData";
    public static string TwoFactorAuthentication => "TwoFactorAuthentication";
    public static string DownloadPersonalDataNavClass(ViewContext viewContext) => PageNavClass(viewContext, DownloadPersonalData);
    public static string DeletePersonalDataNavClass(ViewContext viewContext) => PageNavClass(viewContext, DeletePersonalData);
    public static string PersonalDataNavClass(ViewContext viewContext) => PageNavClass(viewContext, PersonalData);
    public static string TwoFactorAuthenticationNavClass(ViewContext viewContext) => PageNavClass(viewContext, TwoFactorAuthentication);

结果我在导航器中收到 404 HTTP 错误,这正是我想要的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-26
    • 2019-07-21
    • 2016-05-30
    • 2011-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多