{"action":"created","issue":{"url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/issues/121","repository_url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle","labels_url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/issues/121/labels{/name}","comments_url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/issues/121/comments","events_url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/issues/121/events","html_url":"https://github.com/Maks3w/FR3DLdapBundle/pull/121","id":135748623,"number":121,"title":"LDAP create user only if needed and multiple auth provider","user":{"login":"vbeauvivre","id":5468590,"avatar_url":"https://avatars.githubusercontent.com/u/5468590?v=3","gravatar_id":"","url":"https://api.github.com/users/vbeauvivre","html_url":"https://github.com/vbeauvivre","followers_url":"https://api.github.com/users/vbeauvivre/followers","following_url":"https://api.github.com/users/vbeauvivre/following{/other_user}","gists_url":"https://api.github.com/users/vbeauvivre/gists{/gist_id}","starred_url":"https://api.github.com/users/vbeauvivre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vbeauvivre/subscriptions","organizations_url":"https://api.github.com/users/vbeauvivre/orgs","repos_url":"https://api.github.com/users/vbeauvivre/repos","events_url":"https://api.github.com/users/vbeauvivre/events{/privacy}","received_events_url":"https://api.github.com/users/vbeauvivre/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-02-23T14:17:04Z","updated_at":"2016-03-01T17:05:04Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/pulls/121","html_url":"https://github.com/Maks3w/FR3DLdapBundle/pull/121","diff_url":"https://github.com/Maks3w/FR3DLdapBundle/pull/121.diff","patch_url":"https://github.com/Maks3w/FR3DLdapBundle/pull/121.patch"},"body":"- In our case, we use many auth provider. When checking users that are not from LDAP, an exception occured «malfromed DN» in Zend’s LDAP client. To avoid it, we catch those errors and throw a simple InvalidCredentialException to switch to others authentication providers.\r\n- It seems that the LegacyProvider allways create a new user, but never search for an existing with the same DN. So I added this feature : search the user with user provider before \r\n\r\nI made those changes through class overiding in my application successfully, so I just wante to share this work.\r\n\r\nThanks for sharing this bundle."},"comment":{"url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/issues/comments/190816660","html_url":"https://github.com/Maks3w/FR3DLdapBundle/pull/121#issuecomment-190816660","issue_url":"https://api.github.com/repos/Maks3w/FR3DLdapBundle/issues/121","id":190816660,"user":{"login":"Maks3w","id":1301698,"avatar_url":"https://avatars.githubusercontent.com/u/1301698?v=3","gravatar_id":"","url":"https://api.github.com/users/Maks3w","html_url":"https://github.com/Maks3w","followers_url":"https://api.github.com/users/Maks3w/followers","following_url":"https://api.github.com/users/Maks3w/following{/other_user}","gists_url":"https://api.github.com/users/Maks3w/gists{/gist_id}","starred_url":"https://api.github.com/users/Maks3w/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Maks3w/subscriptions","organizations_url":"https://api.github.com/users/Maks3w/orgs","repos_url":"https://api.github.com/users/Maks3w/repos","events_url":"https://api.github.com/users/Maks3w/events{/privacy}","received_events_url":"https://api.github.com/users/Maks3w/received_events","type":"User","site_admin":false},"created_at":"2016-03-01T17:05:04Z","updated_at":"2016-03-01T17:05:04Z","body":"The problem is there is no interfaces for setters, hydrators offer a bridge so you can set the data from LDAP in the user object.\r\n\r\nLegacyHydrator has an opiniated way of use many setters and reduce the complexity of migrate from previous versions of this bundle."}}