Диспетчер ресурсов файлового сервера допускает только стандартные буквы и цифры в имени файла
У меня есть FTP-сервер (IIS), который позволяет загружать файлы только определенных типов (например, только изображения). Я достигаю этого с помощью функции проверки файлов в диспетчере ресурсов файлового сервера.
Пока это работает нормально, однако теперь мне нужно разрешить только стандартные буквы и цифры в имени файла.
Примеры:
test.jpg [valid]
Test 1.png [valid]
tëßt.png [invalid]
Функция проверки файлов здесь не работает.
- Слишком много символов, которые я не хочу разрешать (поэтому "Включенные файлы" не доступны).
- Я не могу добавить каждый символ, который я разрешаю, в Исключенные файлы, так как тогда проверка расширения больше не работает (она будет действительна, если имя файла действительно или когда расширение совпадает).
Есть ли другой способ, которым я мог бы достичь этого?
1 ответ
В качестве небольшого программного решения вы можете написать небольшое приложение, которое реализует FileSystemWatcher и событие Created.
Затем, когда событие происходит, вы можете использовать шаблон RegEx, чтобы убедиться, что имя содержит только допустимые символы, если совпадение возвращает false, то удалите файл. Что касается обратной связи с FTP-сеансом, я не уверен, что это вообще возможно.