W 2005 z ramienia Platformy Obywatelskiej został wybrany senatorem VI kadencji w okręgu warszawskim. W wyborach parlamentarnych w 2007 po raz drugi uzyskał mandat senatorski, otrzymując 439 128 głosów. Od listopada 2007 do lipca 2008 był członkiem Rady Służby Publicznej. W pierwszych przeprowadzanych w okręgach jednomandatowych wyborach do Senatu w 2011 po raz trzeci został senatorem, otrzymując 122 648 głosów. W VII i VIII kadencji Senatu był przewodniczącym Grupy Senatorów PO w ramach klubu parlamentarnego tej partii i wiceprzewodniczącym senackiej Komisji Spraw Zagranicznych. W 2015 ponownie wybrano go do Senatu (dostał 108 638 głosów). W IX kadencji Senatu wybrany na przewodniczącego Komisji Spraw Zagranicznych i Unii Europejskiej. W 2019 nie ubiegał się o reelekcję.

Życie prywatne Syn dziennikarza i powstańcy warszawskiego Jana Rockiego. Żonaty (z Elżbietą, magistrem inżynierem technologii żywności), ma córkę Katarzynę.