我正在筹划一个新的网络项目。客户端将使用常规Web浏览器进行连接,如果是常规的支持Java的手机,则使用j2me客户端。我真的想使用OpenID身份验证。在常规Web浏览器的情况下,事情非常简单。但是,我真的不确定已安装的应用程序(例如安装在移动设备上的j2me客户端) - 通过在特定OpenID提供程序的网页上输入用户名/密码来执行常规OpenID身份验证 - 这是一个非常大的限制:)
有没有人应对这种情况?是否可以为从移动j2me客户端使用OpenID的站点创建身份验证机制?
目前,我想到一个解决方案,希望从手机连接的用户在自己进行身份验证后(从常规浏览器身份验证)从服务器网站下载必要的j2me应用程序。移动客户端应用程序可以在服务器上动态组装,嵌入的SSL证书与特定登录的OpenID用户相关联。之后,j2me客户端可以在不输入任何用户名/密码的情况下对服务器进行身份验证。将要存储在服务器上的数据并不敏感 - 考虑到手机盗窃等情况。
有人能提出更好的解决方案吗?
答案 0 :(得分:3)
您正在做的最佳解决方案是将OAuth与OpenID结合使用。你在RP上使用OpenID很好。但对于需要访问该网站的已安装应用程序,他们应该使用OAuth获得授权。流程将如下工作: