Not logged in. · Lost password · Register
Forum: Non-English Discussion French discussion RSS
intégrer des comptes FluxBB <-> dokuwiki
Page:  1  2  next 
Avatar
Cyrille #1
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
Subject: intégrer des comptes FluxBB <-> dokuwiki
Bonsoir
j'ai un forum sous fluxBB version 1.5.9, pas de soucis
Je viens d'installer la dernière version de dokuwiki
j'aimerais que les comptes de fluxBB soient injectés (pour ceux existants dans dokuwiki | même login et mot de passe) et qu'ensuite toute nouvelle inscription sur le forum injecte le même login / mot de passe sous dokuwiki

j'ai vu ce lien
http://fluxbb.fr/aide/doku.php?id=fluxb … s:dokuwiki

mais c'est pour une version 1.4 de fluxBB

Faut il juste adapter la classe et notamment la ligne

$conf['authtype'] = 'fluxbb_v1_4';

Cette classe marche ama pour les nouvelles inscriptions
Pour les users déjà inscrit , faut il les injectés à la main  ?

D'avance merci
Avatar
jonas #2
Member since May 2007 · 120 posts
Group memberships: Members
Show profile · Link to this post
Bonsoir

J'utilise l'autentification de doku avec des comptes fluxBB 1.5.X, l'installation date mais ça fonctionne toujours !

Pour ça

local.php
$conf['authtype'] = 'authmysql';

local.portected.php
<?php
// FluxBB
define('PUN_ROOT', dirname(__FILE__).'/../../forums/'); // !!!!! A ADAPTER !!!!
global $pun_user;
require PUN_ROOT.'include/common.php';

$conf['plugin']['authmysql']['charset']          = 'iso-8859-1';
$conf['plugin']['authmysql']['server']           = $db_host;
$conf['plugin']['authmysql']['user']             = $db_username;
$conf['plugin']['authmysql']['password']         = $db_password;
$conf['plugin']['authmysql']['database']         = $db_name;
$conf['plugin']['authmysql']['debug']            = 1;
if (function_exists('sha1'))
    $conf['plugin']['authmysql']['forwardClearPass'] = 'sha1';
else
    $conf['plugin']['authmysql']['forwardClearPass'] = 'md5';
$conf['plugin']['authmysql']['TablesToLock']     = '';
$conf['plugin']['authmysql']['checkPass']        = "SELECT u.password AS pass
                                FROM ${db_prefix}users AS u, ${db_prefix}groups AS g
                                WHERE u.group_id = g.g_id
                                AND u.username = '%{user}'
                                AND g.g_title   != 'Guest'";
$conf['plugin']['authmysql']['getUserInfo']      = "SELECT password AS pass, realname AS name, email AS mail,
                                                    id, g_title as `group`
                                               FROM ${db_prefix}users AS u, ${db_prefix}groups AS g
                                              WHERE u.group_id = g.g_id
                                                AND u.username = '%{user}'";;
$conf['plugin']['authmysql']['getGroups']        = "SELECT g.g_title as `group`
                                               FROM ${db_prefix}users AS u, ${db_prefix}groups AS g
                                              WHERE u.group_id = g.g_id
                                                AND u.username = '%{user}'";
$conf['plugin']['authmysql']['getUsers']         = "SELECT DISTINCT u.username AS user
                                               FROM ${db_prefix}users AS u, ${db_prefix}groups AS g
                                              WHERE u.group_id = g.g_id";
