代码之家  ›  专栏  ›  技术社区  ›  a7drew

数据加密是否属于存储库模式?

  •  1
  • a7drew  · 技术社区  · 15 年前

    我正在使用应用程序级加密来保护敏感数据。我需要在将字段存储到物理数据库之前对其进行加密,并在用户界面上显示之前对其进行解密。

    我正在应用应用程序中的存储库模式。

    数据加密/解密代码属于存储库类内部还是外部?

    我目前的想法是,当数据处于静止状态时,加密是存储库的一个方面,使用存储库的服务类不应该被这种加密代码弄乱。

    服务类负责验证和业务逻辑,但加密算法和数据的静态存储方式取决于存储库实现。

    2 回复  |  直到 15 年前
        1
  •  6
  •   David Norman    15 年前

    您当然不希望在服务类中使用加密。

    从某种意义上说,当你说

    但加密算法和数据的静态存储方式取决于存储库实现。

    由于加密是数据存储方式的一部分,因此它属于存储库内部。

        2
  •  1
  •   Eric King    15 年前

    我会把它放在服务层。原因如下:

    就我而言,业务逻辑(加密什么、不加密什么)不属于存储库。当要持久化的对象被提供给存储库时,它们应该准备好进行持久化(或者尽可能地接近)。否则,存储库负责持久性 实现业务规则,然后您就不再真正使用存储库模式了。。。