ESPNDeportes.com's Enrique Rojas reported the agreement on Friday.
Cabrera, who leaves the San Francisco Giants, was suspended for 50 games without pay in August after testing positive for testosterone. At the time of his ban, Cabrera led the National League in hits and was second in batting average.
The All-Star Game MVP, Cabrera did not return to the eventual champion Giants following his suspension.
Toronto has not reached the playoffs since winning its second straight World Series in 1993, and has often been stuck behind big spenders in the AL East. After going 73-89 this year, the Blue Jays have made quite a splash in the offseason.
Cabrera's signing is another big move for the Blue Jays, who last week agreed to a blockbuster trade with the Miami Marlins that will bring them shortstop Jose Reyes and pitchers Josh Johnson and Mark Buehrle.
Cabrera hit 11 home runs with 60 RBIs in his lone year with San Francisco. He hit .305 with 18 homers and 87 RBIs the previous season with Kansas City, then was traded to the Giants.
Cabrera made his major league debut in 2005 with the New York Yankees and stayed with them until being traded to Atlanta after the 2009 season.
Toronto averaged 4.42 runs per game last season, slightly below the AL average.
Cabrera is friendly with Encarnacion and Bautista, another reason he felt comfortable joining the Blue Jays.
Information from ESPNDeportes.com's Enrique Rojas and The Associated Press was used in this report.