본관은 진주(晉州). 자는 여량(汝亮, 汝良). 진창군(晉昌君) 강인(姜絪)의 8대손으로, 할아버지는 강세정(姜世靖)이고, 아버지는 강준흠(姜浚欽), 어머니는 권빈(權儐)의 딸이다.
1819년(순조 19) 정시문과에 을과로 급제하여 수찬을 지내고, 1829년 진하사(進賀使)의 서장관으로 정사 이광문(李光文)과 부사 한기유(韓耆裕) 등과 함께 청나라에 다녀왔다.
1838년(헌종 4) 부수찬을 거쳐 1843년 충청도관찰사, 1846년 행호군(行護軍), 1848년 한성부판윤 · 형조판서, 1854년(철종 5) 대사헌을 지냈으며, 1859년 예조판서가 되었다.
1866년(고종 3) 조대비가 수렴섭정(垂簾攝政)을 철회하고, 흥선대원군이 권력을 잡아 인사배치를 할 때 남인으로 기용되어 홍문관제학을 거쳐 이조판서로 승진되었다. 글씨에도 뛰어났다. 시호는 문헌(文憲)이다.