OWIN FLOW(从 MVC 5)到类库

本文关键字:类库 MVC FLOW OWIN | 更新日期: 2023-09-27 18:30:42

我有一个有 3 层的网站.....

  1. MVC 5(表示层)与自定义 OWIN 一起存储 cookie。它与服务层一起检查以验证用户,然后创建cookie。
  2. 服务层(类库):表示层引用了这一层,与数据库的任何通信都需要经过这些。
  3. 数据层(类库):具有 SQL 语句的数据层。该层负责与数据库的任何通信。服务层对此有参考。

上述所有层都驻留在同一台机器上,但位于不同的项目中。还有一种可能性是,我不得不将所有层移动到它自己的单独服务器(演示、服务、数据)。

现在,一旦用户经过身份验证和授权,我基本上希望将身份传递给服务和数据层,因为我不希望任何人直接调用服务和数据层。但我不知道该怎么做。

谁能给我看光?

OWIN FLOW(从 MVC 5)到类库

Cookie/Token只能在基于浏览器的环境中使用(这意味着它只能帮助保护presentation层。

如果要保护Presentation层(如前所述,这是类库),快速而肮脏的方法是在 Web 项目中存储私钥,每次调用服务时,验证传入的私钥

标准方法是使用 StrongNameIdentityPermission 来防止其他人引用您的 DLL。(https://msdn.microsoft.com/en-us/library/system.security.permissions.strongnameidentitypermission.aspx)

额外说明:考虑使用 obfuscator tool 来防止其他人反编译您的 DLL 代码。