A message broker customization system and method with user administered policy functions. The system uses user defined and controlled policy functions to programmatically, customize the behaviors of a message broker's processing of messages and further allowing for that customization to take place on a per channel basis. This provides for greater functionality and flexibility to the users of a message system, especially when the users of the message system do not have administrative control over the message broker.