【发布时间】:2015-12-02 00:31:09
【问题描述】:
我正在使用 Ping 通过 WIF 对 Angular/.NET Web API 堆栈中的用户进行身份验证。 WIF 开箱即用,只需在 MVC 或 Web 窗体应用程序的 web.config 中放入正确的配置即可。它拦截对请求的页面/控制器的任何调用,如果没有可用的令牌,则重定向到 Ping 进行身份验证。
第一季度
在我的堆栈中,无法作为此应用程序的 Web 部分工作的是 html/Angular。我可以将 Ping 配置放入 web api 配置文件中,然后当 angular 调用 api 时,WIF 将拦截它并(希望)将用户重定向到 ping。但不确定 web api 是否可以进行 http 重定向。此外,可能不执行 api 调用的页面无需身份验证即可正常加载...
第二季度
假设问题 1 已解决并且用户通过 ping 验证自己,ping 需要将该断言发送到 web api 层而不是 html/Angular,因为它是一个 POST 响应。这很好,web api 将检查 Claims 对象以获取用户信息。之后,我们需要将用户重定向到他试图访问的页面,现在,应用程序将不再知道该页面。还有如何从web api实现http重定向。
第三季度
有没有办法让 Ping 发布到 html/angular 页面?
感谢您的帮助...
【问题讨论】:
-
您是否在使用某种集成工具包?
-
是的,我正在使用 WIF .net 集成。我正在按照这里的步骤操作:msdn.microsoft.com/en-us/library/hh987037(v=vs.110).aspx
-
PingFederate 可以充当与 WS-Trust 兼容的 STS。您的应用程序收集用户名/密码,并在格式正确的 WS-Trust Authn 消息中将它们转发到 PF,然后您将返回 WS-Trust 断言。您可以在此处查看 PingFed 的 WS-Trust 配置:documentation.pingidentity.com/pingfederate/pf80/…
标签: angularjs asp.net-web-api wif pingfederate