ASP.NET 웹 사이트 관리 도구없이 "역할을 사용하거나 사용하지 않도록 설정"또는 "역할을 만들거나 관리"할 수있는 방법은 무엇입니까? 이 도구를 사용하여 내 MVC3 웹 응용 프로그램에 사용자를 만들거나 사용자를 관리 할 수 있습니다. 그러나이 도구를 관리자에게 "역할 만들기/관리"권한을 부여하고 워크 스테이션에 Visual Studio가 설치되어 있지 않습니다..NET 웹 사이트 관리 도구
답변
당신은 당신의 컨트롤러 내부에서 역할에 쉽게 액세스 할 수 있습니다
if (!Roles.RoleExists("Guest"))
Roles.CreateRole("Guest");
Roles.AddUserToRole(userName, "Guest");
당신은 단지 컨트롤러를 만들 경우에 따라서
과를 몇 가지 Action + View를 사용하면 나만의 도구를 만들 수 있습니다.
물론 액세스를 제한하는 것이 좋습니다 : 나는 편집의 사용자 및 역할을 취급하고 어떻게
[Authorize(Roles = "Admin, Super User")]
public class RolesController : Controller
{
}
ASP.NET 멤버 자격 공급자를 사용하는 자체 관리 도구를 만들어야합니다.
또는 오픈 소스 프로젝트 http://websitemanager.codeplex.com/이 유용 할 수 있습니다.
Henk이 추천 한대로 내 관리 페이지를 만들려고합니다. 고맙습니다! – rk1962
웹 사이트 구성 파일을 편집하는 방법을 "교육"해야 할 수도 있습니다. 그냥 그들이 XML을 편집하는 경우에도 그렇게 큰 거래를 역할을하지 편집이 직접
이다.
내 컨트롤러에 다음 코드가 있습니다. 파트너 IList가 필요 없어도 괜찮습니다. 역할과 함께 AccountController에서 사용자를 모델링하고 싶을 것입니다 (사용자 계정에 이것을 사용한다고 가정).
//
// POST: /Account/Edit
[HttpPost]
public ActionResult Edit(User model)
{
MembershipUser user = Membership.GetUser(model.UserName);
UserProfile profile = UserProfile.GetProfile(model.UserName);
user.Email = model.Email;
user.IsApproved = model.ActiveAccount;
profile.PartnerID = model.PartnerID;
#region If Else Block for Role
if (Roles.IsUserInRole(model.UserName, "Administrator") && !model.IsAdministrator)
{
Roles.RemoveUserFromRole(model.UserName, "Administrator");
}
else if (!Roles.IsUserInRole(model.UserName,"Administrator") && model.IsAdministrator)
{
Roles.AddUserToRole(model.UserName, "Administrator");
}
if (Roles.IsUserInRole(model.UserName, "Reporter") && !model.IsReporter)
{
Roles.RemoveUserFromRole(model.UserName, "Reporter");
}
else if (!Roles.IsUserInRole(model.UserName, "Reporter") && model.IsReporter)
{
Roles.AddUserToRole(model.UserName, "Reporter");
}
if (Roles.IsUserInRole(model.UserName, "Contributor") && !model.IsContributor)
{
Roles.RemoveUserFromRole(model.UserName, "Contributor");
}
else if (!Roles.IsUserInRole(model.UserName, "Contributor") && model.IsContributor)
{
Roles.AddUserToRole(model.UserName, "Contributor");
}
if (Roles.IsUserInRole(model.UserName, "Approver") && !model.IsApprover)
{
Roles.RemoveUserFromRole(model.UserName, "Approver");
}
else if (!Roles.IsUserInRole(model.UserName, "Approver") && model.IsApprover)
{
Roles.AddUserToRole(model.UserName, "Approver");
}
#endregion
Membership.UpdateUser(user);
return RedirectToAction("ManageUsers", "Account");
}
는 희망이 당신에게 당신이해야 할 일의 아이디어를 제공 같은
public ActionResult Edit(string UserName)
{
IList<Partner> partners = r.ListPartners();
MembershipUser user = Membership.GetUser(UserName);
UserProfile profile = UserProfile.GetProfile(user.UserName);
User model = new User();
model.UserName = user.UserName;
model.Email = user.Email;
model.ActiveAccount = user.IsApproved;
model.PartnerID = profile.PartnerID;
model.IsAdministrator = Roles.IsUserInRole(user.UserName, "Administrator");
model.IsApprover = Roles.IsUserInRole(user.UserName, "Approver");
model.IsContributor = Roles.IsUserInRole(user.UserName, "Contributor");
model.IsReporter = Roles.IsUserInRole(user.UserName, "Reporter");
IList<Partner> p = r.ListPartners();
ViewBag.Partners = new SelectList(p.AsEnumerable(), "PartnerID", "Name", model.PartnerID);
return View(model);
}
내 포스트 보인다. 사용자 모델로보기를 만들 수 있다고 가정합니다.
샘플 코드를 제공해 주셔서 감사합니다. – rk1962
- 1. 웹 사이트 관리 도구 :
- 2. 웹 사이트 관리 도구
- 3. 웹 사이트 접근성을 테스트하는 도구
- 4. 웹 사이트 버전 관리
- 5. 간단한 독립형 웹 사이트 도구
- 6. ASP.NET 사용자 지정 역할 공급자가있는 웹 사이트 관리 도구
- 7. WSAT (ASP.NET 웹 사이트 관리 도구)가 작동하지 않습니다.
- 8. asp.net 관리 도구 웹 사이트의 tablenames 이름을
- 9. 오프라인 웹 사이트 검색 도구
- 10. 웹 사이트 콘텐츠 정리 도구?
- 11. 개념적 웹 사이트 디자인 도구
- 12. 웹 사이트 관리 도구가 시작되지 않습니다.
- 13. 웹 사이트 버전 관리 사례
- 14. .Net 다국어 웹 사이트
- 15. .Net 웹 사이트 라이센스
- 16. EC2 .NET 웹 사이트 설치 오류
- 17. WebSQL 크롬 관리 도구
- 18. .NET 웹 서비스 - 웹 요청 관리
- 19. asp.net 웹 관리 도구 사용자 데이터베이스
- 20. ASP.Net 사이트 구성 도구
- 21. Google 웹 사이트 최적화 도구 확인 경고
- 22. 웹 사이트 아키텍처 디자인을위한 최상의 도구
- 23. 간단하면서도 강력한 웹 사이트 맵 디자인 도구?
- 24. iPhone 용 웹 사이트 최적화 도구
- 25. 웹 사이트 소스 코드를 이해하는 도구
- 26. 웹 사이트 없음 도구 모음 없음
- 27. Google 웹 사이트 최적화 도구 제어 자바
- 28. 웹 사이트 용 UML 또는 디자인 도구
- 29. Dreamweaver CS5 - CSS 웹 사이트 디자인 도구
- 30. 데이터베이스 정규화에 도움이되는 도구 또는 웹 사이트
나는 당신의 해결책을 시도 할 것이다. 고맙습니다! – rk1962
나는 당신의 솔루션을 시도했고 효과가있었습니다. 정말 고맙습니다! – rk1962
@ rk1962 자신 만의 역할 관리자 도구를 만드는 방법에 대한 코드를 공유 하시겠습니까? 내 시드 메서드에서 사용자가이 대답을 수 있지만 일단이 코드가 생산에 제공되면 어떻게 될지 걱정됩니다. – Komengem