Under what condition would the law of one price hold? Under the consumption-based model for asset pricing, different people will have different prices because of their different utility functions. 

What is the force that make the law of one price hold? 

You might say that it is a result of no arbitrage, but Kerry Back states in his book Asset Pricing and Portfolio Choice Theory states the following


  The law of one price is a weaker condition than absence of arbitrage opportunities: It is implied by the absence of arbitrage opportunities, but it does not imply the absence of arbitrage opportunities.


Based on this statement, absence of arbitrage is a stronger condition; the law of one price should hold even there is arbitrage in the market. 
So What is the force that make the law of one price hold?
Converting my comments to an answer. The law of one price (LoP) is an economic concept which posits that "a good must sell for the same price in all locations". This law is derived from the assumption of the inevitable elimination of all arbitrage. Source wikipedia.

Arbitrage opportunities imply the law of one price but the reverse is not always true. In logic, LoP is a necessary condition for arbitrage but not a sufficient one. In common language, we cannot out rule out the fact that the law of one price may hold without full arbitrage. If the price of an asset is not different for different people, the law of one price holds without assuming full arbitrage.