在WinForm(.net 2.0和C#)中是否有人知道OpenID的最佳(或任何)教程是否有或没有RPX?
答案 0 :(得分:0)
由于WinForms是一个客户端接口,并且OpenID要求您实际运行Web服务器,您可能只想在某个地方设置一个执行OpenID身份验证的Web应用程序,然后返回某种类型的证明应用程序声明用户已登录。然后嵌入浏览器控件,以便用户可以通过此Web应用程序登录。
请注意,如果用户拥有对终端的控制权,这将不会为您带来任何安全性 - 他们可以将请求重定向到他们控制下的假服务器,破解二进制文件等等。所以我不确定这将如何最后是有用的:)
答案 1 :(得分:0)
Open ID协议不是你可以从任何地方调用的东西。它依赖于Web浏览器重定向将用户发送到提供商的登录页面并返回依赖方。
如果您考虑一下,尝试从客户端应用程序使用Open ID没有多大意义。 Open ID依赖于用户信任他们的Web浏览器,因此当他们被重定向到他们的Open ID提供者的登录页面时,他们可以查看URL并确保他们将他们的凭据输入可信方。
OTOH,用户不相信您的Winforms应用。如果您将登录页面实现为WinForm,他们将如何知道使用凭据信任您的应用程序?
在WinForms应用程序中执行此操作的唯一方法是将Web浏览器控件嵌入到您的登录表单中,但我认为与其进行通信以获取身份验证信息可能是一个挑战。
答案 2 :(得分:0)
同样不鼓励在应用程序中嵌入OpenID的其他回答者说了些什么。
但我会补充一下:你应该看看OAuth。它很可能正是您正在寻找的,实际上是为应用程序设计的,以便通过Web服务进行身份验证。
答案 3 :(得分:0)
这里有一个用于Windows窗体的OpenID认证的客户端库: