Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten Ansicht
  #1  
Alt 28.04.08, 00:52
Forum Zuschauer
 
Registriert seit: 10.04.06
Alter: 28
Beiträge: 7
Gelöst - keine Gruppenzuordnung mit ldap_server

Hallo Forum,

versuche schon das ganze Wochenende fuer ein Projekt aus einem bestehenden LDAP-Server die Nutzerdaten und -gruppen in TYPO3 einzubinden.

Bisheriger Stand: Nutzer und Gruppen werden korrekt uebertragen, allerdings werden den Nutzern keine Gruppen zugeordnet.

Schema des LDAP:
Code:
dn: dc=domain,dc=tld
objectClass: dcObject
objectClass: organization
dc: domain
o: domain.tld


#
# USER im LDAP
#

dn: ou=people,dc=domain,dc=tld
objectClass: organizationalUnit
description: All people in organisation
ou: people

dn: cn=User 1,ou=people,dc=domain,dc=tld
objectClass: inetOrgPerson
cn: User 1
uid: user_1
userPassword: klsdjf;askd
description: FE_USER

dn: cn=User 2,ou=people,dc=domain,dc=tld
objectClass: inetOrgPerson
cn: User 2
uid: user_2
userPassword: skldjfa;sldkfj
description: FE_USER


#
# GRUPPEN im LDAP
#

dn: ou=groups,dc=domain,dc=tld
objectClass: organizationalUnit
description: generic groups branch
ou: groups

dn: cn=admins,ou=groups,dc=domain,dc=tld
objectClass: groupOfNames
cn: admins
description: administrator group
member: cn=User 1,ou=people,dc=domain,dc=tld

dn: cn=app_user,ou=groups,dc=domain,dc=tld
objectClass: groupOfNames
cn: webuser
description: webuser group
member: cn=User 1,ou=people,dc=domain,dc=tld
member: cn=User 2,ou=people,dc=domain,dc=tld
Wie zu sehen ist, findet die Gruppenzuordnung nicht bei den einzelnen Nutzern statt, sondern in den Gruppen (Attribut "member"). Dies sollte, wenn moeglich, auch so beibehalten werden.

Installierte Extensions:
  • ldap_lib
  • ldap_server
  • ldap_sync
  • ldap_auth

Der LDAP-Server wurde angelegt und es besteht auch eine Verbindung und die Daten werden in die TYPO3-Datenbank uebernommen, allerdings ohne die Gruppenzuordnung.

