由于您的组,如何确定您是否可以使用 SFTP 写入文件?
How to determine if you can write to a file with SFTP because of your group?
您可以 mode & 00002
查看文件是否可由 public 写入,您可以获得目录列表并查看文件的所有者是否与您登录的用户匹配(尽管 stat
通常不会 return SFTPv3 服务器的 longname
,这是您从中获取用户名所需要的)但是组权限呢?
我想您可以在文件系统上创建一个文件,查看它的组是什么,然后查看该组是否与相关文件的组匹配。但是,如果相关文件的组是您所属的次要组怎么办?那时,当您收到统计响应时,您将看不到该组。
有什么想法吗?
尝试打开文件进行写入。您不必向其中写入任何内容。如果打开失败并显示 SSH_FX_PERMISSION_DENIED
(SSH_FXP_STATUS
响应),则您没有写入权限。
在 SSH_FXP_OPEN
请求的 pflag
字段中使用 SSH_FXF_WRITE
位。
您可以 mode & 00002
查看文件是否可由 public 写入,您可以获得目录列表并查看文件的所有者是否与您登录的用户匹配(尽管 stat
通常不会 return SFTPv3 服务器的 longname
,这是您从中获取用户名所需要的)但是组权限呢?
我想您可以在文件系统上创建一个文件,查看它的组是什么,然后查看该组是否与相关文件的组匹配。但是,如果相关文件的组是您所属的次要组怎么办?那时,当您收到统计响应时,您将看不到该组。
有什么想法吗?
尝试打开文件进行写入。您不必向其中写入任何内容。如果打开失败并显示 SSH_FX_PERMISSION_DENIED
(SSH_FXP_STATUS
响应),则您没有写入权限。
在 SSH_FXP_OPEN
请求的 pflag
字段中使用 SSH_FXF_WRITE
位。