ASP.NET MVC 4 рдореЗрдВ SimpleMembership рдЧрд╛рдЗрдб

ASP.NET MVC 4 рдФрд░ WebMatrix рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде, mvc рдЯреАрдо рдХрд╛ рд▓рдХреНрд╖реНрдп рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП рдЪреАрдЬреЛрдВ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рд╣реИред рд╕рдореАрдХреНрд╖рд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ asp.net рд╕реБрд░рдХреНрд╖рд╛ рдереАред

ASP.NET MVC 4 рдЗрдВрдЯрд░рдиреЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ рдХрдИ рдирдП рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдлреАрдЪрд░ рдЬреЛрдбрд╝реЗ рдЧрдП рд╣реИрдВ рдЬреЛ рдХрд┐ SimpleMembership рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдП рдЧрдП рд╣реИрдВред SimpleMembership рднреВрдорд┐рдХрд╛рдУрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд░рд▓ рдЕрдиреБрдХреВрд▓рди рд▓рд╛рдпрд╛, рдФрд░ OAuth рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдирдпрд╛ рдкреНрд░рджрд╛рддрд╛ рдореМрдЬреВрджрд╛ ASP.NET рд╕рджрд╕реНрдпрддрд╛ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ SimpleMembership рдХреНрдпрд╛ рд╣реИ рдФрд░ ASP.NET MVC 4 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред


SimpleMembership рдХреНрдпрд╛ рд╣реИ



ASP.NET рд╕рджрд╕реНрдпрддрд╛ рдкреНрд░рдгрд╛рд▓реА 2005 рдореЗрдВ рд╢реБрд░реВ рдХреА рдЧрдИ рдереАред рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреИрд╕реЗ рдХрд┐ рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рд╕рд╛рдЗрдЯ рдкрд░ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдирд╛, рдПрдХ SQL рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ред рд╕рд╛рде рд╣реА, рдореЗрдореНрдмрд░рд╢рд┐рдкрдкреНрд░реЙрдЗрдбрд░ рдФрд░ рд░реЛрд▓рдкреНрд░реЛрдЗрдбрд░ рдХреЗ рдорд╛рдирдХ рддрд░реНрдХ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░ рддрдВрддреНрд░ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред 8 рд╕рд╛рд▓ рдкрд╣рд▓реЗ, рдЗрд╕ рддрдВрддреНрд░ рдиреЗ рдЕрдкрдиреЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЖрдЬ рдпрд╣ рдПрдХ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЙрдкрдХрд░рдг рд╣реИред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реАрд▓реНрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЙрди рд╕рднреА рдХреЛ рдПрдХ рдХреЙрд▓рдо рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдХреНрд╕реЗрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдкреНрд░рджрд╛рддрд╛ рдХреА рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

ASP.NET рд╡реЗрдмрдкреЗрдЬ рдФрд░ рд╡реЗрдмрдореИрдЯреНрд░рд┐рдХреНрд╕ рдХрдИ рдЪреАрдЬреЛрдВ рдХреЛ рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рд░реЗрдЬрд╝рд░ рд╡реНрдпреВ рдЗрдВрдЬрди рдФрд░ рд╕рд┐рдВрдкрд▓реАрдореЗрдореНрдмрд░рд╢рд┐рдкред

ASP.NET рд╕рджрд╕реНрдпрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ


рдорд╛рдирдХ рдкреНрд░рджрд╛рддрд╛ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрджрд┐ рдирд┐рдореНрди рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рдкреВрд░реА рд╣реЛрддреА рд╣реИрдВ: рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА SQL рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рдПрдЧреА рдФрд░ рдпрд╣ рдХрд┐ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо, рдкрд╛рд╕рд╡рд░реНрдб, IsApproved, CreationDate ...) рдФрд░ рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рдПрдЧреАред рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдкреНрд░рджрд╛рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред

рдкреВрд░реНрдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ SQL рд╕рд░реНрд╡рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ


рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреВрд░реНрдг рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╡рд╛рд▓реЗ ASP.NET рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЛ SQL рд╕рд░реНрд╡рд░ рдХреЗ рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ, SQL рд╕рд░реНрд╡рд░ рдХреИрд╢ рдФрд░ рдЕрдиреНрдп рд╕рд░реНрд╡рд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдХрд╛рдо рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рджрд╛рддрд╛ SQL Azure рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

