현재 C# MVC로 작성된 시스템을 수정하고 있습니다.역할에서 역할이 작동하지 않습니다. MVC C#
저는 관리자가 제한된 관리자 기능을 가진 사용자 계정을 만들 수있는 관리자 영역에 추가 기능을 추가했습니다. 나는 새로운 기능에 대한 각각의 컨트롤러를 통해 다음과 같은 넣어했습니다
[Authorize(Roles = "Administrator")]
그러나, 나는 제한된 관리자 계정을 사용하여 로그인하고 해당 페이지로 이동하면, 그것은 나를 통해 할 수 있습니다.
내가 올바른 방향으로하고있는 것처럼 보이기 때문에 나는 혼란 스럽지만, MVC에도 상당히 익숙하다. 내가 확인할 수있는 다른 것이 있는가? web.config 파일에서 아무 것도 변경하지 않아도됩니다.
위의 정보가 이미 부족하다는 것을 알고 기성품 해결책을 찾지 못했지만 문제를 해결하기 위해 무엇을 검사 할 수 있는지 자세히 알아 봅니다.
감사
편집 :
이 새 역할/계정이 생성 된 방법이다. 너무 쉽게 가십시오, 이것은 첫번째 도랑 시도이고, 많은 검증이 없습니다.
[Authorize(Roles = "Administrator")]
[HttpPost]
public ActionResult AddSalesManager(App.Web.Areas.Administrator.Models.SalesManager model, FormCollection formValues)
{
if (formValues["Cancel"] != null)
{
return RedirectToAction("Index");
}
if (!string.Equals(model.password, model.confirmpassword))
{
ModelState.AddModelError("password", "Password and Confirmation must match");
}
if (ModelState.IsValid)
{
using (ModelContainer ctn = new ModelContainer())
{
// First, create the user account inside the ASP.Net membership system.
//
Membership.ApplicationName = "App";
Roles.ApplicationName = "App";
if (!Roles.RoleExists("LimitedAdmin"))
Roles.CreateRole("LimitedAdmin");
// MembershipCreateStatus createStatus = MembershipService.CreateUser(model.email, model.password, model.email);
if (Membership.GetUser(model.email) == null)
{
Membership.CreateUser(model.email, model.password);
Roles.AddUserToRole(model.email, "LimitedAdmin");
}
}
}
return RedirectToAction("Index");
}
이 역할이 도움이 설정하는 방법 게시. – jfar
2 초가 걸립니다. – 109221793
사용자에게 여러 역할이 있습니까? – jfar