People have a hard time keeping track of all the user name and password combinations they have across web sites. Why would you compound their struggle by forcing them to have multiple logins to your site for different functionality? You wouldn't. Give them a single log in and control access to various functions and permissions using roles. The goal? Elegant ease of use.
My real world experience with this happened about 7 years ago when I was supporting a couple of continuing education software programs and helping to architect the company's next fully browser based version.
The existing two products had web class registration access for students, with limited instructor and staff web access. My support duties meant I dealt with continuing education staff who often were also students of classes, as well as served as instructors. This meant they potentially had three separate accounts in the system. This also meant they had to recall three separate user/password combinations, and that was just in a single system. I understood their frustrations.
The response as I listened and helped them was to suggest we develop the new system with a single user account that that was role based. Each account would start off with the default role of student. Once the account was created, the system administrator could add and remove other roles such as staff, instructor, firm contact. Those additions and removals would allow role specific system permissions to be set, trigger password resets, account confirmations, or prompt for new required fields to be filled, etc.
The goal being to make it so users only had to remember one login/password combination for the entire system, and at the same time help the system administrator keep better track of access, preferences, and permissions for staff, instructors, firm contacts, students.
Focus on making it elegant for the users. It's an effort that's well worth it.