Decal axis constrain?

Hello there!
So, i’m trying to use a decal to mimic a light projecting an image, but the image gets projected on both top and bottom of the model. Is there a way to set the decal shader to only affect (project onto) +Z and not -Z?

I tried using the following with no luck (maybe due to the nature of decals?..

Please help =)

I’m also facing a similar problem, where I want my decal to be projected on horizontal surfaces only, and not on walls as well. I think that solution doesn’t work because it can’t really convert from tangent to world space in a decal material.
Have you managed to get it to work?