$conf['plugin']['authmysql']['FilterLogin']      = "u.username LIKE '%{user}'";
$conf['plugin']['authmysql']['FilterName']       = "u.realname LIKE '%{name}'";
$conf['plugin']['authmysql']['FilterEmail']      = "u.email    LIKE '%{email}'";
$conf['plugin']['authmysql']['FilterGroup']      = "g.g_title    LIKE '%{group}'";
$conf['plugin']['authmysql']['SortOrder']        = "ORDER BY u.username";
$conf['plugin']['authmysql']['addUser']          = '';
$conf['plugin']['authmysql']['addGroup']         = '';
$conf['plugin']['authmysql']['addUserGroup']     = '';
$conf['plugin']['authmysql']['delGroup']         = '';
$conf['plugin']['authmysql']['getUserID']        = "SELECT id FROM ${db_prefix}users WHERE username='%{user}'";
$conf['plugin']['authmysql']['delUser']          = '';
$conf['plugin']['authmysql']['delUserRefs']      = '';
$conf['plugin']['authmysql']['updateUser']       = '';
$conf['plugin']['authmysql']['UpdateLogin']      = '';
$conf['plugin']['authmysql']['UpdatePass']       = '';
$conf['plugin']['authmysql']['UpdateEmail']      = '';
$conf['plugin']['authmysql']['UpdateName']       = '';
$conf['plugin']['authmysql']['UpdateTarget']     = '';
$conf['plugin']['authmysql']['delUserGroup']     = '';
$conf['plugin']['authmysql']['getGroupID']       = "SELECT g_id AS id FROM ${db_prefix}groups WHERE g_title='%{group}'";
?>

et e crois que c'est tout

Je pense que j'avais trouver l'astuce quelque part mais je ne sais plus où. A noter que le cookie d'authentification n'est pas le même, les utilisateurs doivent donc s'indentifier sur le forum ET sur le wiki (mais le mot de passe est le même et les groupes sont liées)

Faire attention au droits des groupes égallement !!!
Avatar
Cyrille #3
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
OK je vais tester cela, je ferai un retour de la situation
merci, bonne journée
Avatar
Cyrille #4
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
Bon de retour
ai essayé plusieurs solutions
Ai privilégié la plus récente, celle d'adaur
https://fluxbb.org/forums/viewtopic.php?pid=58104#p58104
Et aussi sa variante
https://fluxbb.org/forums/viewtopic.php?pid=58172#p58172

Ai modifié mes options de dokuwiki en authplain -> authpdo
J'ai bien le module d'activé

Alors 2 cas de figures
- soit il me dit que les ACL ne sont pas activées et je n'arrive ni à accéder en lecture au forum ni à me logguer
- soit il me donne un message d'erreur d'authentification

Je pense que je dois avoir des confusions dans les droits.

Passé pas mal de temps sans trop trouver. Beaucoup de propositions différentes sur le Net, mais rien de concluant.

Il me faut plus de temps...

Compliqué quand même d'intégrer ce truc !
Avatar
Digitalin #5
Member since Feb 2014 · 216 posts · Location: Uzès - France
Group memberships: Members
Show profile · Link to this post
Bonjour Cyrille,

J'ai lu le fil sur le forum Fluxbb.
Comme authmysql est déprécié depuis la version Elenor of Tsort, je ne pense pas que la solution proposée par Jonas fonctionne.
Quelle est la version de Fluxbb utilisée ?
Quel type d'installation de Dokuwiki ?
Serveur Web (Apache, Nginx...) et version ?
Version de Php ?
Message d'erreur dans DokuWiki ?
Groupes et utilisateurs FluxBB sont-ils visibles dans le gestionnaire des utilisateurs de Dokuwiki ?
Est-ce que le paramètre useacl est bien coché dans le gestionnaire de configuration ?
Que disent les logs /var/log/WEBSERVER/access.log et error.log ?

Pistes :
Désactiver les autres plugins pour voir si cela pourrait venir de là ?
Lire les tickets incidents sur le compte Github Dokuwiki avec le mot clé authpdo
Lire ce fil sur le forum anglais. Andi a fait appel à la Communauté en février dernier à ce sujet, apparemment pas beaucoup de retours. Et  sujets en rapport.

Je vois que Fluxbb utilise DokuWiki. Leur  page dans la page des sites utilisant DokuWiki.

