void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { var modelCombineRequestProcessor = new ModelCombineRequestProcessor(customizeRequestProcessorsEventArgs.Permissions); var keyValuePair = new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(ModelCombinePermissionRequest), modelCombineRequestProcessor); customizeRequestProcessorsEventArgs.Processors.Add(keyValuePair); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { var keyValuePairs = new[]{ new KeyValuePair<Type, IPermissionRequestProcessor>(typeof (MyDetailsOperationRequest), new MyDetailsRequestProcessor(customizeRequestProcessorsEventArgs.Permissions)), new KeyValuePair<Type, IPermissionRequestProcessor>(typeof (AnonymousLoginOperationRequest), new AnonymousLoginRequestProcessor(customizeRequestProcessorsEventArgs.Permissions)), new KeyValuePair<Type, IPermissionRequestProcessor>(typeof (IsAdministratorPermissionRequest), new IsAdministratorPermissionRequestProcessor(customizeRequestProcessorsEventArgs.Permissions)) }; foreach (var keyValuePair in keyValuePairs) { customizeRequestProcessorsEventArgs.Processors.Add(keyValuePair); } }
public static void CustomizeRequestProcessors(CustomizeRequestProcessorsEventArgs e) { var customPermissions = e.Permissions.WithCustomPermissions(); var fieldName = "permissionsGroupedByRole"; var requestProcessors = e.Processors.Select(pair => pair.Value) .Where(processor => processor is SerializablePermissionRequestProcessorWrapper || processor is NavigationPermissionRequestProcessor); foreach (var processor in requestProcessors) { IPermissionRequestProcessor requestProcessor; if (processor is NavigationPermissionRequestProcessor) { requestProcessor = processor; var enumerable = ((IEnumerable <IEnumerable <IOperationPermission> >)requestProcessor.GetFieldValue(fieldName)).Select( permissions => new PermissionDictionary(permissions).WithSecurityOperationAttributePermissions() .GetPermissions <IOperationPermission>()); requestProcessor.SetFieldValue(fieldName, enumerable); customPermissions = new PermissionDictionary(customPermissions.GetPermissions <IOperationPermission>() .Concat(enumerable.SelectMany(permissions => permissions))); } else { requestProcessor = (IPermissionRequestProcessor)processor.GetFieldValue("requestProcessor"); if (requestProcessor is ServerPermissionRequestProcessor) { fieldName = "permissionsDictionary"; var processorDictionary = ((IPermissionDictionary)requestProcessor.GetFieldValue(fieldName)) .WithSecurityOperationAttributePermissions(); requestProcessor.SetFieldValue(fieldName, processorDictionary); var operationPermissions = processorDictionary.GetPermissions <IOperationPermission>().ToList(); customPermissions = new PermissionDictionary(customPermissions.GetPermissions <IOperationPermission>() .Concat(operationPermissions)); } } } var keyValuePairs = new[] { new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(MyDetailsOperationRequest), customPermissions.GetProcessor <MyDetailsRequestProcessor>()), new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(AnonymousLoginOperationRequest), customPermissions.GetProcessor <AnonymousLoginRequestProcessor>()), new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(IsAdministratorPermissionRequest), customPermissions.GetProcessor <IsAdministratorPermissionRequestProcessor>()), new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(NavigationItemPermissionRequest), customPermissions.WithHiddenNavigationItemPermissions() .GetProcessor <NavigationItemPermissionRequestProcessor>()) }; foreach (var keyValuePair in keyValuePairs) { e.Processors.Add(keyValuePair); } }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { var keyValuePairs = new[] { new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(MyDetailsOperationRequest), new MyDetailsRequestProcessor(customizeRequestProcessorsEventArgs.Permissions)), new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(AnonymousLoginOperationRequest), new AnonymousLoginRequestProcessor(customizeRequestProcessorsEventArgs.Permissions)), new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(IsAdministratorPermissionRequest), new IsAdministratorPermissionRequestProcessor(customizeRequestProcessorsEventArgs.Permissions)) }; foreach (var keyValuePair in keyValuePairs) { customizeRequestProcessorsEventArgs.Processors.Add(keyValuePair); } }
static void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs e) { List <IOperationPermission> result = new List <IOperationPermission>(); SecurityStrategyComplex security = (SecurityStrategyComplex)sender; WXafUser user = (WXafUser)security.User; foreach (WXafRole role in user.Roles) { foreach (ActionPermission action in role.ActionPermissions) { result.Add(new ExecuteActionPermission(action.ActionId)); } } IPermissionDictionary dictionary = new PermissionDictionary(result); e.Processors.Add(typeof(ExecuteActionPermissionRequest), new ExecuteActionRequestProcessor(dictionary)); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { var modelCombineRequestProcessor = new ModelCombineRequestProcessor(customizeRequestProcessorsEventArgs.Permissions); var keyValuePair = new KeyValuePair<Type, IPermissionRequestProcessor>(typeof(ModelCombinePermissionRequest), modelCombineRequestProcessor); customizeRequestProcessorsEventArgs.Processors.Add(keyValuePair); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { customizeRequestProcessorsEventArgs.Processors.Add(new KeyValuePair<Type, IPermissionRequestProcessor>(typeof(StateMachineTransitionOperationRequest), new StateMachineTransitionRequestProcessor(customizeRequestProcessorsEventArgs.Permissions))); }
static void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { var requestProcessor = new OverallCustomizationAllowedPermissionRequestProcessor(customizeRequestProcessorsEventArgs.Permissions.WithCustomPermissions()); customizeRequestProcessorsEventArgs.Processors.Add(new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(OverallCustomizationAllowedPermissionRequest), requestProcessor)); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs e) { CustomizeRequestProcessors(e); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { customizeRequestProcessorsEventArgs.Processors.Add(new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(StateMachineTransitionRequestProcessor), new StateMachineTransitionRequestProcessor(customizeRequestProcessorsEventArgs.Permissions))); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs e) { var keyValuePair = new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(ModelCombinePermissionRequest), e.Permissions.GetProcessor <ModelCombineRequestProcessor>()); e.Processors.Add(keyValuePair); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs e) { var keyValuePair = new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(StateMachineTransitionOperationRequest), e.Permissions.WithCustomPermissions().GetProcessor <StateMachineTransitionRequestProcessor>()); e.Processors.Add(keyValuePair); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { customizeRequestProcessorsEventArgs.Processors.Add(new KeyValuePair <Type, IPermissionRequestProcessor>(typeof(ModelCombineRequestProcessor), new ModelCombineRequestProcessor(customizeRequestProcessorsEventArgs.Permissions))); }
void OnCustomizeRequestProcessors(object sender, CustomizeRequestProcessorsEventArgs customizeRequestProcessorsEventArgs) { customizeRequestProcessorsEventArgs.Processors.Add(new KeyValuePair<Type, IPermissionRequestProcessor>(typeof(ModelCombineRequestProcessor), new ModelCombineRequestProcessor(customizeRequestProcessorsEventArgs.Permissions))); }