public void AddSystemSecurableObject(SecurableApplication application) { #region Adding the application initialization data. GatekeeperFactory.ApplicationSvc.Add(application); // adding the system securable object type. SecurableObjectType systemObjectType = new SecurableObjectType() { Id = 0, Application = application, Name = "System", Description = "System Securable Object Type" }; // adding the systemObjectType as a securable object type. GatekeeperFactory.SecurableObjectTypeSvc.Add(systemObjectType); application.SecurableObjectType = systemObjectType; // adding the application as a securable object. this.AddSecurableObject(application); // defining the system administrator role. Role systemAdministerRole = new Role() { Application = application, Name = "Administrator", Description = "Administers the System", SecurableObjectType = systemObjectType }; // defining the system user role. Role systemUserRole = new Role() { Application = application, Name = "User", Description = "Uses the System", SecurableObjectType = systemObjectType }; // adding the system administrator and the system user roles. IRoleSvc roleSvc = GatekeeperFactory.RoleSvc; roleSvc.Add(systemAdministerRole);//adding the systemAdministerRole as a role. roleSvc.Add(systemUserRole);//adding the systemUserRole as a role. // defining the Administer_System right. Right administerSystemRight = new Right() { Application = application, Name = "Administer_System", Description = "Administers the System", SecurableObjectType = systemObjectType }; // defining the View_System right. Right viewSystemRight = new Right() { Application = application, Name = "View_System", Description = "Views the System", SecurableObjectType = systemObjectType }; // adding the Administer_System and the View_System rights. IRightSvc rightSvc = GatekeeperFactory.RightSvc; rightSvc.Add(administerSystemRight);//adding the administerSystemRight as a right. rightSvc.Add(viewSystemRight);//adding the viewSystemRight as a right. // adding the role-right assignment (System Admin - Administer_System) RoleRightAssignment admin_administer = new RoleRightAssignment() { Application = application, Role = systemAdministerRole, Right = administerSystemRight, SecurableObjectType = systemObjectType }; // adding the role-right assignment (System Admin - View_System) RoleRightAssignment admin_view = new RoleRightAssignment() { Application = application, Role = systemAdministerRole, Right = viewSystemRight, SecurableObjectType = systemObjectType }; // adding the role-right assignment (System User - View_System) RoleRightAssignment user_view = new RoleRightAssignment() { Application = application, Role = systemUserRole, Right = viewSystemRight, SecurableObjectType = systemObjectType }; IRoleRightAssignmentSvc rraSvc = GatekeeperFactory.RoleRightAssignmentSvc; rraSvc.Add(admin_administer); rraSvc.Add(admin_view); rraSvc.Add(user_view); #endregion }
/// <summary> /// Displays the project with a specified application id. /// </summary> /// <param name="applicationId">The application id,identifier of a application.</param> public void Display(int applicationId) { #region Logging if (log.IsDebugEnabled) log.Debug(Messages.MethodEnter); #endregion SecurableApplication obj = new SecurableApplication(this.Application); new Permission(obj, "view_system").Demand(); //Gets the application object of applicationId from database. Application application = GatekeeperFactory.ApplicationSvc.Get(applicationId); this.PropertyBag["application"] = application; #region BreadcrumbTrail this.AddToBreadcrumbTrail(new Link() { Text = "Home", Controller = "home", Action = "default" }); this.AddToBreadcrumbTrail(new Link() { Text = application.Name}); this.RenderBreadcrumbTrail(); #endregion #region Logging if (log.IsDebugEnabled) log.Debug(Messages.MethodLeave); #endregion }