рджреВрд╕рд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ


SQL рд╕рд░реНрд╡рд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рджрд╛рддрд╛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд╕реЗрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рдЕрддреНрдпрдзрд┐рдХ рдЙрдиреНрдореБрдЦ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдЗрди рддрд░реАрдХреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдкрд░ рдПрдХ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдХрд╛рдо рд╣реИ, рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдХрдИ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рддрд░реАрдХреЗ рд╣реЛрдВрдЧреЗ рдЬрд┐рдирдореЗрдВ System.NotImplementedException , рдЬреЛ рдХреЛрдб рдХреЛ рдЪрд┐рддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдУрд░рд┐рдПрдВрдЯреЗрд╢рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛> рднреВрдорд┐рдХрд╛


рдореМрдЬреВрджрд╛ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рддрд╛ рдЗрд╕ рдореЙрдбрд▓ рдкрд░ рдХрдбрд╝рд╛рдИ рд╕реЗ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╣реЛрддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреЛрдбрд╝реА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдореЙрдбрд▓ рдУрдЙрде рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдкрд╛рд╕рд╡рд░реНрдб рдирд╣реАрдВ рд╣реИ)ред

рдПрдХ рднреВрдорд┐рдХрд╛-рдЙрдиреНрдореБрдЦ рдкреНрд░рдгрд╛рд▓реА рд╣рдореЗрд╢рд╛ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реЛрдЧреА; рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд╕реНрддреБрдУрдВ рдпрд╛ рдХрд╛рд░реНрдпреЛрдВ (рджрд╛рд╡реЗ) рддрдХ рдкрд╣реБрдБрдЪ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмреВрдБрдж рдХреЙрд▓рдо рдХреЗ рд╕рд╛рде рдПрдХ рдХрдард┐рди рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИред

SimpleMembership рдмрдврд╝рд╛рдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдгрд╛рд▓реА


рд╕рд┐рдВрдкрд▓ рдореЗрдореНрдмрд░рд╢рд┐рдк рдХрд╛ рд╡рд┐рдХрд╛рд╕ рд╕рд┐рд░реНрдл рдКрдкрд░ рдЙрдардиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдореИрдереНрдпреВ рдУрд╕рдмреЛрд░реНрди рдиреЗ ASP.NET рд╡реЗрдмрдкреЗрдЬ рдХреЗ рд╕рд╛рде SimpleMembership рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЕрдкрдиреЗ рдкреЛрд╕реНрдЯ рдореЗрдВ рдмрддрд╛рдпрд╛ рдХрд┐ SimpleMembership рдХреЛ рдЖрдкрдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

SimpleMembership рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ 2 рдХреЙрд▓рдо рд╣реЛрдВ: "ID" рдФрд░ "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо"ред рдпрд╣рд╛рдБ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЗрди рд╕реНрддрдВрднреЛрдВ рдХрд╛ рдХреЛрдИ рднреА рдирд╛рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред


рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рд╕реНрдХреАрдорд╛

рдЕрдм рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ SimpleMembership рдмрддрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ: рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рдХрдиреЗрдХреНрд╢рди рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЬреЛрдбрд╝реЗрдВред
 <connectionStrings> <add name="DefaultConnection" connectionString="Data Source=ARCTURUS\SQLEXPRESS;Initial Catalog=MembershipDemoDB;Integrated Security=True;Pooling=False" providerName="System.Data.SqlClient" /> </connectionStrings> 

рдФрд░ рдЖрд░рдВрднреАрдХрд░рдг рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ:
 WebSecurity.InitializeDatabaseConnection("DefaultConnection", "Users", "Id", "Name", autoCreateTables: true); 


рд╕рд╛рдЗрдЯ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдФрд░ рдЖрд░рдВрднреАрдХрд░рдг рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, SimpleMembership рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдЧрд╛ред рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

SimpleMembership рдЯреЗрдмрд▓ рдмрдирд╛рдпрд╛

SimpleMembership SQL рд╕рд░реНрд╡рд░ (SQL Azure, SQL Server CE, SQL Server Express рдФрд░ LocalDB) рдХреА рдкреВрд░реА рд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╕рдм рдХреБрдЫ SQL рдХреЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред

рдХреЛрдб рдкреНрд░рдердо рдХреЗ рд╕рд╛рде EntityFramework рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


