ASP.NET 基于文本文件的身份提供者

ASP.NET Identity provider based on text file

我正在构建一个简单的 ASP.NET 5 管理站点,使用 ASP.NET Identity 2 密码保护实际的管理页面。它将被 2 到 4 个用户使用。

出于我无法控制的各种原因,我的雇主不希望我使用数据库。计划是将所有用户信息存储在一个文本文件中。当用户需要 added/removed 时,开发人员将登录服务器并更新文本文件。所以用户只能登录,不能注册,修改密码等

我仍然想使用 ASP.NET Identity,这样我就可以在我的 MVC 控制器等上使用 Authorize 属性。这也让以后开始使用数据库变得更容易。

我无法找到使用未加密文本文件的 ASP.NET 身份提供商。某处是否存在这样的提供商?

我还没有遇到过文本文件存储,但我已经看到很多使用其他存储机制的样本。查看 this post for samples and have a look on documentation 关于实现自定义存储的信息。

在你的情况下,我会将所有用户对象存储在一个列表中,然后将其序列化为一个 JSON-string,并保存到一个文件中。

但是,强烈建议不要使用纯文本存储密码并使用提供的散列机制。 (我相信你知道这一点)。只需将您的雇主指向 http://plaintextoffenders.com/ 即可了解为什么最好不要存储纯文本密码的示例。

当我试图了解 asp.net Indentity 的工作原理时,我整理了一个示例解决方案,在其中探索提供程序的自定义以使用简单的存储。

您可以在 github 上找到代码。

在文件夹 Custom.Identity 中,您可以看到我是如何实现不同的 类 和管理器的。

Trailmax 在他的博客上写了很多。 Taiseer Joudeh 写了一个 series of articles 可以帮助您理解所有相关的部分。