Tag: http authentication

rails设计httpvalidation移动设备

我正在尝试在使用Devise gem的rails app上validation我的服务器ruby的android客户端应用程序。 但我已经尝试过http身份validation,并发布了身份validation请求,服务器只响应任何给定用户名/密码200。 我已经在用户模型中设置了config.http_authenticatable = true和:database_authenticable … 我会发布我的身份validation方法,所以你们可以看看它… public static boolean authenticate(User user, String verb) throws IOException, JSONException { DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(verb); CredentialsProvider credProvider = new BasicCredentialsProvider(); credProvider.setCredentials(new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT), new UsernamePasswordCredentials(user.getMail(), user.getPassword())); httpClient.setCredentialsProvider(credProvider); List nameValuePairs = new ArrayList(); nameValuePairs.add(new BasicNameValuePair(“email”, user.getMail())); nameValuePairs.add(new BasicNameValuePair(“password”, user.getPassword())); httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); […]

Rails:访问用于HTTP Basic Auth的用户名/密码?

我正在构建一个基本API,在该用户的登录名和密码被正确发送后,可以检索用户信息。 现在我正在使用这样的东西: http://foo:bar@example.com/api/user.xml 所以,我需要做的是访问请求中发送的用户/密码( foo和bar ),但不知道如何在Rails控制器中访问该信息。 然后我通过快速的User.find检查这些变量,然后将它们设置为authenticate_or_request_with_http_basic的用户名和密码变量。 我可能会以完全错误的方式看待这个问题,但这就是我现在所处的位置。 🙂

如何在设计中使用http身份validation,并使用可选的omniauth令牌作为身份validation令牌

我们有一个rails应用程序设置,它使用devise&omniauth允许通过facebook身份validation登录。 我们还有一个移动应用程序,当前正在使用http身份validation通过传递用户名和密码或传入http身份validation令牌来登录rails应用程序。 到目前为止,这一切都很有效。 移动应用程序还具有与Facebook本身进行身份validation的能力,并直接在自己和Facebook之间接收用户facebook令牌。 我想弥合这个差距,以便如果用户通过Facebook从移动应用程序登录并拥有他们的Facebook令牌,允许将facebook令牌用作rails应用程序上的身份validation,就好像他们已经从facebook通过浏览器。 最终结果是移动应用程序可以通过以下方式登录用户: 1)用户名/密码或2)http认证令牌或3)omniauth(facebook)令牌 此外,在3)的情况下,如果用户尚未存在于rails应用程序上,则需要创建用户 – 现在已经使用浏览器端身份validation执行此操作,因此可能无需执行任何操作。 如何在设计构造中最好地实现这一目标?