[Tickets #14547] PostgresSQL Backend mixup configuration of SQL auth and SQL backend

noreply at bugs.horde.org noreply at bugs.horde.org
Thu Dec 22 15:33:37 UTC 2016


BITTE NICHT AUF DIESE NACHRICHT ANTWORTEN. NACHRICHTEN AN DIESE  
E-MAIL-ADRESSE WERDEN NICHT GELESEN.

Ticket-URL: https://bugs.horde.org/ticket/14547
------------------------------------------------------------------------------
  Ticket           | 14547
  Erstellt Von     | torben at dannhauer.info
  Zusammenfassung  | PostgresSQL Backend mixup configuration of SQL auth and
                   | SQL backend
  Warteschlange    | Horde Framework Packages
  Typ              | Bug
  Status           | Unconfirmed
  Priorität        | 3. High
  Milestone        |
  Patch            |
  Zuständige       |
------------------------------------------------------------------------------


torben at dannhauer.info (2016-12-22 15:33) hat geschrieben:

== Problematic behaviour ==
When using Horde with PHP7, it mixes pp the different SQL  
configurations in conf.php.
It is not possible to use a local PostgreSQL server as SQL default  
backend via unix socket, and a remote one for authentication via tcp.  
It always adds the socket value also to the auth backend and thus  
failes to connect.
It works as expected when using tcp for both servers.

Example (failing) conf.php:

$conf['sql']['username'] = 'horde-local';
$conf['sql']['password'] = 'LOCAL-PASSWORD';
$conf['sql']['socket'] = '/var/run/postgresql/';
$conf['sql']['protocol'] = 'unix';
$conf['sql']['database'] = 'horde';
$conf['sql']['charset'] = 'utf-8';
$conf['sql']['splitread'] = false;
$conf['sql']['phptype'] = 'pgsql';
$conf['nosql']['phptype'] = false;
$conf['ldap']['useldap'] = false;
$conf['auth']['admins'] = array( 'username at domain.tld', 'Administrator');
$conf['auth']['checkip'] = true;
$conf['auth']['checkbrowser'] = true;
$conf['auth']['resetpassword'] = false;
$conf['auth']['alternate_login'] = false;
$conf['auth']['redirect_on_logout'] = false;
$conf['auth']['list_users'] = 'input';
$conf['auth']['driver'] = 'sql';
$conf['auth']['params']['phptype'] = 'pgsql';
$conf['auth']['params']['username'] = 'horde-remote-for-auth';
$conf['auth']['params']['password'] = 'REMOTE-PASSWORD';
$conf['auth']['params']['hostspec'] = 'remote.host.tld';
$conf['auth']['params']['protocol'] = 'tcp';
$conf['auth']['params']['database'] = 'userdb';
$conf['auth']['params']['charset'] = 'utf-8';
$conf['auth']['params']['splitread'] = false;
$conf['auth']['params']['driverconfig'] = 'custom';
$conf['auth']['params']['table'] = 'users';
$conf['auth']['params']['username_field'] = 'email';
$conf['auth']['params']['password_field'] = 'password';
$conf['auth']['params']['encryption'] = 'crypt-sha512';
$conf['auth']['params']['show_encryption'] = false;
$conf['auth']['driver'] = 'sql';
$conf['auth']['params']['count_bad_logins'] = false;
$conf['auth']['params']['login_block'] = false;
$conf['auth']['params']['login_block_count'] = 5;
$conf['auth']['params']['login_block_time'] = 5;



Using instead
#$conf['sql']['socket'] = '/var/run/postgresql/';
#$conf['sql']['protocol'] = 'unix';
$conf['sql']['protocol'] = 'tcp';
#$conf['sql']['hostspec'] = 'localhost';

it works as expected.


horde is used with current stable releases installed via pear.

== Expected behaviour ==
Horde should seperate SQL and auth SQL fully, to be able to mix up SQL  
setups arbitrary.





More information about the bugs mailing list