2013-05-03 7 views
0

У меня есть проект движка GWT + по умолчанию. По умолчанию мы получаем точку входа GWT.GWT - модуль администратора защищен аутентификацией?

Возможно ли создать вторую точку входа GWT, загружаемую только html-страницами, которые защищены от аутентификации?

Например, в моем файле web.xml я добавил:

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/myprivatestuff/*</url-pattern> 
    </web-resource-collection> 
    ... 
</security-constraint> 

и мою военную папку в проекте приложение двигателя:

/war/myprivatestuff/index.html 

и я хотел бы индекс .html, чтобы загрузить другой модуль GWT. Я не хочу, чтобы код из этого второго модуля «admin» мог быть загружен модулем GWT «main/default».

Я боюсь, что GWT скомпилирует весь мой клиентский код в один монолитный объект javascript, объединив как общий модуль, так и модуль администратора, что будет проблемой безопасности.

Возможно ли построить два модуля в одном проекте и записать их скомпилированный код в разных выходных данных javascript и загружать только один из этих защищенных путей?

Благодаря

ответ

0

да, но точка входа самостоятельно не решить вашу проблему, вы должны создать второй модуль GWT (который будет иметь свою собственную страницу HTML и точку входа и * .gwt.xml файл). так что это станет совершенно другим приложением, которое будет загружаться только при доступе к новому URL-адресу (то есть новой странице html).

Теперь в EntryPoint этого второго модуля вы можете сделать RPC-вызов на сервер и проверить, зарегистрирован ли пользователь и в роли администратора, только затем вернуть ответ и перейти на следующую страницу, на которой отображается меню и все)

Если вы хотите еще больше защитить страницу, скажите, что вы даже не хотите загружать код на стороне клиента в браузер, если пользователь не является администратором, вы можете сделать Code Splitting, так что только когда аутентификация приложения будет успешной и вы будете двигаться на следующую страницу скомпилированный JS передается только тогда.

надеюсь, что это поможет.

Смежные вопросы