2017-02-13 3 views
0

Ich habe eine LDAP-Benutzer-Datenbank als Objekte der Klasse posixAccount, inetOrgPerson und top zugeordnet.Wie Geolocation-Attribute zu einem LDAP-Konto hinzufügen

Ich muss den Benutzern Breiten- und Längengradattribute hinzufügen. Diese Attribute scheinen jedoch in diesen Klassen (und auch nicht in anderen) nicht vorhanden zu sein. inetOrgPerson stellt nur Referenzen wie postalAddress, street usw. dar.

Ist es möglich, einer vorhandenen LDAP-Klasse eine neue Klasse oder ein neues Attribut hinzuzufügen? Oder gibt es einen anderen Lösungspfad, den ich vermisse?

Ich benutze Openldap Server mit phpldapadmin (obwohl diese keine harten Einschränkungen sind).

Vielen Dank, alan

Antwort

2

Während es möglich Attributtypen zu einem Standard (RFC) Objektklasse hinzufügen möchten, sollten Sie das nicht tun. Der vCard-4.0-Entwurf definiert bequemerweise ein Attribut latLong (section 3.14). Sie erstellen eine Hilfsobjektklasse mit diesem Attributtyp, mit der Sie später GPS-Koordinaten zu Ihren Einträgen hinzufügen können.

Erstellen Sie eine Datei "geolocation.schema" wie:

# latLong 
# Represents a geographical location using the WGS84 data coordinates 
# as used by GPS, like: -33.92;151.28 
attributetype (1.3.6.1.4.1.33592.1.3.14 NAME 'latLong' 
    EQUALITY caseIgnoreMatch 
    SUBSTR caseIgnoreSubstringsMatch 
    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 
) 

# geoLocation 
# The geoLocation auxiliary class allows GPS coordinates to be added 
# to an object 
objectclass (your-company-oid-prefix-as-provided-by-IANA.your-oc-convention 
    NAME 'geoLocation' 
    DESC '' 
    AUXILIARY 
    MAY (latLong) 
) 

In Ihrem slapd.conf Datei für Ihre Schemadatei eine include Anweisung hinzufügen. Die neue Objektklasse ist verfügbar, nachdem Sie den LDAP-Server neu gestartet haben.

Wenn Ihre Organisation nicht bereits über ein OID-Präfix verfügt, get one. Für Tests kannst du einen fälschen.

Getippt und nicht getestet ...

+0

marabu, vielen Dank für Ihre Antwort! Es hat nicht so funktioniert, wie es ist, aber ich werde es weiter analysieren und posten, was schief gelaufen ist. Es sieht aus wie eine Geolocation.diff-Datei fehlt. –

+0

Wie kann ich die Datei geolocation.ldif generieren? –

+0

Suchen Sie als OpenLDAP-Administrator den Ordner mit Ihren Schemaerweiterungen, kopieren und fügen Sie die Schemaeinträge von oben in Ihren bevorzugten Texteditor ein und speichern Sie sie als geolocation.schema. Vergessen Sie nicht, die GeoLocation OID anzupassen. – marabu

Verwandte Themen