奇怪的是,这个简单的解决方案还没有实现,或者我不能谷歌它; p)(我在过去5天尝试)。
我的要求:
- 从URL上调用Angular App(withCredentials = true)以查看它是否为Windows用户(挑战NTLM )。 (我可以根据访问它的URL用户来配置它)。如果它是一个有效的Windows用户,我在数据库中找到它们,我将返回Bearer Token。
- 如果Above call返回Unauthorized(401),我会在AngularJS(1.6)客户端向用户显示登录表单。用户提供非Windows用户名和密码,当用户点击登录时,从角度服务转到另一个URL(用于获取Bearer Token - 标准OWIN内容)。
醇>
**在上述任何情况下,我都会将Bearer Token存储在我的客户端中以进行任何进一步的API交互。
- 我没有使用ASP.NET身份,但我有自己的DAL来验证来自DB的用户。
- 我将拥有自己的自定义Authorize(继承)属性(仅检查Bearer Token)。
- 我不希望用户在我的表单上输入Windows登录名并从Active Directory对其进行身份验证。
- 我不希望Windows用户点击任何单独的按钮进行登录。 (他们应该只是无缝登录 - 来自浏览器的提示,要求他们登录窗口)
我已经看过几百个帖子,但我无处可以看到确切的需求。混合身份验证需要基于Cookie或单独的MVC实现。 (很多混乱)
已经提到:
有人可以帮忙吗?
明天晚上我可能不得不放弃: - (