The United Kingdom's vote last year to exit the European Union has strained ties between its four constituent parts because England and Wales voted to leave while Scotland and Northern Ireland voted to remain.
The Edinburgh legislature's vote backing Sturgeon's bid for a referendum in late 2018 or early 2019 came a day before British Prime Minister Theresa May triggers Article 50 of the EU's Lisbon Treaty, the first formal step towards Brexit.
It is far from certain that the British government will authorise a new independence vote. May has said "now is not the time" and insisted her focus was on getting a good Brexit deal that would work for every part of the UK.
"Scotland, like the rest of the UK, stands at a crossroads," Sturgeon told the Edinburgh assembly at the start of Tuesday's debate.
"When Article 50 of the Lisbon Treaty is triggered tomorrow, change for our country becomes inevitable ... There will be an impact on trade, on investment and on living standards, and an impact on the very nature of the society we live in."
Scotland voted against independence by 55 to 45 percent in 2014 but Sturgeon argues circumstances have changed due to the Brexit vote and that Scots should not be dragged out of the EU against their will.
She has proposed a new independence referendum between autumn 2018 and spring 2019, once the terms of Brexit have become clearer but before it has taken effect.
"When the nature of the change that is made inevitable by Brexit becomes clear, that change should not be imposed upon us," she said in parliament on Tuesday.
"The people of Scotland should have the right to choose between Brexit, possibly a very hard Brexit, or becoming an independent country able to chart our own course."
Sturgeon's motion passed by 69 votes to 59.
She has repeatedly said it would be anti-democratic for London to stand in the way of Scotland's elected government if it wanted to hold a referendum.
She said on Tuesday that if London sought to block her plan, she would return to the Scottish parliament after the Easter break to say how she would handle the situation. She gave no further details.
The vote in the Scottish parliament had originally been scheduled to take place on Wednesday last week, but was suspended because of an attack on the British parliament in London in which five people died, including the attacker.
(Reporting by Russell Cheyne in Edinburgh and Estelle Shirbon in London; editing by Stephen Addison)