The hack that allows PreferredAuthentications to be set from more requires it to be passed in two arguments as follows:
in reply to Re^6: Does Net::SFTP::Foreign support identity file and user password?
in thread Does Net::SFTP::Foreign support identity file and user password?
more => [ '-o', 'IdentityFile=/opt/tools/keys/ssh/sftp-test',
I know, this is quite ugly... I have to think about how to do that functionality accessible as a constructor argument without requiring going through the more back door.