2015-09-26 96 views
0

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

我认为这是应用程序层。它不能让用户进行用户没有足够权限的操作。

业务只应关注业务服务并将这些服务暴露给可信级别。使用密码来防止未经授权的访问。

但也许我在这里得到错误。

+1

你回答了你自己的问题,有很好的推理。为什么你不会只用它,然后工作,如果它适合**你的**风格的应用程序开发? –

+0

谢谢,事实是,在我的理解授权是某种程度上也是商业逻辑的一部分,为什么我们使用应用程序层来执行它? – GionJh

回答

1

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

在应用程序层中执行它们确实允许您禁用用户不允许使用的功能。但是,如果您将业务层设计为单独的服务,则需要知道谁在呼叫他们以及这些用户可以执行什么操作。您还需要在这些安全边界处使用authN和authZ。

受信任的子系统只有在确定没有不受信任方可以调用该代码时才有效。