<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    John,<br>
    <br>
    <div class="moz-cite-prefix">On 22/07/2020 17:59, John Thurston via
      ZendTo wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:WM!dad1407ddef8dae6dd3532dd5fd68662f4f817d8edbd320c4eb4a9a04ca173a7785714e3a8db12f33024d723ec3f6584!@mx.jul.es">But
      I _am_ using the LDAP authenticator, and I have those values
      commented out because I don't want them.
      <br>
    </blockquote>
    But if you are using the LDAP authenticator, surely you have to
    define those values for the authenticator to work at all.<br>
    I don't quite see how you are using the LDAP authenticator
    successfully with no settings for it whatsoever.<br>
    <br>
    Jules.<br>
    <br>
    <br>
    <blockquote type="cite"
cite="mid:WM!dad1407ddef8dae6dd3532dd5fd68662f4f817d8edbd320c4eb4a9a04ca173a7785714e3a8db12f33024d723ec3f6584!@mx.jul.es"><br>
      The way I see it, the application defines those values as 'not
      required' while the upgrade-script defines those values as 'must
      be present'. My business case is caught in the crack between those
      two parsing rules. It looks like I have options:
      <br>
      <br>
      A) create and maintain a service account in my directory so these
      values can be defined and the upgrade script will work as expected
      <br>
      <br>
      B) switch to AD authentication and also implement option (A)
      <br>
      <br>
      C) write my own post-upgrade script to re-comment these values
      <br>
      <br>
      I'm definitely leaning towards (C) as that is simple, direct, and
      easy to add to our in-house documentation.
      <br>
      <br>
      --
      <br>
      Do things because you should, not just because you can.
      <br>
      <br>
      John Thurston    907-465-8591
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:John.Thurston@alaska.gov">John.Thurston@alaska.gov</a>
      <br>
      Department of Administration
      <br>
      State of Alaska
      <br>
      <br>
      On 7/22/2020 5:58 AM, Jules wrote:
      <br>
      <blockquote type="cite">John,
        <br>
        <br>
        The upgrade script doesn't know much about comments, except that
        they are the block of lines immediately before a setting in
        preferences.php (and zendto.conf, with a different syntax).
        <br>
        It certainly can't actually parse them to see what you may have
        commented out.
        <br>
        <br>
        The upgrade script also has no prior knowledge of what settings
        should be there, and what shouldn't. There is no "list of all
        the possible settings". It learns all that for itself, by
        reading your old preferences.php and the newly supplied one.
        <br>
        <br>
        What's happening is that you are commenting out the only
        definition of 'authLDAPStartTLS', for example, so it thinks this
        is a new setting that has just appeared in the very latest
        preferences.php (and it wasn't set in your previous one), so it
        adds it as a new setting.
        <br>
        <br>
        But the 1 and only setting for (for example) 'authLDAPStartTLS'
        won't have any effect unless you also have set
        <br>
             'authenticator' => 'LDAP',
        <br>
        so I don't quite see what you achieve by commenting them out. It
        will only use the authenticator settings for your chosen
        authenticator. All the others will simply have no effect.
        <br>
        <br>
        Sorry about the 'authLDAP' naming clash between the LDAP and AD
        authenticators, that's for historic reasons from when I first
        forked the project from udel's "Dropbox" a long time ago in a
        galaxy far away. And yes, they sadly called it Dropbox, nothing
        to do with the "other" Dropbox. So I can't change that now.
        <br>
        The difference is that all the AD settings end with a number
        (1,2,3) whereas the LDAP settings don't.
        <br>
        <br>
        Leaving the LDAP settings in place will have no effect *at all*
        on the AD authenticator.
        <br>
        <br>
        Does that help explain the situation?
        <br>
        <br>
        Cheers,
        <br>
        Jules.
        <br>
        <br>
        On 21/07/2020 00:00, John Thurston via ZendTo wrote:
        <br>
        <blockquote type="cite">Is there some way for me to designate
          some values in preferences.php as "Just ignore me, please.
          Don't try to correct this." ?
          <br>
          <br>
          With each update, the upgrade script detects my commented out
          values and does me the service of re-enabling them and
          supplying default values. I then have to go diff the files,
          confirm nothing has actually changed, and re-comment the
          attributes I don't want.
          <br>
          <br>
          >   //'authLDAPStartTLS'      => false,
          <br>
          >   //'authLDAPBindDn'        =>
          'o=MyOrganization,uid=MyUser',
          <br>
          >   //'authLDAPBindPass'      => 'SecretPassword',
          <br>
          >   //'authLDAPOrganization'  => 'My Organization',
          <br>
          >   //'authLDAPUsernameAttr'  => 'uid',
          <br>
          >   //'authLDAPEmailAttr'     => 'mail',
          <br>
          <br>
          I tried setting each of these to null strings, hoping that
          might trigger the code to ignore the values and also let the
          upgrade script leave them unchanged. Bzzzt. I couldn't
          authenticate.
          <br>
          <br>
          I understand the difficulty in trying to detect what a
          customer is trying to do, and how to distinguish "new values"
          from "intentionally absent values". It is frustrating, though,
          to have to repeat the same manual steps, potentially missing
          something, with every update.
          <br>
          <br>
          Maybe there could be a magic string to denote a line not just
          as a comment but as a "leave me as a comment" line.
          <br>
          Maybe triple-slash
          <br>
          Maybe //!/
          <br>
          <br>
          Or is there already some way to do this that I haven't figured
          out?
          <br>
          <br>
          <br>
        </blockquote>
        <br>
        Jules
        <br>
        <br>
        -- <br>
        Julian Field MEng CEng CITP MBCS MIEEE MACM
        <br>
        <br>
        'Ensanguining the skies
        <br>
          How heavily it dies
        <br>
          Into the west away;
        <br>
          Past touch and sight and sound
        <br>
          Not further to be found,
        <br>
          How hopeless under ground
        <br>
            Falls the remorseful day.' - A.E.Houseman
        <br>
        <br>
        <a class="moz-txt-link-abbreviated" href="http://www.Zend.To">www.Zend.To</a>
        <br>
        Twitter: @JulesFM
        <br>
        <br>
      </blockquote>
      <br>
      _______________________________________________
      <br>
      ZendTo mailing list
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:ZendTo@zend.to">ZendTo@zend.to</a>
      <br>
      <a class="moz-txt-link-freetext" href="http://jul.es/mailman/listinfo/zendto">http://jul.es/mailman/listinfo/zendto</a>
      <br>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">Jules

-- 
Julian Field MEng CEng CITP MBCS MIEEE MACM

'When I read Shakespeare I am struck with wonder
 That such trivial people should muse and thunder
 In such lovely language.' - D.H. Lawrence

<a class="moz-txt-link-abbreviated" href="http://www.Zend.To">www.Zend.To</a>
Twitter: @JulesFM
</pre>
  </body>
</html>