Let \(\mathcal {T(H)}\) and \(\mathcal {T(K)}\) be the Banach spaces of all trace class operators on separable complex Hilbert spaces \(\mathcal {H}\) and \(\mathcal {K},\) respectively. Our main result reveals that a completely positive map \(\Phi :\mathcal {T(H)}\rightarrow \mathcal {T(K)}\) satisfies \(\Vert \Phi (X)\Vert _p=\Vert X\Vert _p\) for all \(X\in \mathcal {T(H)}\) if and only if there exist a Hilbert space \(\mathcal {H}_1,\) an injective positive operator \(A\in \mathcal {T(H}_1)\) with \(\Vert A\Vert _p=1\) and an isometry W from \(\mathcal {H}\otimes \mathcal {H}_1\) into \(\mathcal {K}\) such that \(\Phi (X)=W(X\otimes A)W^*\) for all \(X\in \mathcal {T(H)}.\) This is equivalent to the existence of a completely positive map \(\Lambda : \mathcal {T(K)}\rightarrow \mathcal {T(H)}\) such that \(\Lambda (\Phi (X))=X\) and \(\Vert \Lambda (Y)\Vert _p=\Vert Y\Vert _p\) for all \(X\in \mathcal {T(H)}\) and \(Y\in \Phi (\mathcal {T(H)}).\) Additionally, we characterize the structure of all recovery maps \(\Psi \) for a completely positive and trace preserving (CPTP) map \(\Phi ,\) where a recovery map is defined as a CPTP map satisfying \(\Psi (\Phi (X))=X\) for all \(X\in \mathcal {T(H)}.\)