Skip to main content
svnfightsvn
Participating Frequently
December 4, 2023
Question

CF administrator ldap authentication

  • December 4, 2023
  • 1 reply
  • 602 views

We recently installed CF 2023 and want to authenticate users via LDAP for access to the CFIDE administrator console.  However, verifying the LDAP connection always results in an error:

The CONFIG parameter to the verifyConnection function is required but was not passed in. The specific sequence of files included or processed is: C:\ColdFusion2023\cfusion\wwwroot\CFIDE\administrator\security\ldapServices.cfc

 

This runs as a AJAX request so it appears that the Verify Connection button does nothing.  But when you open the developer console, you can see that the request has failed.  Opening in another browser window shows this.

 

Any ideas?

 

    This topic has been closed for replies.

    1 reply

    svnfightsvn
    Participating Frequently
    December 4, 2023

    well - I found the problem.  Our config has the "Preserve case for Struct keys for Serialization" option checked.  Because of this, the JSON coming back from the first AJAX request (to adminpasswordCFCPath + '?method=getAdminLdapConfiguration') had its keys in lowercase.  However, the Javascript in the page was checking for keys in uppercase.  This caused the resulting next AJAX request (to adminpasswordCFCPath + '?method=verifyConnection') to basically throw an error which was caught with an empty catch block, resulting in nothing happening.

    Charlie Arehart
    Community Expert
    Community Expert
    December 4, 2023

    Good sleuthing there. If it may help, there should be a workaround to changing the Admin setting (which of course affects all code on the server). Note that you can also control this at the application level, such as in an application.cfc in cfscript as:

     

    this.serialization={preserveCaseForStructKey: true};

     

    Or in application.cfm as:

     

    <cfapplication preserveCaseForStructKey="true">

     

    Of course, you can instead set the admin value to true and use code like this to set app-level settings to false, if more apps need it set to true than to false. Just know you have options. 🙂

     

    This issue you've found does seem to be a bug worth your reporting (at tracker.adobe.com). If you do file one, feel free to mention both workarounds, if you confirm my other works well for you. And then please share the bug id here so that I and others might know of it and add a vote for it.

    /Charlie (troubleshooter, carehart. org)
    svnfightsvn
    Participating Frequently
    December 4, 2023

    Thanks, but this is a problem in the CFIDE/administrator console.  I cannot make any change (other than turning off the "Preserve case for Struct keys for Serialization" setting) that will fix this.  Definitely no code change will fix this.