Konfiguration der Extension:
  • Hide = 0
  • Enable for backend authentification = 1
  • Servername = {IP des Servers}
  • Servertype = x500 (OpenLDAP)
  • LDAP protocol version = 3
  • Base DN = dc=domain,dc=tld
  • Filter for persons = (&(objectClass=inetOrgPerson)(uid=###USERNAME###))
  • Charset =
  • Username = cn=admin,dc=domain,dc=tld
  • Password = ****
  • Configuration =
Code:
FEusers = LDAP_SYNC
FEusers {
        enable = 1
        table = fe_users
        basedn = ou=people,dc=domain,dc=tld
        handleNotFound = 1
        handleNotFound {
                delete = 1
        }
        pid = 8
        filter = (&(objectClass=inetOrgPerson))
        uniqueField = username
        fields {
                username = MAP_OBJECT
                username.attribute = uid
                password = MAP_OBJECT
                password.attribute = userPassword
                usergroup = MAP_OBJECT
                usergroup.attribute = memberOf
                usergroup.userFunc = tx_ldapserver->getFEGroups
                usergroup.userFunc.pid = 8
                }
        }
}

FEgroups = LDAP_SYNC
FEgroups {
        enable = 1
        pid = 8
        table = fe_groups
        handleNotFound = 1
        handleNotFound {
                delete = 1
        }
        basedn = ou=groups,dc=domain,dc=tld
        filter = (&(objectClass=groupOfNames))
        uniqueField = title
        fields {
                username >
                usergroup >
                title = MAP_OBJECT
                title.attribute = cn
                title.userFunc = tx_ldapserver->getSingleValue
                description = MAP_OBJECT
                description.attribute = description
        }
}

Vielleicht hat jemand eine Idee, was falsch sein koennte oder ob es mit dieser LDAP-Struktur ueberhaupt funktionieren kann. Fuer Hilfe waere ich sehr dankbar!

Gruesse, mister_x

Geändert von mister_x (28.04.08 um 20:49 Uhr).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Sponsored Links
  #2  
Alt 28.04.08, 20:47
Forum Zuschauer
 
Registriert seit: 10.04.06
Alter: 28
Beiträge: 7

So ... die Kiste laeuft!

Wens interessiert, wie des Raetsels Loesung lautet:

1. LDIF-Datei ein wenig umgestellt:

Code:
dn: cn=User 1,ou=people,dc=domain,dc=tld
objectClass: inetOrgPerson
>objectClass: organizationalPerson
cn: User 1
uid: user_1
>seeAlso: cn=admins,ou=groups,dc=domain,dc=tld
>seeAlso: cn=app_user,ou=groups,dc=domain,dc=tld
userPassword: klsdjf;askd
description: FE_USER

dn: cn=User 2,ou=people,dc=domain,dc=tld
objectClass: inetOrgPerson
>objectClass: organizationalPerson
cn: User 2
uid: user_2
>seeAlso: cn=app_user,ou=groups,dc=domain,dc=tld
userPassword: skldjfa;sldkfj
description: FE_USER

dn: cn=admins,ou=groups,dc=domain,dc=tld
<objectClass: groupOfNames
>objectClass: organizationalRole
cn: admins
description: administrator group
<member: cn=User 1,ou=people,dc=domain,dc=tld

dn: cn=app_user,ou=groups,dc=domain,dc=tld
<objectClass: groupOfNames
>objectClass: organizationalRole
cn: webuser
description: webuser group
<member: cn=User 1,ou=people,dc=domain,dc=tld
<member: cn=User 2,ou=people,dc=domain,dc=tld
... und dann 2. noch die Konfiguration von ldap_server angepasst:

Code:
FEusers = LDAP_SYNC
FEusers {
        enable = 1
        table = fe_users
        basedn = ou=people,dc=domain,dc=tld
        handleNotFound = 1
        handleNotFound {
                delete = 1
        }
        pid = 8
        filter = (&(objectClass=inetOrgPerson)(objectClass=organizationalPerson)(description=FE_USER))
        uniqueField = tx_ldapserver_dn
        fields {
                username = MAP_OBJECT
                username.attribute = uid
                tx_ldapserver_dn = MAP_OBJECT
                tx_ldapserver_dn.special = DN
                password = MAP_OBJECT
                password.attribute = userPassword
                usergroup = MAP_OBJECT
                usergroup.attribute = seeAlso
                usergroup.userFunc = tx_ldapserver->getFEGroups
                usergroup.userFunc.pid = 8
                }
        }
}

FEgroups = LDAP_SYNC
FEgroups {
        enable = 1
        pid = 8
        table = fe_groups
        handleNotFound = 0
        basedn = ou=groups,dc=domain,dc=tld
        filter = (objectClass=organizationalRole)
        uniqueField = tx_ldapserver_dn
        fields {
                username >
                usergroup >
                title = MAP_OBJECT
                title.attribute = cn
                title.userFunc = tx_ldapserver->getSingleValue
                tx_ldapserver_dn = MAP_OBJECT
                tx_ldapserver_dn.special = DN
        }
}
Fertig!


Viel Spass beim nachkochen! ;-)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Antwort


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are An


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
keine items = keine header ddoesburg News (tt_news, mininews und Co) 0 04.12.07 19:48
LDAP_Server Konfigurations Fehler shino Alle anderen Extensions 0 03.09.07 07:55


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:28 Uhr.


Powered by vBulletin® Version 3.6.8 Patch Level 2 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0
Template-Modifikationen durch TMS