Не уверен, принадлежит ли это здесь или на stackoverflow, поэтому дайте мне знать, если это не в том месте.

Я создаю программу, в которой все пользователи будут сохранять в общую папку в локальной сети, используя jcifs в java. Я не хочу, чтобы пользователь мог просматривать файлы в папке, подключившись к smb://192.168.xx, но я хочу, чтобы программа могла иметь доступ к файлам (желательно без ввода пароля в программа).

Итак, в основном, как я могу создать открытую общую папку, доступную для jcifs, но не для файлового проводника любого типа?

1 ответ1

0

Это возможно, но нестандартно и, следовательно, хрупко.

Модель безопасности большинства операционных систем основана на пользователях, что означает, что разрешения предоставляются пользователю и программам, запущенным, когда пользователь использует такие разрешения.

Если вы хотите, чтобы разрешения были более мелкими, чем на уровне пользователя, стандартное решение состоит в том, чтобы иметь некоторый настраиваемый протокол и программное обеспечение на стороне сервера для обеспечения этого. Например, запустите веб-службу на сервере и выполните проверку подлинности подключения клиента. (Это все еще может быть подделано, поэтому вам лучше будет проверить ограничения, которые навязывает клиент, а не проверять клиента.)

Если вы действительно хотите взломать это и контролировать все клиенты, которые могут получить доступ к общему ресурсу CIFS, вы можете использовать брандмауэр приложения или HIDS, которые позволяют вам устанавливать детальные правила поведения приложения. Тем не менее, это хрупко, так как сервер не может обеспечить это.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .