我需要设计并实现一个Intranet网站,该网站将对域使用Windows身份验证。该网站需要提供存储在SQL Server数据库中的一些数据。该数据库还使用Windows身份验证。 Web应用程序启动时需要做的第一件事是调用一些存储过程,该存储过程将返回用户所属的组以及所有后续存储过程调用所需的某种类型的会话令牌。为了分离关注点,我正在考虑编写一个RESTful Web API,它将成为数据库的接口,并将提供所有POCO类,这些类最终将成为MVC Web应用程序中所有视图的模型。 RESTful API必须托管在服务中,当它调用数据库存储过程时,它将使用运行它的帐户执行此操作。因此,与在Web应用程序中发起调用的当前用户相关的信息将丢失。这有解决方案吗?或者我通过为数据访问层引入RESTful API来过度杀死设计?我现在不记得了,但我不相信有一种方法可以告诉RESTful API使用来自客户端的Windows凭据。对于Web应用程序,Windows身份验证是一个坏主意吗?在我的情况下,这是一个客户端要求,旨在通过删除我通常用于应用程序身份验证的额外登录步骤来简化我需要开发的Web门户的使用。