Johansson's spokesman said the 29-year-old actress had "a fundamental difference of opinion" with Oxfam International because the charity opposes all trade from Israeli settlements, saying they are illegal and deny Palestinian rights.
A statement said: "Scarlett Johansson has respectfully decided to end her ambassador role with Oxfam after eight years. She and Oxfam have a fundamental difference of opinion in regards to the boycott, divestment and sanctions movement.
"She is very proud of her accomplishments and fundraising efforts during her tenure."
Earlier this month, the star of The Avengers and Her signed up as the first global brand ambassador of soft drinks company SodaStream International. She will appear in an advert for the firm at Sunday's Super Bowl.
SodaStream has been criticised by pro-Palestinian activists for maintaining a factory in an Israeli settlement in the West Bank, a territory captured by Israel in 1967 and claimed by the Palestinians.
In her role as an Oxfam ambassador, she travelled to India, Sri Lanka and Kenya.