| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
fschaeffer Neuer User
Anmeldungsdatum: 16.02.2006 Beiträge: 5
|
16.02.2006 10:31 LU 0.16.8 - Problem nach Update auf MDB2 2.0.0 |
|
|
Hallo Lukas , @all
Bisher habe ich über $LU->getProperty('group_ids') problemlos alle Gruppen eines angemeldeten Users erhalten. Das Testsystem verwendete noch MDB2-2.0.0RC4 mit MDB2_Driver_Mysql 0.2.3 und MDB_Schema 0.4.2.
Nach einem Update auf MDB2-2.0.0 stable, MDB2_Driver_Mysql 1.0.0 stable und MDB_Schema 0.4.3 läuft die Anmeldung korrekt, alles funktioniert wie gehabt, nur $LU->getProperty('group_ids') liefert eine leeres Array zurück.
Ich habe es nich geschafft, die Stelle zu finden, welche hier Probleme bereitet, eine simpler Switch zurück auf die alte Konfiguration hat das Problem behoben.
In beiden Fällen habe ich LiveUser 0.16.8 udn LiveUser_Admin 0.3.6 im Einsatz.
Hat jemand ähnliche Erfahrungen gemacht oder weiss, wo der Fehler liegen könnte ?
Danke für euere Hilfe
Florian |
|
| Nach oben |
|
 |
lsmith User
Anmeldungsdatum: 10.03.2004 Beiträge: 450
|
16.02.2006 13:08 |
|
|
| größte änderung in den letzten MDB2 release ist das boolean felder jetzt 1/0 und nicht Y/N enthalten. |
|
| Nach oben |
|
 |
fschaeffer Neuer User
Anmeldungsdatum: 16.02.2006 Beiträge: 5
|
16.02.2006 13:30 |
|
|
und meinst du, das kann einen Einfluss auf genau diese eine Funktion?Methode?Proptery? haben ?
Ich habe leider nicht rausfinden können, wo genau die Funktion getProperty('group_ids') aufgerufen wird und vor allem viel wichtiger, wie die Funktion diese Property ausliest..
Alle anderen Aufrufe über getProperty funktionieren...
Wir arbeiten mit einer Klasse, die LiveUser (also nicht admin) als authObjVariable anlegt...
$this->userData['handle'] = $this->authObj->getProperty('handle');
$this->userData['fullname'] = $this->authObj->getProperty('firstname').' '.$this->authObj->getProperty('lastname');
$this->userData['auth_user_id'] = $this->authObj->getProperty('auth_user_id');
$this->userData['perm_user_id'] = $this->authObj->getProperty('permUserId');
$this->userData['available_groups'] = $this->authObj->getProperty('group_ids');
Bis auf den letzten Aufruf werden alle Werte korrekt übergeben...
Danke für die Hilfe
Florian |
|
| Nach oben |
|
 |
lsmith User
Anmeldungsdatum: 10.03.2004 Beiträge: 450
|
16.02.2006 13:36 |
|
|
| nein .. aber es könnte einfluss auf das auslesen der gruppen selber haben, da es so lu vielleicht erscheint als ob die gruppen nicht aktiv sind .. aber ich denke mal das jemand der is_active für gruppen verwendet, dies auch bei benutzern tut .. und demnach sollte dann das login auch fehlschlagen .. |
|
| Nach oben |
|
 |
fschaeffer Neuer User
Anmeldungsdatum: 16.02.2006 Beiträge: 5
|
16.02.2006 14:51 |
|
|
Dein Tipp war goldrichtig und betriff interessanterweise nur die Gruppen
Ich habe folgendes gemacht:
Bei der Anlage wurde bisher fest 'Y' für is_active in die DB geschrieben, dieses Feld wird jetzt mit true initialisiert.
Dann ein Update von MDB2, MDB2_Driver_mysql und MDB2_Schema und der Fehler ist wieder da gewesen. Danach ein Update auf der Datenbank und alle Gruppen von 'Y' auf '1' und jetzt läuft es so wie es soll.
Bei den Benutzern habe ich ebenfalls von 'Y' auf true gewechselt, hier war allerdings die DB-Aktualisierung nicht nötig, das Login klappte auch mit den Werten auf 'Y' in der DB. Wahrscheinlich habe ich irgendeinen Parameter, der für User nicht überprüft, ob diese aktiv sind oder nicht...
Ich habe bei beiden (Users und Groups) in der Config.xml <is_active>false</is_active> zu stehen...
Danke für den Denkanstoss
Florian |
|
| Nach oben |
|
 |