En donnant le contexte, les comportements attendus et les messages d'erreur,  soit ici ou sur le forum anglais de DokuWiki ou sur le fil dédié de FluxBB, d'autres personnes pourront apporter leur aide ;-)

Ce sujet mérite attention et prudence.  J'ai pas encore abordé sérieusement cette question mais si j'ai bien compris, en utilisant ce système d'authentification, la définition des groupes doit être pensée en amont sur FluxBB (également) pour DokuWiki. Est-ce que des utilisateurs dans FluxBB peuvent appartenir à plusieurs groupes ?

A suivre :-)
Avatar
Cyrille #6
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
OK et merci bien pour la réponse !
Je donne quelques indications rapides :
fluxbb 1.5.9
dokuwiki la dernière version
Serveur WEB : Chez OVH - offre perso
php 5.6
mysql 5.5

je vais refaire des tests à partir de tes liens, merci beaucoup
(je noterai exactement les démarches et les erreurs retournées)
Avatar
Digitalin #7
Member since Feb 2014 · 216 posts · Location: Uzès - France
Group memberships: Members
Show profile · Link to this post
J'ai installé fluxBB version 15.10 en local sans problèmes avec un accès phpmyadmin

un membre dont j'ai renommé le groupe en admin pour ne pas avoir à changer le paramètre superuser dans Dokuwiki (install fraîche sans greffon, autres que ceux embarqués et authpdo).


En suivant les instructions de la page du greffon authpdo :

Paramètre d'authentification authtype sur authpdo
Valeur de passcrypt à sha1

Ensuite dans la section de configuration d'authpdo :

fonction debug activée
DNS :
mysql:host=localhost;dbname=mydatabase
(essayé aussi avec ;charset=utf8 à la fin)
userdb :
fluxbb
userpasswd :
fluxbb

J'ai les messages d'erreur :
authpdo: could not find driver [auth.php:51]
Impossible de se connecter à la base de données.
Authentication system changed. Please re-login.

Pourtant, pdo_mysql est bien installé
retour de php info

pdo_mysql

PDO Driver for MySQL    enabled
Client API version    5.5.52

Directive    Local Value    Master Value
pdo_mysql.default_socket    /var/run/mysqld/mysqld.sock    /var/run/mysqld/mysqld.sock

et
lsof -p 29769 | grep "pdo"
apache2 29769 root  mem    REG     8,1    27784  141663 /usr/lib/php5/20121212/pdo_sqlite.so
apache2 29769 root  mem    REG     8,1    36008  137783 /usr/lib/php5/20121212/pdo_mysql.so
apache2 29769 root  mem    REG     8,1   113984  142679 /usr/lib/php5/20121212/pdo.so

le conf/local.php :

$conf['title'] = 'Wiki Test';
$conf['start'] = 'accueil';
$conf['lang'] = 'fr';
$conf['license'] = 'cc-by-sa';
$conf['useacl'] = 1;
$conf['autopasswd'] = 0;
$conf['authtype'] = 'authpdo';
$conf['passcrypt'] = 'sha1';
$conf['superuser'] = '@admin';
$conf['disableactions'] = 'register';
$conf['plugin']['authpdo']['debug'] = 1;
$conf['plugin']['authpdo']['dsn'] = 'mysql:host=localhost;dbname=fluxbb';
$conf['plugin']['authpdo']['user'] = 'fluxbb';
$conf['plugin']['authpdo']['pass'] = '<b>Zmx1eGJi';
Obligé de revenir au conf/local.php original pour reprendre la main.

Problème de connexion à la base de données. Et de ton côté ?

EDIT : problème de  pare-feu. Cela marche.


Reste les autres options à étudier :

SQL Statement to select the data of a single user

plugin»authpdo»select-user-groupsdanger
SQL Statement to select all groups of a single user

plugin»authpdo»select-groupsdanger
SQL Statement to select all available groups

plugin»authpdo»insert-userdanger
SQL Statement to insert a new user into the database

