INI-конфигурация Apache Shiro отлично подходит для многих случаев использования, но если вы обладаете всеми возможностями инфраструктуры IoC, такой как Spring или Guice, обычно лучше сконфигурировать весь Shiro внутри механизма IoC напрямую.Хорошим примером этого служит интеграция Shiro Spring: http://shiro.apache.org/spring.html Рекомендуется сделать что-то почти идентичное для сред Guice.
Если вы не хотите этого делать и предпочитаете оставаться с INIShiro имеет концепцию RealmFactory.
Вы можете создать реализацию RealmFactory, которая будет взаимодействовать с вашей средой Guice и «вытягивать» ваши сконфигурированные Guice области.Затем вы определяете свою реализацию RealmFactory в INI Shiro:
[main]
...
guiceRealmFactory = com.foo.bar.shiro.GuiceRealmFactory
...
Обратите внимание, однако, что INI в Shiro поддерживает получение экземпляров Realm только из INI через RealmFactory - все другие ссылочные объекты должны быть определены в INI.Возможно, вы захотите открыть вопрос о Широ Джира, чтобы попросить о более общей поддержке Фабрики за пределами просто областей.
В конечном итоге, поскольку Guice является более мощным, чем INI, рекомендуется, если это возможно, настроить все в Shiro в Guice (SecurityManager, области, ShiroFilter и т. Д.)