Есть ли способ защитить папки в ColdFusion, не используя Application.cfc в каждой папке?

Единственный способ понять, как защитить папки, - это включить базовый файл Application.cfc в каждую папку, включая подпапки.

Если файл /test/thisfile.cfm является безопасным и отправляет пользователя, не вошедшего в систему на страницу входа, однако папка /test/test2/ также должен иметь Application.cfc, или пользователь может напрямую перейти к test/test2/thatfile.cfm без проблем.

Я знаю, что должен быть лучший способ, чем этот, я просто не уверен, что это такое, и все в Google говорит мне использовать "Мастер входа" или установить фреймворк. Ни один из которых не вариант для меня.

Еще одно соображение, к сожалению, это должно работать в MX 7. Если есть варианты получше в CF 9, то я был бы рад их услышать, но приоритет - MX 7.

1 ответ

Решение

Без файла Application.cfc или MVC Framework вы можете вручную запустить каждый "безопасный" файл CFM с проверкой переменной сеанса:

<cfif (NOT structKeyExists( session, "isLoggedIn" )) OR (session.isLoggedIn = false)>
    <cflocation url="/" />
</cfif>

Конечно, это очень трудоемкая и нелегко поддерживаемая практика, но иногда вы просто работаете с тем, что у вас есть.

Другие вопросы по тегам