如何从桌面应用程序登录到 OWIN Web Api 2 WS-Federation 服务器

Posted

技术标签:

【中文标题】如何从桌面应用程序登录到 OWIN Web Api 2 WS-Federation 服务器【英文标题】:How to login to OWIN Web Api 2 WS-Federation server from desktop app 【发布时间】:2014-05-30 12:09:39 【问题描述】:

我使用 OWIN 组件(beta 3.0)进行身份验证创建了一个简单的 MVC5 / Web Api 2 网站。它正在使用 WsFederationAuthentication 并成功指向我们的 STS...当我们运行网站时,重定向工作并显示正确的字段(用户名、密码和一个额外的必填字段),然后我们正确返回到我们的网页并显示为已登录。

我现在需要做的是从桌面应用程序启用此登录行为(我的恰好是 Excel 插件,但控制台应用程序中的示例就可以了)。我一直在寻找来自桌面应用程序的 Federated Web Api 2 身份验证的良好示例,但我真正找到的唯一示例是基本身份验证或社交媒体 OAuth2 示例,看来。

【问题讨论】:

【参考方案1】:

Here 是一篇博客文章,解释了如何做到这一点,但由于身份验证本质上是基于 cookie 的,因此您必须跳一些圈子才能将此 cookie 放入您的胖客户端。

不过,这有点小题大做。您似乎正在尝试使用为具有厚客户端的 Web 设计的身份验证机制。也许如果您提供有关您正在构建的应用程序的更多信息,它会有所帮助。

【讨论】:

谢谢...这对我目前的需求很有效。

以上是关于如何从桌面应用程序登录到 OWIN Web Api 2 WS-Federation 服务器的主要内容,如果未能解决你的问题,请参考以下文章

Web Api OWIN - 如何在每个请求上验证令牌

如何在 Web API 的 Owin 身份验证的 Provider 类中获取 Windows 登录?

Asp.Net Web API 2第十课——使用OWIN自承载Web API

支持 https 的 Owin 自托管控制台应用程序(无 Web api,无 SignalR)

无法使用 Owin 退出 Web Api

ASP.NET (OWIN) Identity:如何从 Web API 控制器获取 UserID?