Physically Simulated Buttons

Hi, I’m designing games for VR, and I am trying to go for an interaction method similar to how games like Job Simulator allow the user to interact with their environment. In Job Simulator, there are buttons on some models in the game that when you bring your hand to them (like with Vive controllers) you are able to depress them a bit into the object they are attached to (think keys on a keyboard). What is the best way to implement buttons like this in game, keeping them as stable as possible? They only have to move on one axis (directly into the panel they rest in), and should not go past a certain point. Preferably it should not be possible to “scoop them up” and pull them out of their panel either. Here’s some gameplay showing what kind of interaction I’d like: Job Simulator Gameplay - Office Worker Demo - HTC Vive - YouTube