【问题标题】:What can the "cookie" layer of authentication be called?身份验证的“cookie”层可以称为什么?
【发布时间】:2013-02-20 06:53:17
【问题描述】:

所以,我有一个包含身份验证部分的 MVC 框架。它经历了各种有趣的 API 突破性变化,因为以前它是一个巨大的静态类。关于它“真正”需要多么抽象,我终于有了一个突破。

身份验证似乎分为三个部分

  1. 用于存储和读取用户名、密码哈希等的数据库接口
  2. 处理正确散列、创建登录令牌和验证它们的“业务”逻辑
  3. 处理 cookie 的“公开”层或存储登录令牌的“用户端持久性”层。这通常是 cookie,但也可能是 HTTP 基本身份验证

无论如何,为了让一切都变得很棒并独立地对这 3 层进行单元测试,我正在为这三个部分制作接口:

  1. IUserStore 和 ISessionStore
  2. IAuth 机制
  3. ????

我需要有关接口名称的帮助,该名称对用户端持久层完全有意义。谁能帮我给它起个好听的名字?此外,实现者名称(即 cookie 层类和 HTTP 基本身份验证类)的加分项

【问题讨论】:

  • 你尝试过抛硬币的方法吗(选择正面或反面,掷硬币,如果不喜欢结果 - 再掷一次直到开心)?选择任何名称,使用 10 分钟 - 如果听起来不正确,请重构...

标签: c# authentication cookies interface naming


【解决方案1】:

名称应直接来自描述。在您的情况下,您已经描述了所有内容,所以剩下的就是挑选最重要的部分。从我的角度来看,关于第三部分最重要的事情是它保留了身份验证信息,无论是 cookie 还是登录令牌或其他任何东西。那么为什么不叫它IAuthPersister 甚至IAuthenticationPersister?在这种情况下,实现者的名称将是 CookieAuthPersisterHttpBasicAuthPersister 等,表示层和底层实现的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-28
    相关资源
    最近更新 更多