plugin»authpdo»delete-userdanger
SQL Statement to remove a single user from the database

plugin»authpdo»list-usersdanger
SQL Statement to list users matching a filter

plugin»authpdo»count-usersdanger
SQL Statement to count users matching a filter

plugin»authpdo»update-user-infodanger
SQL Statement to update the full name and email address of a single user

plugin»authpdo»update-user-logindanger
SQL Statement to update the login name of a single user

plugin»authpdo»update-user-passdanger
SQL Statement to update the password of a single user

plugin»authpdo»insert-groupdanger
SQL Statement to insert a new group into the database

plugin»authpdo»join-groupdanger
SQL Statement to add a user to an exisitng group

plugin»authpdo»leave-groupdanger
SQL Statement to remove a user from a group
This post was edited on 2016-10-10, 15:45 by Digitalin.
Avatar
Cyrille #8
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
Merci beaucoup

Donc voilà , ai fait comme toi, mais ça ne passe pas
authpdo: No SQL query given [auth.php:641]
Le nom d'utilisateur ou le mot de passe est incorrect.

Ensuite dans ma config de fluxbb mes tables ont un prefixe, peut être le problème vient de là ?
This post was edited on 2016-10-10, 19:34 by Cyrille.
Avatar
Cyrille #9
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
mon local.php

$conf['title'] = 'WIKI Pédagogies Alternatives';
$conf['lang'] = 'fr';
$conf['license'] = 'cc-by-sa';
$conf['authtype'] = 'authpdo';
$conf['passcrypt'] = 'sha1';
$conf['superuser'] = '@admin';
$conf['disableactions'] = 'register';
$conf['plugin']['indexmenu']['aclcache'] = 'none';
$conf['plugin']['captcha']['mode'] = 'audio';
$conf['plugin']['captcha']['loginprotect'] = 0;
$conf['plugin']['authpdo']['debug'] = 1;
$conf['plugin']['authpdo']['dsn'] = 'mysql:host=cbiotfrycx01.mysql.db;dbname=cbiotfrycx01';
$conf['plugin']['authpdo']['user'] = 'cbiotfrycx01';
$conf['plugin']['authpdo']['pass'] = 'XXXXXXXXXXXXXXXX';


mon fichier de connexion sql de fluxbb
$db_type = 'mysqli';
$db_host = 'cbiotfrycx01.mysql.db';
$db_name = 'cbiotfrycx01';
$db_username = 'cbiotfrycx01';
$db_password = 'XXXXXXXXXXXXXXXX';
$db_prefix = 'pedaltern';
$p_connect = false;


Je mets aussi mon dokuwiki.php 
j'avaus changé des variables $conf['superuser'] $conf['manager'] à la main avant de comprendre l'utiliité du fichier local.php
(ce n'est pas bien, je le comprends maintenant mais je n'avais pas compris la subtilité de ce fichier, j'avais planté l'authentification et avais dû modifier à la main, sans prendre le temps de lire l'entête !)

/* Authentication Settings */
$conf['useacl']      = 1;                //Use Access Control Lists to restrict access?
$conf['autopasswd']  = 1;                //autogenerate passwords and email them to user
$conf['authtype']    = 'authplain';      //which authentication backend should be used
$conf['passcrypt']   = 'smd5';           //Used crypt method (smd5,md5,sha1,ssha,crypt,mysql,my411)
$conf['defaultgroup']= 'user';           //Default groups new Users are added to
$conf['superuser']   = 'cyrille';    //The admin can be user or @group or comma separated list user1,@group1,user2
$conf['manager']     = 'cyrille';    //The manager can be user or @group or comma separated list user1,@group1,user2
$conf['profileconfirm'] = 1;             //Require current password to confirm changes to user profile
$conf['rememberme'] = 1;                 //Enable/disable remember me on login
$conf['disableactions'] = '';            //comma separated list of actions to disable
$conf['auth_security_timeout'] = 900;    //time (seconds) auth data is considered valid, set to 0 to recheck on every page view
$conf['securecookie'] = 1;               //never send HTTPS cookies via HTTP
$conf['remote']      = 0;                //Enable/disable remote interfaces
$conf['remoteuser']  = '!!not set!!';    //user/groups that have access to remote interface (comma separated)
Avatar
Cyrille #10
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
en tout cas un grand merci pour ton aide, même si ça plante encore j'y vois plus clair !
Avatar
Digitalin #11
Member since Feb 2014 · 216 posts · Location: Uzès - France
Group memberships: Members
Show profile · Link to this post
In reply to post #8
Quand j'ai dit que cela marchait, c'était après avoir réglé les problèmes de connexion à la bd.

J'ai le même message :
authpdo: No SQL query given [auth.php:641]
C'est pour cela qu'il faut ensuite remplir les autres champs pour les requêtes à la base de données.
Le prefix de la base, c'est surtout fait pour avoir plusieurs instances de forum (si j'ai bien compris) ou quand on est en mutualisé et qu'on a pas le choix. 

