[wp-trac] [WordPress Trac] #40595: wp_authenticate_username_password() should respect WP_Error object generated by higher priorities
WordPress Trac
noreply at wordpress.org
Fri Apr 28 13:46:55 UTC 2017
#40595: wp_authenticate_username_password() should respect WP_Error object
generated by higher priorities
------------------------------------+-----------------------------
Reporter: gilzow | Owner:
Type: defect (bug) | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Login and Registration | Version: 4.7.4
Severity: normal | Keywords:
Focuses: |
------------------------------------+-----------------------------
If I've read through [https://core.trac.wordpress.org/ticket/19714] but
believe this issue should be reopened. This issue affects anyone who
needs to alter the normal authentication process by hooking into the
authenticate filter at a high priority. Functions in the process flow
should respect a WP_Error object if that is what it is handed, including
wp_authenticate_username_password().
'''Expected Behavior'''
function hooks ''authenticate'' filter, assigns priority 10. Function
invalidates authentication attempt and returns a WP_Error object.
Authentication should fail and error message displayed to user.
'''Current Behavior'''
Function hooks ''authenticate'' filter, assigns priority 10. Function
invalidates authentication attempt and returns a WP_Error object.
wp_authenticate_username_password() ignores WP_Error object, attempts
authentication and returns its own error message, or goes ahead and
authenticates the user.
Functions could assign a priority less than 20 (i.e. 30), but then when
will be required to decipher error codes and/or the user object to then
determine if authentication should continue, '''after''' an authentication
attempt has already been processed by
wp_authenticate_username_password(), even if no authentication should have
been attempted. In additon, if wp_authenticate_username_password() is not
going to respect WP_Errors from higher priorities, why not assign it a
priority of 1 and make it the very first item in the authentication
process?
--
Ticket URL: <https://core.trac.wordpress.org/ticket/40595>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list