I have a PHP script which does a LDAP connect, bind and search. It is working very well with most of the Active Directory servers, however one of our clients has a problem. The script returns
Strong(er) authentication required.
error when trying ldap_bind.
All the searches I made directed me to two possible problems:
LDAP_OPT_PROTOCOL_VERSION
to 3
- which I do and did before, so this can not be my problem.What other causes could be for this error to happen?
It was SSL required on Active Directory server ...
A user cannot access information stored within an LDAP database or directory without first authenticating (proving they are who they say they are). The database typically contains user, group, and permission information and delivers requested information to connected applications.
LDAP v3 supports three types of authentication: anonymous, simple and SASL authentication.
You have to use ldaps://
if it's required by the Active Directory server. If it's a problem with invalid certificate authority, you can ignore the validity in windows by issuing
putenv('LDAPTLS_REQCERT=never');
in your php code. In *nix you need to edit your /etc/ldap.conf
to contain
TLS_REQCERT never
For other common problems, you can refer to my post at PHP cannot connect to LDAP Oracle Directory Server Enterprise Edition
For working example code, you can have a look at: Problems with secure bind to Active Directory using PHP
I had the same problem and it seems that there was a typo in my bind_rdn
, so make sure that the credentials are correct.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With