現在、Jsch を使用して SFTP クライアントを実装しています。
このクライアントの場合、ユーザーが特定の操作を実行できるかどうかを確認するために、ログインしているユーザーが SFTP サーバーに対して持っているアクセス許可を確認する必要があります。残念ながら、これを行う方法が示されているドキュメントや例が見つからないようです。
前もって感謝します。
このコードはあなたが望むことをします:
ChannelSftp channel = (ChannelSftp)session.openChannel("sftp");
SftpATTRS attrs = channel.lstat(fileOnServer)
boolean userHasPermissionsToWriteFile = attrs != null && ((attrs.getPermissions() & 00200) != 0) && attrs.getUId() != 0;
どこ
attrs.getUId() != 0
ユーザーが root でないことを確認します