Liz Truss has said Nicola Sturgeon should focus on Scotland's domestic issues rather than "agitating" for a second independence referendum.
The Tory leadership frontrunner told a hustings event in Perth on Tuesday she would "not allow" another vote on independence if she becomes prime minister on 5 September.
Protesters gathered outside the city's concert hall as they shouted "Tories out" and held banners with "Scottish not British" while pushing through barriers in the tensest hustings yet - and the first and only one in Scotland.
Ms Truss and Ms Sturgeon have been exchanging blows since the favourite to succeed Boris Johnson said it was best to "ignore" the Scottish first minister and her persistent calls for another independence referendum.
The SNP leader hit back, saying that in her limited dealings with Ms Truss, the foreign secretary had seemed most interested in asking her how to get into Vogue magazine.
Inside the hall, Ms Truss called herself a "child of the union" as she lived in Paisley as a young girl - and said the Scottish government should improve its record rather than seeking another vote.
The Scottish government is pushing for the decision on whether a referendum can take place to be taken away from Westminster, with the Supreme Court set to rule on the legality of them holding an advisory vote next year.
Ms Truss said: "If I am elected as prime minister, I will not allow another independence referendum.
"At the time of the 2014 referendum, it was agreed by the SNP that it was a once-in-a-generation referendum.
"I believe in politicians keeping their promises, and Nicola Sturgeon should keep her promise.
"What she should do, rather than agitating for another referendum, is deal with the very real issues in Scotland."
She added that the Scottish government should be dealing with its NHS backlog instead.
Ms Truss' comments were somewhat overshadowed by questions about a leaked recording in which she said British workers needed "more graft" and lacked the "skill and application" of foreign rivals.
The clip, obtained by The Guardian, was recorded five years ago but emerged ahead of the hustings.
Read more from Sky News' politics team:
'No sign' of 40 new hospitals promised by Tories at last election
Starmer says his 'radical' energy plan is answer to cost of living crisis
Meanwhile, Rishi Sunak was less emphatic in his rejection of another independence referendum.
The former chancellor said he accepted the union was "by consent" and he did not think "now or any time in the near future" was the time to consider another vote.
"We live in a union which is, of course, there by consent and by democracy and I accept that, but I just don't think that anybody thinks that now or any time in the near future is remotely the time to focus on this," he said.
SNP deputy Westminster leader Kirsten Oswald said the event had been "depressing watching" for people in Scotland and said the candidates were trying to "out-Thatcher one another".
"The pair repeatedly attempted to tell us tonight what Scotland wants," she added.
"Scotland has made it clear what it does and doesn't want by repeatedly rejecting the Tories at the polls and repeatedly voting for independence supporting parties."