在我的項目中,Admin添加了教師,然後每個教師添加他的學生。當他們被添加時,他們會收到一封電子郵件,要求他們完成註冊。我可以在ASP.NET MVC中創建多個身份表嗎?
我在我的項目中的以下類:
1-Student類
Student: int id, int Registry number, int grade, string password, string email, string name
2,教師班級:
Instructor: int id, string name , string email , string password
3,我的數據庫環境:
public class InstructorContext:DbContext
{
public InstructorContext() : base("InstructorContext")
{
}
public DbSet<Instructor> Instructors { get; set; }
public DbSet<Student> Students { get; set; }}
當我們呃入門,我必須確定他是管理員還是導師還是學生。我必須使用基於角色的身份驗證嗎?我已經有2個不同的角色分開的類。他們是否有可能從IdentityUser繼承?
如果我只有1個管理員,我必須添加「管理員」類嗎?還是足以檢查電子郵件和密碼? – Comp23555
不,我的意思是你*可以*,但「管理員」更通常被認爲是一個角色。區分的一個好方法是考慮重疊。如果像「講師」這樣的東西也可能是管理員(不管你是否真的會允許),那麼它可能更適合作爲一個角色。這樣,如果您需要,您*可以*使教師成爲管理員,而不會影響系統的其他部分。否則,你最終會得到類似'Instructor','Admin'和'AdminInstructor'這樣的東西,這顯然很快就會變得混亂, –
另外,通過使用角色,你可以添加類似'[Authorize(Roles =「Admin 「)]'給控制器/僅限管理員的操作。作爲另一種派生類型,您需要創建一些自定義來確定訪問級別。 –