Log message #4200331

# At Username Text
# Aug 29th 2019, 09:25 challgren There any way to just bake an entity?
# Aug 29th 2019, 09:23 ndm The Authentication component isn't loaded. Also it has no `identify()` method... that's a method of the old Auth component. https://book.cakephp.org/authentication/1.1/en/index.html#authentication-component
# Aug 29th 2019, 09:19 alexdd55976 $this->Authentication is done like documentation says... which comes somehow out of the blue
# Aug 29th 2019, 09:18 alexdd55976 Line40: `$result = $this->Authentication->identify();`
# Aug 29th 2019, 09:18 alexdd55976 submitting it says that `Undefined property: UsersController::$Authentication in C:\webroot\ng\src\Controller\UsersController.php on line 40`
# Aug 29th 2019, 09:17 alexdd55976 i can enter my credentials
# Aug 29th 2019, 09:17 alexdd55976 it loads the login screen
# Aug 29th 2019, 09:16 alexdd55976 yes, thats the situation right now
# Aug 29th 2019, 09:15 ndm Guess there is no LDAP authenticator, only an LDAP identifier... which makes sense
# Aug 29th 2019, 09:15 alexdd55976 you see, i am seriously lost here
# Aug 29th 2019, 09:12 alexdd55976 ok, that changed the message to `Authenticator class `LDAP` was not found.`
# Aug 29th 2019, 09:11 ndm Just use `$service = new AuthenticationService();` instead of `$service = new AuthenticationService([ /* ... */]);`
# Aug 29th 2019, 09:10 alexdd55976 @ndm first of all... thanks. second of all... how is your recommendation be done? this whole concept is not yet opening up for me...
# Aug 29th 2019, 09:08 ndm @alexdd55976 Either remove the service constructor configuration (that will cause the authenticator/identifier to be loaded with its default configuration), or move the whole configuration in there instead of using `loadIdentifier()`/`loadAuthenticator()`
# Aug 29th 2019, 09:03 spriz Yikes cake 3.7 or 3.8 dies hard on a mistake in the FormHelper::control() if the input is `'integrations._ids.'` instead of `'integrations._ids'` :cold_sweat: :)
# Aug 29th 2019, 09:01 alexdd55976 https://gist.github.com/alexdd55/ecb5537a38a0871a07e19cee6a67f48e
# Aug 29th 2019, 09:01 alexdd55976 @ndm i do this in application.php
# Aug 29th 2019, 08:45 ndm Then the code maybe isn't actually invoked. I mean, if you were receiving that error with that code in the controller, then there had to be additional code that actually loads the identifier at middleware level. What does the stacktrace look like?
# Aug 29th 2019, 08:42 alexdd55976 going from there does sadly not change anything. same error message
# Aug 29th 2019, 08:40 ndm well, put it back and go from there, the controller is definitely the wrong place :slightly_smiling_face:
# Aug 29th 2019, 08:40 alexdd55976 no change
# Aug 29th 2019, 08:40 alexdd55976 had it there too
# Aug 29th 2019, 08:39 ndm You need to configure this at middleware level, that's where the authentication happens, once you've reached the controller, the show is already over#
# Aug 29th 2019, 08:38 alexdd55976 my code in appcontroller
# Aug 29th 2019, 08:38 slackebot2 ] ]);```
# Aug 29th 2019, 08:38 alexdd55976 ``` $service->loadIdentifier('Authentication.LDAP', [ 'fields' => [ 'username' => 'username', 'password' => 'password', ], 'host' => 'ldaps://some.stuff.com', 'port' => 636, 'bindDN' => function ($username) { return 'AD\\'.$username; }, 'options' => [ 'LDAP_OPT_PROTOCOL_VERSION' => 3
# Aug 29th 2019, 08:37 ndm I'll trust the error and assume that the option isn't actually set. How do you set it?
# Aug 29th 2019, 08:36 alexdd55976 of course i had to figure out the naming and stuff.. very disturbing
# Aug 29th 2019, 08:36 alexdd55976 @admad the combination out of ldap + autehntication makes it hard right now... plain php was pretty straight forward
# Aug 29th 2019, 08:35 alexdd55976 i would love to extend the documentation as soon as i figured out how it works
# Aug 29th 2019, 08:35 admad i am happy i have never had to deal with ldap, sounds like a PITA
# Aug 29th 2019, 08:34 alexdd55976 next issue is `Config `bindDN` is not set. `but i hhave it set, exactly like you said before
# Aug 29th 2019, 08:33 alexdd55976 i figured that out already. thanks.
# Aug 29th 2019, 08:33 ndm @alexdd55976 That means that this option only accepts a callable, which must return a "distinguished name" string, as anonymous binds (binds without a distinguished name) aren't supported.
# Aug 29th 2019, 08:33 d.binz ok will do so, thought it was me :,)
# Aug 29th 2019, 08:15 admad @d.binz submit an issue on GH
# Aug 29th 2019, 08:15 alexdd55976 the more i read the more confused i am
# Aug 29th 2019, 08:08 neon1024 Morning all :wave:
# Aug 29th 2019, 07:40 alexdd55976 > bindDN: The Distinguished Name of the user to authenticate. Must be a callable. Anonymous binds are not supported. can anyone tell me what that means?
# Aug 29th 2019, 07:33 alexdd55976 Auteh
# Aug 29th 2019, 07:29 javier.villanueva @alexdd55976 I think that the two ways are: store the information in session (only for the user) or store the information in users database table, if is a lite information I think that is better in session for most speed access...