I'm developing a backend for an Android application using Drupal, and I've run into somewhat of a weird problem. I'm using Services and Views for the input and output of various content types. In order to make requests to the Services module, the users need to authenticate using HTTP Basic authentication.
When users create a new account in my app, I use the Services endpoint to create the new account using data that the user enters himself. However, the password that gets send to the endpoint is not the same as the password that gets saved. This results in users not being able to authenticate other requests using HTTP Basic Auth with the password they set, as Drupal does not recognize the password. However, logging in using the Services endpoint DOES work with the set password.
When changing this user's password manually in the Administration panel to the value they set in the app, the HTTP Basic auth requests suddenly work, and they can still login using the Services module as well.
What's going wrong here, and even better, what can I do to remedy this problem? I'm not looking forward to changing every user's password manually so they can use the rest of my backend, and dropping the HTTP Basic Authentication is not an option either.
Further investigation has shown that it's also not possible to login to the Drupal frontend using an account created by the Services endpoint, unless you change the password manually.