How to get SDTMap properties in Spring Cloud Stream

As an alternative solution to what @marc suggested, you could also publish messages that have a single user property of type SDTMap and set all your custom properties in there. That way when its consumed by a Spring Cloud Stream application, those would all be grouped up under a single Spring message header.