J'ai regardé un peu fluxbb, c'est pas mal. On peut renommer les groupes d'utilisateurs, l'administration est bien foutue. En revanche, un utilisateur ne peut appartenir qu'à un seul groupe. J'ai vu que le développeur d'origine est sur un autre projet désormais en parcourant leur forum. Le projet semble un peu au ralenti, ce qui n'enlève rien aux qualités du forum.

Ce serait sympa de faire suivre sur ce fil la solution finale quand tu auras avancé, pour que je la teste de mon côté et pour les autres utilisateurs qui pourraient en avoir besoin.

PS: il ne faut pas oublier d'enlever l'option debug à authpdo à la fin des tests :-)
Avatar
Cyrille #12
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
je vais potasser ça
https://www.dokuwiki.org/devel:auth_plugins
peut être qu'il y aura des pistes....
je tiens au courant
Avatar
Digitalin #13
Member since Feb 2014 · 216 posts · Location: Uzès - France
Group memberships: Members
Show profile · Link to this post
Il y a ce lien aussi : les test réalisés du greffon authpdo avec fluxbb par andi.
N'hésite pas à poster au besoin si tu rencontres des difficultés.  Déjà, c'est plus fun de chercher à plusieurs et puis, si vraiment on coince tous les deux, en ayant bien contextualisé le sujet, on pourra poster sur le forum anglais.

Bon courage :-)
Avatar
Cyrille #14
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
Hello
Bon lassé de planter mon forum en prod et mon début de wiki, j'ai installé un forum de test et un wiki de test, ça ira mieux

Bonne nouvelle ai supprimé l'erreur
authpdo: No SQL query given [auth.php:641]

Voici ce que j'ai rajouté à la fin de mon local.php

// FluxBB
define('PUN_ROOT', dirname(__FILE__).'/../../test-fluxbb/'); // !!!!! A ADAPTER !!!!
global $pun_user;
require PUN_ROOT.'include/common.php';

$conf['plugin']['authpdo']['select-user']      = "SELECT password AS pass, realname AS name, email AS mail,
                                                    id, g_title as `group`
                                               FROM ${db_prefix}users AS u, ${db_prefix}groups AS g
                                              WHERE u.group_id = g.g_id
                                                AND u.username = '%{user}'";


je n'ai plus que cette erreur
Le nom d'utilisateur ou le mot de passe est incorrect.
Avatar
Cyrille #15
Member since Oct 2016 · 23 posts
Group memberships: Members
Show profile · Link to this post
bon j'ai exporté la structure sql des tables de fluxbb
demain je l'imprimerai avec la doc de authpdo et essayerai de lier les tables convenablement
++
C
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Page:  1  2  next 
Go to forum
Imprint
This board is powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2015 by Yves Goergen
Current time: 2019-12-14, 09:02:01 (UTC +01:00)