powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / sping security
5 сообщений из 5, страница 1 из 1
sping security
    #38576881
romanj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dobryi denn,
razbirajuss s CSRF escape mehanizmom v spring projekte
U menja vopros kak proverit rabotosposobnost koda.






web.xml
Код: java
1.
2.
3.
<listener>
  <listener-class>ee.ergo.eup.common.security.XmlEscapingELResolverListener</listener-class>
</listener>


xmlEscapingElResolver.java
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
import java.beans.FeatureDescriptor;
import java.util.Iterator;
import javax.el.ELContext;
import javax.el.ELResolver;
import org.apache.commons.lang.StringEscapeUtils;

/**
 * {@link ELResolver} which escapes XML in String values.
 */
public class XmlEscapingELResolver extends ELResolver {

	private ThreadLocal<Boolean> excludeMe = new ThreadLocal<Boolean>() {
		@Override
		protected Boolean initialValue() {
			return Boolean.FALSE;
		}
	};

	@Override
	public Class<?> getCommonPropertyType(ELContext context, Object base) {
		return null;
	}

	@Override
	public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext context, Object base) {
		return null;
	}

	@Override
	public Class<?> getType(ELContext context, Object base, Object property) {
		return null;
	}

	@Override
	public Object getValue(ELContext context, Object base, Object property) {

		try {
			if (excludeMe.get()) {
				return null;
			}

			// This resolver is in the original resolver chain. To prevent
			// infinite recursion, set a flag to prevent this resolver from
			// invoking the original resolver chain again when its turn in the
			// chain comes around.
			excludeMe.set(Boolean.TRUE);
			Object value = context.getELResolver().getValue(context, base, property);

			if (value instanceof String) {
				value = StringEscapeUtils.escapeXml((String) value);
			}
			return value;

		} finally {
			excludeMe.remove();
		}
	}

	@Override
	public boolean isReadOnly(ELContext context, Object base, Object property) {
		return true;
	}

	@Override
	public void setValue(ELContext context, Object base, Object property, Object value) {
	}
}




XmlEscapingELResolverListener

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.jsp.JspFactory;

public class XmlEscapingELResolverListener implements ServletContextListener {

	public void contextInitialized(ServletContextEvent event) {
		JspFactory.getDefaultFactory().getJspApplicationContext(event.getServletContext())
				.addELResolver(new XmlEscapingELResolver());
	}

	public void contextDestroyed(ServletContextEvent event) {
	}

}
...
Рейтинг: 0 / 0
sping security
    #38576885
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
romanjU menja vopros kak proverit rabotosposobnost koda.

Собрать war модуль. Задеплоить в JEE контейнер. Использовать отладчик IDE.
...
Рейтинг: 0 / 0
sping security
    #38576891
romanj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Spasibo. Vsje eto sdelano.Uspesno rabotaet. Prosto ne znaju kak protestirovat.
Pridumat kakoi to case,chtoby CSRF escape mehanizm rabotal
...
Рейтинг: 0 / 0
sping security
    #38576903
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
romanjUspesno rabotaet. Prosto ne znaju kak protestirovat.
Если успешно работает, то зачем тестировать?

romanjPridumat kakoi to case,chtoby CSRF escape mehanizm rabotal
То есть вы решали проблему, которой небыло?
...
Рейтинг: 0 / 0
sping security
    #38576917
romanj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
da etoi problemy ne bylo,no teoreticheski ona mozet vozniknut
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / sping security
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]