diff --git a/resources/user_resource.inc b/resources/user_resource.inc
index a0f4b33..95dbdd9 100644
--- a/resources/user_resource.inc
+++ b/resources/user_resource.inc
@@ -373,7 +373,14 @@ function _user_resource_login($username, $password) {
     return services_error(t('The username %name has not been activated or is blocked.', array('%name' => $username)), 403);
   }
 
-  $uid = user_authenticate($username, $password);
+  if ($local_account = user_load_by_name($username)) {
+    $uid = user_authenticate($local_account->name, $password);
+  }
+  else if( valid_email_address($username) ){
+    if ($local_account = user_load_by_mail($username)) {
+      $uid = user_authenticate($local_account->name, $password);
+    }
+  }
 
   if ($uid) {
     $user = user_load($uid);
