private static void AddUserLevelPermissionMessage(
     string operation,
     AuthorizationInformation info,
     IUser user,
     Permission permission,
     string entityDescription,
     string entitiesGroupsDescription)
 {
     if (permission.User != null)
     {
         string target = GetPermissionTarget(permission, entityDescription, entitiesGroupsDescription);
         if (permission.Allow)
         {
             info.AddAllow(Resources.PermissionGrantedForUser,
                           operation,
                           user.SecurityInfo.Name,
                           target,
                           permission.Level);
         }
         else
         {
             info.AddDeny(Resources.PermissionDeniedForUser,
                          operation,
                          user.SecurityInfo.Name,
                          target,
                          permission.Level);
         }
     }
 }
 private void AddUserGroupLevelPermissionMessage(string operation, AuthorizationInformation info,
                                                 IUser user, Permission permission,
                                                 string entityDescription,
                                                 string entitiesGroupsDescription)
 {
     if (permission.UsersGroup != null)
     {
         UsersGroup[] ancestryAssociation =
             authorizationRepository.GetAncestryAssociation(user, permission.UsersGroup.Name);
         string groupAncestry = Strings.Join(ancestryAssociation, " -> ");
         if (permission.Allow)
         {
             info.AddAllow(Resources.PermissionGrantedForUsersGroup,
                           operation,
                           permission.UsersGroup.Name,
                           GetPermissionTarget(permission, entityDescription, entitiesGroupsDescription),
                           user.SecurityInfo.Name,
                           permission.Level,
                           groupAncestry);
         }
         else
         {
             info.AddDeny(Resources.PermissionDeniedForUsersGroup,
                          operation,
                          permission.UsersGroup.Name,
                          GetPermissionTarget(permission, entityDescription, entitiesGroupsDescription),
                          user.SecurityInfo.Name,
                          permission.Level,
                          groupAncestry);
         }
     }
 }
		private static void AddUserLevelPermissionMessage(
			string operation,
			AuthorizationInformation info,
			IUser user,
			Permission permission)
		{
			if (permission.User != null)
			{
				string target = GetPermissionTarget(permission);
				if (permission.Allow)
				{
					info.AddAllow(Resources.PermissionGrantedForUser,
					              operation,
					              user.SecurityInfo.Name,
					              target,
					              permission.Level);
				}
				else
				{
					info.AddDeny(Resources.PermissionDeniedForUser,
					             operation,
					             user.SecurityInfo.Name,
					             target,
					             permission.Level);
				}
			}
		}
		private void AddUserGroupLevelPermissionMessage(string operation, AuthorizationInformation info,
		                                                IUser user, Permission permission)
		{
			if (permission.UsersGroup != null)
			{
				UsersGroup[] ancestryAssociation =
					authorizationRepository.GetAncestryAssociation(user, permission.UsersGroup.Name);
				string groupAncestry = Strings.Join(ancestryAssociation, " -> ");
				if (permission.Allow)
				{
					info.AddAllow(Resources.PermissionGrantedForUsersGroup,
					              operation,
					              permission.UsersGroup.Name,
					              GetPermissionTarget(permission),
					              user.SecurityInfo.Name,
					              permission.Level,
					              groupAncestry);
				}
				else
				{
					info.AddDeny(Resources.PermissionDeniedForUsersGroup,
					             operation,
					             permission.UsersGroup.Name,
					             GetPermissionTarget(permission),
					             user.SecurityInfo.Name,
					             permission.Level,
					             groupAncestry);
				}
			}
		}