Student Authentication
Requirements
- Authenticate students against University Directory Service http://www.dsa.unibo.it;
- allow authenticated students to edit/comment documents;
- deny authenticated students the right to delete documents.
Analysis
- A student profile is required enforcing the requirements provided;
- actual authentication plugin/system provides authentication against DSA for University Professors and Technicians.
Design / Solution
- Define a Student group with
- allow rights for: edit, comment;
- deny rights for: delete.
- Extend current DSA leveraging authentication system replicating actions in the if-branch matching "@unibo.it" usernames, for "@studio.unibo.it" matching usernames (the replicated if-branch) on account creation add the account to the Student group.
Testing
The solution has been successfully tested on testing webapp istance "xwiki_test" using testing database "xwiki_test".
- Created groups: XWiki.StudentGroup and XWiki.FacultyGroup;
- Authenticated user marco.fabbri2@studio.unibo.it:
- Profile Created;
- Profile Added to group XWiki.StudentGroup;
- Authenticated user marco.fabbri28@unibo.it:
- Profile Created;
- Profile Added to group XWiki.FacultyGroup;
Deployment and Execution
DSA authentication plugin (apice-dsa-1.5.0.jar) has been placed in $TOMCAT_INSTALL_DIR/webapps/xwiki/WEB-INF/lib replacing all authentication plugin (apice-dsa-1.0.3-jar).
The new authentication mechanism is in place as described in StudentAuthenticationthroughDSA.