【问题标题】:Seeding Admin account with Identity 2 in .Net without Entity Framework在没有实体框架的 .Net 中使用 Identity 2 播种管理员帐户
【发布时间】:2015-06-13 11:30:39
【问题描述】:

我在这里寻求建议。我在我的应用程序上设置了 Identity 2。在开发中,我们使用实体框架,但在我们的测试环境中,由于 DBA 政策,我们使用 SQL 脚本更新数据库。

我需要在应用程序第一次运行时初始化一个管理员用户,以便他们可以添加新用户。需要控制对应用程序的访问。在 Dev 中我们使用种子方法。

对于我们的测试环境,我需要能够为用户播种,但由于密码以加密格式保存到数据库中,我不太确定如何处理。据我了解,Identity 2 每次应用程序第一次运行时都会生成一个种子,这个种子用于加密密码。

有人对此有好的解决方案吗?

【问题讨论】:

    标签: c# sql-server asp.net-mvc entity-framework asp.net-identity-2


    【解决方案1】:

    您是否考虑过使用 Global.asax.cs 的 Application_Start 方法?您可以创建自己的方法并在Application_Start()上调用它来检查数据库中是否存在某个用户,如果没有,则创建您想要的角色和用户。

    【讨论】:

    • 是的,我已经尝试过了,它奏效了。我不确定我是否对它作为一种解决方案感到非常满意。对我来说这似乎是一个 hack,如果它被认为是最佳/好的做法,我可能是错的,但我会很高兴。
    • 最好的做法是使用种子方法、onmodelcreate、onmodelchange 等,但由于您必须遵守一些政策,因此这是唯一能想到的方法。
    猜你喜欢
    • 2017-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-12
    相关资源
    最近更新 更多