Or maybe give the option to set the default behavior like putty does.
Well in putty in "Connection -> Data" you got option to use system username or prompt in case username is blank. Both options works as it should in putty with GSSAPI. Either it prompt for username or just log me in using my windows account name.
In WinSCP even if we assume that WinSCP uses system name it still doesn't work. It seems it just tries to auth with no name at all and fails. It should prompt for username in case username is blank.
WinSCP assumes that username is deduced by GSSAPI. I have little experience with that, so I do not know how likely that is.
I would like to report a bug in latest WinSCP 5.7.4.
Lets suppose you define a new site but with no username set (a blank username).
Then when trying to log in to this site with agent or password, WinSCP will spot that the username is blank and prompt you an "Username" input during logging process where you have the ability to fill the missing data.
Unfortunately when you enable GSSAPI authorization then WinSCP won't prompt you the "Username" input anymore during logging process. Instead it just fails to login which looks like invalid behavior.
Please fix gssapi login process with no username defined in site config.
Thank you in advance.