Lafferty and Whittaker leave Rangers
The 24-year-old, who has 31 caps for his country, is one of several players who opted to leave Ibrox after becoming a free agent when the Glasgow club entered administration.
Earlier in June Sion recruited Gennaro Gattuso, another Rangers old boy, from AC Milan.
Lafferty's former team-mate Steven Whittaker has also departed Rangers after signing a four-year deal with Premier League side Norwich City.
"All of my experience to date has been in Scotland so I'm really looking forward to the challenge of playing in the Premier League," the 28-year-old Scotland defender told the Norwich website.
"When I spoke to [coach] Chris Hughton I was very impressed with his plans to progress Norwich City, and everyone I've spoken to in the game has had nothing but praise for the Club."