Во-первых, это сервер Windows, в то время как разрешения в стиле 777 - это вещь * nix, так что это не имеет смысла. Некоторые SFTP-серверы (например, сервер OpenSSH, работающий на Cygwin) могут пытаться сопоставить разрешения в стиле 777 с разрешениями файловой системы Windows, но результаты могут быть не такими, как вам нравится.
Кроме того, даже воспринимаемые разрешения 640 не являются действительными, это просто ваш SFTP-сервер (или, возможно, клиент) сопоставление разрешений файловой системы Windows с разрешениями в стиле 777. Простые 777-разрешения могут даже не охватывать сложные разрешения ACL для файловой системы Windows.
Другое дело, как установить разрешения на клиенте. Но для этого нам нужно знать, каким SFTP-клиентом вы пользуетесь.
Например, WinSCP позволяет устанавливать права доступа к удаленным файлам как во время передачи, так и после публикации. Оба в GUI:
https://winscp.net/eng/docs/ui_transfer_custom
https://winscp.net/eng/docs/ui_properties
и сценарии:
https://winscp.net/eng/docs/scriptcommand_put
https://winscp.net/eng/docs/scriptcommand_chmod
PuTTY psftp
имеет команду chmod
.
Также более новые версии протокола SFTP позволяют устанавливать сложные разрешения файловой системы. Но это поддерживается только несколькими серверами и клиентами (я верю, что Vandyke делает, хотя не уверен).