【问题标题】:Correct tier to check user authorizion and authentication正确的层来检查用户授权和身份验证
【发布时间】:2015-12-24 01:54:15
【问题描述】:

检查用户授权和身份验证的最佳位置是什么。业务层还是应用层?

在我看来,它是应用层。它不能让用户进行用户没有足够权限的操作。

业务应该只关心业务服务并将这些服务公开给受信任的层。使用密码防止未经授权的访问。

但也许我在这里弄错了。

【问题讨论】:

  • 你回答了你自己的问题,并有充分的理由。您为什么不直接使用它,然后确定它是否适合您的应用开发风格?
  • 谢谢,事实上在我的理解中授权也是业务逻辑的一部分,为什么我们使用应用层来执行它?

标签: authentication privileges business-logic-layer tiers


【解决方案1】:

这取决于您如何构建应用程序。如果应用层和业务层是同一流程的一部分,那么只在应用层进行身份验证和授权检查就可以了。

在应用层执行它们确实可以让您禁用不允许用户使用的功能。

但是,如果您将业务层构建为单独的服务,则需要知道谁在调用它们以及这些用户可以做什么。您还需要在这些安全边界上使用 authN 和 authZ。

只有在确保没有不受信任的方可以调用该代码的情况下,受信任的子系统才能工作。

【讨论】:

    猜你喜欢
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    • 2011-03-17
    • 2020-07-04
    • 2010-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多