이 성을 신성(新城)이라 하였고, 당나라가 이곳을 점령한 뒤에 신성주도독부(新城州都督府)를 설치하였다. 수양제와 당태종의 고구려 침입과 관계있는 지명이다.
『삼국사기』에는 서천왕 때 왕이 이곳을 순행(巡幸)하였다는 기록이 있다. 고국원왕 때 신성을 쌓아 변경지역의 방비를 튼튼히 하였다. 613년(영양왕 24) 수나라 군대가 신성을 쳤으나 성주 왕인공(王仁恭)이 굳게 지켜 함락되지 않았다. 보장왕 때 당태종이 여러 번 신성을 쳤으나 번번이 실패하여 안시성(安市城)과 함께 온전히 보존되었다.
667년(보장왕 26) 9월 당나라 이적(李勣)의 군대가 신성을 포위하여 공격하려 할 때, 성 안에 있던 사부구(師夫仇)가 성주를 묶고 문을 열어 항복하니 성이 쉽게 함락되었다.
“신성은 고구려 서변(西邊)의 요새이니 먼저 이를 빼앗지 못하면 나머지 성을 쉽게 취하지 못할 것이다.”라고 한 이세적의 말로 신성의 군사적 중요성을 설명할 수 있다. 신성주에는 뒤에 당나라가 평양에 설치하였던 안동도호부(安東都護府)를 옮겨 설치하였다.