lsmith User
Anmeldungsdatum: 10.03.2004 Beiträge: 450
|
16.02.2006 14:57 |
|
|
sehr komisch, dass es nicht die user betrifft ..
sobald du ein is_active feld registrierst müsste er eigentlich das feld auch beim login überprüfen und nur dann das login durchlassen wenn der wert für is_active auf true steht ...
könntest du mal deine authContainers configuration pasten? |
|
| Nach oben |
|
 |
fschaeffer Neuer User
Anmeldungsdatum: 16.02.2006 Beiträge: 5
|
16.02.2006 15:15 |
|
|
<liveUser>
<login>
<force>true</force>
</login>
<logout>
<destroy>true</destroy>
</logout>
<authContainers>
<MDB2_container>
<type>MDB2</type>
<loginTimeout>0</loginTimeout>
<expireTime>0</expireTime>
<idleTime>3600</idleTime>
<allowDuplicateHandles>0</allowDuplicateHandles>
<storage>
<dsn>myownprivateDSN</dsn>
<alias>
<auth_user_id>authUserId</auth_user_id>
<lastlogin>lastLogin</lastlogin>
<is_active>isActive</is_active>
<owner_user_id>owner_user_id</owner_user_id>
<owner_group_id>owner_group_id</owner_group_id>
<gender>gender</gender>
<firstname>firstname</firstname>
<lastname>lastname</lastname>
<email>email</email>
<customer_id>customer_id</customer_id>
</alias>
<fields>
<auth_user_id>text</auth_user_id>
<lastlogin>timestamp</lastlogin>
<is_active>boolean</is_active>
<owner_user_id>integer</owner_user_id>
<owner_group_id>integer</owner_group_id>
<gender>text</gender>
<firstname>text</firstname>
<lastname>text</lastname>
<email>text</email>
<customer_id>text</customer_id>
</fields>
<tables>
<users>
<fields>
<lastlogin>false</lastlogin>
<is_active>false</is_active>
<owner_user_id>false</owner_user_id>
<owner_group_id>false</owner_group_id>
<gender>false</gender>
<firstname>false</firstname>
<lastname>false</lastname>
<email>false</email>
</fields>
</users>
<groups>
<fields>
<customer_id>false</customer_id>
</fields>
</groups>
</tables>
<force_seq>false</force_seq>
</storage>
</MDB2_container>
<XML_container>
<type>XML</type>
<loginTimeout>0</loginTimeout>
<expireTime>3600</expireTime>
<idleTime>1800</idleTime>
<allowDuplicateHandles>false</allowDuplicateHandles>
<passwordEncryptionMode>MD5</passwordEncryptionMode>
<storage>
<file>../config/auth.xml</file>
<alias>
<auth_user_id>userId</auth_user_id>
<passwd>password</passwd>
<lastlogin>lastLogin</lastlogin>
<is_active>isActive</is_active>
</alias>
</storage>
</XML_container>
</authContainers>
<permContainer>
<type>Complex</type>
<storage>
<MDB2>
<dsn>myownprivateDSN</dsn>
<prefix>liveuser_</prefix>
<alias>
<perm_users>perm_users</perm_users>
<customer_id>customer_id</customer_id>
<is_active>is_active</is_active>
<owner_user_id>owner_user_id</owner_user_id>
<owner_group_id>owner_group_id</owner_group_id>
</alias>
<fields>
<customer_id>text</customer_id>
<is_active>boolean</is_active>
<owner_user_id>integer</owner_user_id>
<owner_group_id>integer</owner_group_id>
</fields>
<tables>
<groups>
<fields>
<customer_id>false</customer_id>
<is_active>false</is_active>
<owner_user_id>false</owner_user_id>
<owner_group_id>false</owner_group_id>
</fields>
</groups>
</tables>
<force_seq>false</force_seq>
</MDB2>
</storage>
</permContainer>
</liveUser>
Oh und die force_seq greift auch nicht, habe daher die sequences Tabellen einrichten lassen und seitdem läuft es mit Sequences also nicht darüber wundern, dass die Dinger da noch drin stehen.... |
|
| Nach oben |
|
 |
lsmith User
Anmeldungsdatum: 10.03.2004 Beiträge: 450
|
16.02.2006 15:16 |
|
|
hmm schaut eigentlich richtig aus .. kannst du denn jetzt user deaktivieren?
wie auch immer .. ich bin jetzt ein paar tage offline .. bei bedarf bitte einen bug report auf der pear.php.net/liveuser seite reinsetzen .. |
|
| Nach oben |
|
 |
fschaeffer Neuer User
Anmeldungsdatum: 16.02.2006 Beiträge: 5
|
16.02.2006 15:26 |
|
|
User deaktivieren setzen wir bisher nicht ein, daher ist es für uns jetzt nicht so tragisch, es läuft alles wie gewollt...
Danke für die Hilfe
Schöne freie Tage
Florian |
|
| Nach oben |
|
 |
|
|