Tentando conectar o PostrgreSQL com o meu servidor para criar a autenticação do SQL. para SOGo

1

Eu preciso criar a autenticação do SQL para minha instalação do SOGo, e acredito ter configurado tudo de acordo com a documentação. Eles querem que eu faça o seguinte:

Primeiro, eles querem que eu crie o usuário do banco de dados sogo e o esquema do db (aqui está a seção: link ) com estes comandos:

su - postgres
createuser --no-superuser --no-createdb --no-createrole \
    --encrypted --pwprompt sogo
(specify “sogo” as password)
createdb -O sogo sogo

Em seguida, adicione a seguinte linha ao arquivo postgresql pg_hba.conf :

host   sogo   sogo     127.0.0.1/32     md5

E finalmente modifique as seguintes linhas no sogo.conf:

SOGoProfileURL =
    "postgresql://sogo:sogo@localhost:5432/sogo/sogo_user_profile";
OCSFolderInfoURL =
    "postgresql://sogo:sogo@localhost:5432/sogo/sogo_folder_info";
OCSSessionsFolderURL =
    "postgresql://sogo:sogo@localhost:5432/sogo/sogo_sessions_folder";

Então, para a autenticação atual, preciso ajustar os SOGoUserSources em seguida:

SOGoUserSources =
(
  {
    type = sql;
    id = directory;
    viewURL = "postgresql://sogo:[email protected]:5432/sogo/sogo_view";
    canAuthenticate = YES;
    isAddressBook = YES;
    userPasswordAlgorithm = md5;
  }
);

que eu também fiz, mas infelizmente, não sei como criar o banco de dados e a tabela de usuários, para trabalhar com essa autenticação. processo.

Eu criei um banco de dados sogo com o sogo sendo também o proprietário, aqui está minha lista de bancos de dados:

 Name     |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges
--------------+----------+----------+-------------+-------------+-----------------------
 postgres     | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 sogo         | sogo     | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 sogocreatedb | sogo     | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 template0    | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
              |          |          |             |             | postgres=CTc/postgres
 template1    | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
              |          |          |             |             | postgres=CTc/postgres

Em seguida, criei uma tabela sogo_view , pois achei que era isso que eu deveria fazer. Aqui está uma lista de relações:

List of relations
 Schema |   Name    | Type  | Owner
--------+-----------+-------+-------
 public | sogo_view | table | sogo

Finalmente, criei um usuário na tabela:

 c_uid  | c_name  |  c_password   |  c_cn   |          mail
---------+---------+---------------+---------+-------------------------
 Luciano | Luciano | Something    | Luciano | [email protected]

Mas a conexão ainda não está acontecendo, alguém tem alguma experiência com isso?

    
por Jousi 30.12.2016 / 12:45

2 respostas

2

Na sua coluna de senha, você deve definir o MD5 da sua senha. Insira um registro como este:

INSERT INTO sogo_view VALUES (
  'Luciano', 'Luciano', MD5('Something'),
  'Luciano', '[email protected]');

No wiki debian, há uma instrução de como configurar o banco de dados e inserir logins. É para o mysql, mas também funciona para postgres. Apenas certifique-se de definir o db e o dono da tabela como sogo , o que aparentemente você fez de qualquer maneira.

No exemplo do debian, a tabela do usuário é chamada sogo_users em vez de sogo_view . Então, mude o nome para sogo_view no exemplo abaixo ou altere sua configuração SOGo viewURL para .../sogo_users . Aqui está o exemplo original do debian:

CREATE TABLE sogo_users (
    c_uid VARCHAR(10) PRIMARY KEY,
    c_name VARCHAR(10),
    c_password VARCHAR(32),
    c_cn VARCHAR(128),
    mail VARCHAR(128));

INSERT INTO sogo_users VALUES ('paul', 'paul', MD5('zxc'), 'Paul Example', '[email protected]');
INSERT INTO sogo_users VALUES ('piet', 'piet', MD5('zxc'), 'Piet Jansen', '[email protected]');
INSERT INTO sogo_users VALUES ('klaas', 'klaas', MD5('zxc'), 'Klaas van der Zee', '[email protected]');

Referência: link

    
por 07.01.2017 / 00:15
-1

Qual é a mensagem de erro exata sendo lançada pelo programa quando ele tenta se conectar?

Eu noto que você tem

sogocreatedb | sogo | UTF8 | en_US.UTF-8 | en_US.UTF-8 |

na sua lista de bancos de dados. Você pretendia criar um banco de dados sogocreatedb ?

    
por 30.12.2016 / 21:53