View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|14257||Bug reports||[All Projects] Authentication||public||2018-11-15 10:00||2019-04-12 10:33|
|Target Version||Fixed in Version|
|Summary||14257: Automatic profile creation process has a bug|
The process of automatic profile creation has a bug.
When a new account is created in Authwebserver.php, newUserSession()
AuthwebServer->newUserSession() gets the default values for the new user profile (either by hook or the config entry).
And generates a PHP warning:
The user is created successfully though, and reloading the page makes the error message go away, but of course this is unsettling for the user.
|Steps To Reproduce|
Enable the Authwebserver plugin and configure Limesurvey with a "hook_get_auth_webserver_profile" funciton or auth_webserver_autocreate_user and auth_webserver_autocreate_profile.
|Tags||No tags attached.|
|Complete LimeSurvey version number (& build)||3.14.8+180829|
|I will donate to the project if issue is resolved||No|
|Database & DB-Version||5.6.41|
|Server OS (if known)||Linux|
|Webserver software & version (if known)||Apache 2.4|
If i don't make error : in LDAP : we reload user after creation : https://github.com/LimeSurvey/LimeSurvey/blob/d6363641acf60725994ac3f8dd308469fe1377b3/application/core/plugins/AuthLDAP/AuthLDAP.php#L556
Maybe same patch can be done
It didn't help.
Just to clarify, the problem is that $identity is hasn't been set in AuthPluginBase->setAuthSuccess() when it reaches this line:
I added this to the beginning of function setAuthSuccess:
And I get this:
Eg: identity is not set.
Oh, i think i get the solution : https://github.com/LimeSurvey/LimeSurvey/commit/a5a05d59efb587120e0501792036bba51a7b4523#diff-8595e8f022d653436a397a3e2d218cc9
(this one take me 2 days to find the best solution … 2 days for one line …)
I'm not sure what you are proposing here.
I tried adding:
At the beginning of Authwebserver->newUserSession() like in the commit you referred to, it didn't work.
When you put error_log('setAuthSccess event: ' . print_r($event, 1));
I think you don't get setAuthSuccess but another event (surely/maybe Permission event) then some event replace current somewhere :)
That is possible, I'm not familiar with this code, I'm just trying to fix the problem as soon as possible.
Anyway, have you reproduced this bug? It's very easy, this should happen to anyone that is using the Authwebserver plugin, I'm not doing anything special here.
I didn't search to reproduce the bug … 1st one already take me 2 days to fix without any client …
|2018-11-15 10:00||lameventanas||New Issue|
|2018-11-15 13:03||DenisChenu||Note Added: 49666|
|2018-11-16 03:41||lameventanas||Note Added: 49673|
|2018-11-16 08:43||DenisChenu||Note Added: 49674|
|2018-11-19 01:15||lameventanas||Note Added: 49689|
|2018-11-19 10:44||DenisChenu||Note Added: 49690|
|2018-11-19 11:17||lameventanas||Note Added: 49692|
|2018-11-19 11:23||DenisChenu||Note Added: 49693|
|2019-04-12 10:33||LouisGac||Assigned To||=> LouisGac|
|2019-04-12 10:33||LouisGac||Status||new => assigned|