LDAP AuthenticationUniTime allows for LDAP authentication. There are some custom properties that can be set (see the list bellow). If this does not help the LDAP authentication module is implemented (as a part of the JAAS) in the class org.unitime.timetable.authenticate.jaas.LdapAuthenitcateModule (see method doAuthenticate)
See Timetabling Installation: Customization on how to set custom properties. The LDAP authentication only provides external id of the authenticated user (it replaces the Users page). There still needs to be a timetable manager with the matching external id. Users without such a role, are assumed to be students and instructors which are only able to see their schedule (if there is a student / instructor record with matching external id), or use event management (if it is enabled).
LDAP Lookup LDAP can also be used for people lookup (as one of the sources, besides instructors, staff, students, timetabling managers, and event contacts). To set LDAP lookup, you need to use the following properties:
See org.unitime.timetable.gwt.server.LookupServlet#findPeopleFromLdap for the implementation. Moreover, it is expected that the LDAP lookup only returns usernames (attribute uid, not the actual external ids). If external ids are different from usernames, there is a class that provides translation between these two.
The above one is using the LDAP authentication module to translate usernames (uid attribute) into external ids (given by tmtbl.authenticate.ldap.externalId attribute). Timetable Managers / Instructors ValidationThere is also a possibility to use LDAP to validate timetable mangers and instructors.
If enabled, the interface (org.unitime.timetable.interfaces.ExternalUidLookup) is used to validate (and/or translate) the entered username / external id. The above implementation also uses the LDAP authentication module (with a query provided in the tmtbl.authenticate.ldap.identify property). NotesUsing some LDAP explorer (e.g., JXplorer, http://jxplorer.org/) may help you to find out all the settings (e.g., what certificates you need, or how the query should look like) in a more interactive way.
|
