Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

What is the best way to make a login form for multiple users?

I'll give you an example for your understanding:

If we have three different type of users, for example, teachers, students and administrators, the login could be:

  • A simple login with a combo, letting the user select his "class".
  • A simple login with tabs for students, teachers and administrators (or administrators could access via URL like the below example).
  • A front page, with a top link that references the login of the students, a bottom link that references the login of the teachers (the web application will be oriented to the students, the teachers are not relevant) and the administrators could be via URL (i.e. http://webapplication.com/secret_access - this is an invented example -).

I'm looking for the best solution in UX and security terms.


CONCLUSION: The best way to make a login form for multiple users is create a single login form, but in the back-end, check the user and determinate it's class.

share|improve this question
2  
"best solution in UX and security" = sometimes contradictory goals –  DA01 Sep 10 '13 at 21:51
    
Sorry for the late... Why? Can you explain me the point? –  leoMestizo Sep 12 '13 at 18:35
2  
often what security wants/needs conflicts with what is most usable for the end-user. Simple example: CAPTCHAs. –  DA01 Sep 12 '13 at 19:28

3 Answers 3

up vote 11 down vote accepted

These kind of access issues are usually addressed with 'roles' everyone logs in through the same link, with a unique to the individual ID. Then each ID is given specific privileges (or roles). All your students have the student role, all the teachers the teacher role, etc.

share|improve this answer
    
I like this answer! Do you know a good book who "touches" this topic? The programming language doesn't matter, because I think that the principles are the same. –  leoMestizo Sep 10 '13 at 18:24
    
@leoMestizo I don't have any books to offer –  James Jenkins Sep 10 '13 at 19:25
    
Ok! Thanks for the response... –  leoMestizo Sep 10 '13 at 19:31
1  
@leoMestizo Martin Fowler's Dealing with Roles is a good reference to read. –  Marjan Venema Sep 10 '13 at 19:33
    
Oh! Martin Fowler! Great, great author! Thank you very much @MarjanVenema! –  leoMestizo Sep 10 '13 at 19:35

The best UX solution is to have the system be "smart" and detect (using the login-credentials) what kind of group the user belongs to. Just like logging in to a computer: the OS knows your "rights"

share|improve this answer
    
I like this answer too. As I asked before... Do you know a book who touches this topic? The programming language doesn't matter. –  leoMestizo Sep 10 '13 at 18:31

you can make new table in your db where you can define group (teachers, students and administrators).

and at registration page you can provide a option to users to select user group

now at login page insted of 2 fields (username,password) provide a new select box for selecting user group .

share|improve this answer
    
Thanks for the response. But i disagree about the design of the table: If I create a new table who englobe teachers, students and administrators I will have NULL values. Besides, if I want to add specific attributes to each one, I won't be able because three entities are in the same relation (I will add those attributes, but there will be updates anomalies). Regarding to the solution about this answer... Why do you think this is the best solution? –  leoMestizo Sep 10 '13 at 18:17
    
yes i agree that you have blank field 'user group' in registration table for existing user, but you can provide a option to user at login time that if they not filled user group before they select user group and fill there email and a mail shoot to their mail id with a verify link and when they click on that link you can update their user group and now user can login . –  Ankit Agrawal Sep 10 '13 at 18:26

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.