Logical criteria that restrict moving deals between stages based on specific property values

you can just create a rule using the workflow that moves the deal on the basis of the information in the properties. And remove the permissions to move the deal by sales reps.