The 23-year-old arrives from Primeira Liga side Vitoria Setubal after the two sides agreed a transfer in the region of £1.3million.
Cardoso becomes the club’s fourth signing of the summer after his fellow countrymen Bruno Alves and Dalcio, along with ex-Aberdeen captain Ryan Jack.
Rangers boss Caixinha said of the new signing: “He is a player who everyone describes as having big potential to be one of the centre-halves of the future with the Portuguese national team.
“We believe in him and he can perform on the right or on the left which is good in a centre-half.
“We try to organise the centre-halves by thinking about them as a double and I think we have four very good centre-halves who can perform together or independently.
“Fabio is 23 so having an experienced player around like Bruno Alves is good, he is a player whose one main characteristic is leadership so Fabio will feel comfortable and grow and learn from him.”