I struggled with this very problem for some time. Had put up the question on the forum as well with no concrete help. Went ahead and modified the auth.php file to allow all users acess via webervices. Below is the code (This should work on moodle 1.9.x, am not sure if there are any structural changes in 2.x hence can't comment). I am not sure if making this change conflicts with any of moodle/Oktech licensing, Partick or other gurus can help clarify.
Directory: wspp/auth/webservice
Filename: auth.php
Code Change (replace the user_login_webservice method as below. If you can see, all I have done is to remove the check for authType, that should allow all types of users to login with Web Service plugin. I haven't see any side effects as yet, but there could be some):
function user_login_webservice($username, $password) {
global $CFG, $DB;
// special web service login
// if ($user = $DB->get_record('user', array('username'=>$username, 'mnethostid'=>$CFG->mnet_localhost_id))) {
// if ($user = get_record('user','username', $username,'mnethostid',$CFG->mnet_localhost_id)) {
/*if ($user = get_complete_user_data('username', $username))
{
if ($user->auth == $this->authtype)
return validate_internal_user_password($user, $password);
}*/
if ($user = get_complete_user_data('username', $username))
return validate_internal_user_password($user, $password);
return false;
}