Currently, it is impossible to apply a mask to only one object, you need to use separate layers for each mask you wish to apply if the objects can overlap. This makes it impossible, for example, to have a game with many characters who might have some kind of powerup masked on them if they can get close enough to each other. As in that case, the masks would overlap. Having a separate layer for each character would be extremely unintuitive workaround, and you cannot create them at runtime.
I'd suggest a simple behaviour. You would attach it to both the mask and the object. The behaviour would have one boolean and one variable. The boolean would be ticked for the mask. The variable would hold any value, and the mask with the behaviour would only affect the object with the same value.
I don't know if there are technical limitations making this somehow impossible, but functionally I feel like the lack of this feature is a big flaw.