Я использую wrap-with-logger
(от ring.middleware.logger) и wrap-params
(от ring.middleware.params) посредников в моем приложении. Любой простой способ фильтрации чувствительных параметров (пароль, номер кредитной карты и т. Д.) Из журналов?Фильтровать чувствительные параметры из журналов в приложении clojure app
ответ
Вы также могли бы рассмотреть возможность перехода к ring-logger, который включает в себя feature to redact sensitive information:
По умолчанию, кольцо-регистратор красноломкий-заголовок авторизации или любой из параметров с именем
password
(на любом уровне вложенности). Если вы хотите, кольцо-логгер красноломкий другие Params вы можете настроитьredact-keys
вариант:(wrap-with-logger app {:redact-keys #{:senha :token})
Ring-регистратор будет ходить через Params и заголовки и любую клавишу литературной обработки, чье имя содержится в этом
redact-keys
наборе.
Там же ring-logger-onelog, что должно сделать его очень легко перейти от ring.middleware.logger звенеть регистратор
Вы можете реализовать пользовательский pre-logger
, который фильтрует запрос в соответствии с вашими потребностями.
Смотрите следующее:
(use 'ring.adapter.jetty)
(require '[ring.middleware.logger :as logger])
(defn handler [request]
{:status 200
:headers {"Content-Type" "text/html"}
:body "Hello World"})
(run-jetty
(logger/wrap-with-logger
handler
:pre-logger
(fn [options req]
;; Filtering goes here
(let [filtered-req (filter-sensitive-data req)]
((:info options) "Filtered requrest is: " filtered-req))))
{:port 8080})
Примечание, в то время как документация claims, что pre-logger
принимает только один аргумент, truly it is two-arg function.
- 1. Как фильтровать чувствительные параметры из SQL-части журналов Rails 5?
- 2. Как фильтровать вложенные параметры из журналов Rails
- 3. Chrome App: Handle Чувствительные данные
- 4. Фильтровать кэшированные запросы БД из журналов Rails?
- 5. Rails app Адреса, чувствительные к регистру
- 6. Фильтровать длинные параметры журнала в Rails
- 7. Фильтровать динамически сгенерированные параметры из $ http
- 8. чтение журналов в Google App Engine
- 9. Как фильтровать постоянную карту в Clojure?
- 10. Rails: Фильтровать все параметры формы из журнала
- 11. Как разобрать вложенные параметры в Clojure defn?
- 12. Как сохранить защищенную информацию из журналов App Engine?
- 13. как фильтровать данные json в clojure
- 14. Как получить реферальные параметры из App Store?
- 15. как фильтровать Java HashMap в Clojure
- 16. Отключить чувствительные к регистру URL-адреса в Google App Engine
- 17. Запись журналов в файл в многопоточном приложении
- 18. чувствительные объекты
- 19. Отключить генерацию журналов сбоев в приложении iOS
- 20. Хранение данных в приложении App App App
- 21. Ошибка в моем приложении app app app
- 22. Чувствительные данные в памяти
- 23. Как фильтровать все выбранные параметры?
- 24. Фильтровать параметры копирования в URL-адресе
- 25. Параметры диаграммы App App Google
- 26. Как сделать .gitignore безопасным? (чувствительные угрозы каталогов в веб-приложении)
- 27. Чувствительные данные в EF4
- 28. Чувствительные в Linq Query
- 29. Чувствительные данные в Viewstate?
- 30. Чувствительные данные в CodeIgniter
полезное! Спасибо .. –
Как вы получаете эту полезную вещь id-запроса (что% x logs) с кольцевым регистратором? –
@BobKuhar теперь поддерживается только ring-logger-onelog. Открытая проблема заключается в том, чтобы добавить его в кольцевой журнал (или, как минимум, в ring-logger-timbre): https://github.com/nberger/ring-logger/issues/7. Не стесняйтесь звонить там. PR тоже приветствуются :) – nberger