ASP.NET рд╕рджрд╕реНрдпрддрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЦрд╛рддреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рд╕реАрдзреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдбреЗрдЯрд╛ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪ рд╕рдХрддреЗред рдЬрдмрдХрд┐ SimpleMembership рдХреЛ рдзреНрдпрд╛рди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдХрд┐рд╕ рддрд╛рд▓рд┐рдХрд╛ рдФрд░ рдХреИрд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкрддрд╛ рдЬреЛрдбрд╝реЗрдВред

 [Table("Users")] public class UserProfile { [Key] [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] public int Id { get; set; } public string Name { get; set; } public string Address { get; set; } } 


рдЕрдм рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд╕реАрдзреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЖрдкрдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ ASP.NET рд╕рджрд╕реНрдпрддрд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдмреАрдЪ рдПрдХ рдкрд░рдд рдХреЗ рд░реВрдк рдореЗрдВ SimpleMembership рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЖрдк рдЗрд╕реЗ рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗ, рдЖрдк рдореВрд▓ SimpleMembership рд░рд┐рдХреЙрд░реНрдб рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЬрд╛рдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ SimpleMembership рдХреЛ ExtendedMembershipProvider рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИред

ASP.NET MVC 4 рдЗрдВрдЯрд░рдиреЗрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ


рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ, SimpleMembership рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрдВрддреНрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

ASP.NET MVC 4 рдЗрдВрдЯрд░рдиреЗрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ


WebSecurity рдХрд┐рд╕реА рднреА ExtendedMembershipProvider рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, SimpleMembershipProvider рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

SimpleMembership рдХреА рд╕реНрдерд╛рдкрдирд╛


рдПрдХ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП SimpleMembership рдЬреЛрдбрд╝рдирд╛


рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдкреНрд░рджрд╛рддрд╛ ASP.NET MVC 4 рдЗрдВрдЯрд░рдиреЗрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХреБрдЫ (рд╕реНрд╡рдпрдВ рд╕рд╣рд┐рдд) рдПрдХ рдЦрд╛рд▓реА рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВред рдЖрдкрдХреЛ 2 рд▓рд┐рдВрдХ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: WebMatrix.Data рдФрд░ WebMatrix.WebDataред рдпрд╛ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде NuGet рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрди рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ)ред

рд╡реЗрдмрдореИрдЯ рдбреЗрдЯрд╛

рдЕрдм рдЖрдкрдХреЛ рдПрдХ рдкреНрд░рджрд╛рддрд╛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ WebMatrix рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

  <roleManager enabled="true" defaultProvider="SimpleRoleProvider"> <providers> <clear /> <add name="SimpleRoleProvider" type="WebMatrix.WebData.SimpleRoleProvider,WebMatrix.WebData" /> </providers> </roleManager> <membership defaultProvider="SimpleMembershipProvider"> <providers> <clear /> <add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData" /> </providers> </membership> 


рдЪреВрдВрдХрд┐ WSAT рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рднреВрдорд┐рдХрд╛рдПрдБ рдмрдирд╛рдиреЗ рдХреЗ 2 рддрд░реАрдХреЗ рд╣реИрдВред рдпрджрд┐ EntityFramework Code First рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде Micragion рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛:

 public partial class AddDefaultUser : DbMigration { public override void Up() { if (!WebSecurity.Initialized) { WebSecurity.InitializeDatabaseConnection("DefaultConnection", "Users", "Id", "UserName", autoCreateTables: true); } var roles = (SimpleRoleProvider)Roles.Provider; var membership = (SimpleMembershipProvider)Membership.Provider; if (!roles.RoleExists("Admin")) { roles.CreateRole("Admin"); } if (membership.GetUser("Admin", false) == null) { membership.CreateUserAndAccount("Admin", "SuperAdminPassword"); } if (!roles.GetRolesForUser("Admin").Contains("Admin")) { roles.AddUsersToRoles(new[] { "Admin" }, new[] { "Admin" }); } } public override void Down() { throw new NotImplementedException(); } } 


рдпрд╛ рдЖрдк рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рд╕реАрдзреЗ рдПрдХ рднреВрдорд┐рдХрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рднреВрдорд┐рдХрд╛ рд╕реМрдВрдк рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдВрджрд░реНрдн


Source: https://habr.com/ru/post/In192238/


All Articles