Wcf 检查权限的最佳位置在哪里?
我的应用程序具有以下体系结构: Web服务层(wcf服务) 业务逻辑层 数据访问层Wcf 检查权限的最佳位置在哪里?,wcf,architecture,Wcf,Architecture,我的应用程序具有以下体系结构: Web服务层(wcf服务) 业务逻辑层 数据访问层 我应该在哪里检查许可?在Web服务或BL中?一般来说,我会在Web服务层这样做,因为安全性是一个高度关注的问题。这对于WCF特别好,因为安全设置可以使用配置更改而不是代码进行配置。因此,在WCFlayer建立安全模型非常容易。 DAL绝对不是检查安全的地方,因为它的级别太低。一个给定的web方法可能会调用许多DAL方法,而您可能会错过其中一个,或者一个DAL方法可以是允许的,也可以是不允许的,这取决于调用它的we
我应该在哪里检查许可?在Web服务或BL中?一般来说,我会在Web服务层这样做,因为安全性是一个高度关注的问题。这对于WCF特别好,因为安全设置可以使用配置更改而不是代码进行配置。因此,在WCFlayer建立安全模型非常容易。
DAL绝对不是检查安全的地方,因为它的级别太低。一个给定的web方法可能会调用许多DAL方法,而您可能会错过其中一个,或者一个DAL方法可以是允许的,也可以是不允许的,这取决于调用它的web方法。作为另一个答案,我建议您检查服务层中的访问,但这当然取决于您的需要。在许多场景中,我构建了一些服务,其中只有一些客户端被允许访问服务,当然,WCF使用来自调用方或类似方的证书来检查这些服务 然后,客户机的用户还拥有一组凭证,允许访问数据的特定部分(在BLL中检查)或服务的特定方法/端点(由WCF或BLL根据用户凭证和授权逻辑的性质检查) 但我同意DAL不应该参与其中