Using :
- Services 6.x-2.2
- Key Authentication 6.x-2.2
- Rest Server 6.x-2.0-beta3
Scenario:
- create connection via system.connect to get session id
- attempt to login user, having both "Use keys" and "Use sessid" checkboxes checked
Code on line 215 of services_keyauth.inc queries the services_key_permissions table. This query expects two string arguments, but the second one (which is supposed to be the method name), $method_name, is actually an array, not a string. The necessary string is in $method_name['method'].
I am not 100% sure if the issue is that the wrong variable is being used within services_keyauth.inc, or the wrong data is being passed to this function (_services_keyauth_authenticate_call()) somewhere up the backtrace ladder, but something is definitely wrong. Changing $method_name to $method_name['method'] allows me to successfully log the user in.
Comments
Comment #1
marcingy commentedMove this to the rest server queue as nothing has changed in keyauth recently so I'm assuming something has changed in the rest server.