示例项目使用Kerberos,Web API和MVC

tlb*_*erd 9 c# asp.net-mvc

是否有一个完整的Visual Studio解决方案,其中包含一个带有使用Kerberos进行身份验证的MVC应用程序的项目.这反过来调用ASP.Net Web API服务项目(在同一个解决方案中),在服务调用期间(GetAsync或PostAsync)将凭据委托给服务?

我遇到了凭据的特定问题,其中Web API项目中的模拟用户是作为运行MVC应用程序的服务帐户而不是发出请求的用户.我找到了修复特定问题的特定行或代码的示例,但我真的在寻找能够将所有内容整合在一起的单一解决方案.

我见过Pro ASP.NET Web API安全和ASP.Net Web-API安全等资源,但没有一个包含完整的解决方案,展示了如何为Windows Authenticaiton,特别是Kerberos实现授权方案.

我知道这可能有点超出了所提出的正常问题,但我更愿意使用完整的解决方案,而不是在可能的情况下发布特定的代码问题.

bmm*_*m6o 2

当 MVC Web 应用程序运行初始查询时,用户的身份将附加到处理请求的线程。如果进行异步 Web 服务调用,远程调用将由不附加用户身份的线程池线程进行。您可以尝试传递对当前身份的引用(来自HttpContext)并模拟,但似乎需要避免出现竞争条件。

当然,这是假设远程调用在同步进行时有效。你已经走到这一步了吗?