The Artificer makes the attack.
The Eldritch Cannon states:
If it is forced to make an ability check or a saving throw, treat all its ability scores as 10 (+0). [...]
Flamethrower. The cannon exhales [...]
Force Ballista. Make a ranged spell attack, originating from the cannon, at one creature or object within 120 feet of it. [...]
Protector. The cannon emits [...]
The Eldritch Cannon does not have ability scores for attacks and the Force Ballista does not read as "The cannon makes" similar to the Flamethrower and Protector options. Therefore, it's clear that the Artificer makes the attack.
This means that basically everything about the attack, other than the point of origin, is determined by the Artificer.
For example, the rules for Ranged Attacks in Close Combat state:
When you make a ranged attack with a weapon, a spell, or some other means, you have disadvantage on the attack roll if you are within 5 feet of a hostile creature who can see you and who isn't incapacitated.
And the rules for Unseen Attackers and Targets state:
When you attack a target that you can't see, you have disadvantage on the attack roll.
The "you" is the artificer. If the Artificer has a hostile creature within 5 feet or if the Artificer can't see the target, then the attack is at disadvantage.
Whereas the Eldritch Cannon does not make the attack, so these rules do not account for it at all.
To my knowledge, the only general rules that apply to attacks and that account for the Eldritch Cannon are the rules for Cover, which state:
A target can benefit from cover only when an attack or other effect originates on the opposite side of the cover.