You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@shiro.apache.org by Alex Orlov <oo...@mail.ru> on 2020/11/25 06:28:07 UTC

Re[6]: Must Realm#onInit be called when SecurityManager is created manually?

Let’s make a deal — I open an issue, you make a pull request, all right?
 
 
--
Best regards, Alex Orlov
 
  
>Вторник, 24 ноября 2020, 18:23 +03:00 от Brian Demers <bd...@apache.org>:
> 
>I agree, pull requests are always welcome :D   
>On Tue, Nov 24, 2020 at 1:56 AM Alex Orlov < ooo_saturn7@mail.ru > wrote:
>>Hello Brian,
>> 
>>Thank you for clarifying this moment. I think, it would be fine to add information about
>>LifecycleUtils here  https://shiro.apache.org/configuration.html#programmatic-configuration
>> 
>> 
>>--
>>Best regards, Alex Orlov
>> 
>>  
>>>Вторник, 24 ноября 2020, 1:55 +03:00 от Brian Demers < brian.demers@gmail.com >:
>>> 
>>>Correct,
>>> 
>>>Most of the time these methods would be transparently called via (Shiro's INI feature, Spring, Guice, or potentially CDI),   
>>>On Sat, Nov 21, 2020 at 3:12 PM Alex Orlov < ooo_saturn7@mail.ru > wrote:
>>>>Do I understand it correctly if we control realm and security manager manually we need to use:
>>>> 
>>>>to init Realm → LifecycleUtils.init(realm);
>>>>to destroy SecurityManager → LifecycleUtils.destroy(securityManager);
>>>> 
>>>> 
>>>>--
>>>>Best regards, Alex Orlov
>>>> 
>>>>  
>>>>>Суббота, 21 ноября 2020, 19:12 +03:00 от Brian Demers < brian.demers@gmail.com >:
>>>>> 
>>>>>Shiro has "lifecycle" methods that can be plugged into a DI container.  If you are not using a Shiro integration, you can just need to call the `onInit` method directly.   
>>>>>On Sat, Nov 21, 2020 at 6:11 AM Alex Orlov < ooo_saturn7@mail.ru > wrote:
>>>>>>Hello all,
>>>>>> 
>>>>>>I have two security managers — web and default. When shiro filter creates web manager
>>>>>>the method onInit( https://shiro.apache.org/static/1.2.2/apidocs/org/apache/shiro/realm/AuthorizingRealm.html#onInit( ) )
>>>>>>of my Realm is called.
>>>>>> 
>>>>>>However, when I create SM manually
>>>>>>            var realm = new SecurityRealm();
>>>>>>           ...
>>>>>>            DefaultSecurityManager sm = new DefaultSecurityManager(realm);
>>>>>>            sm.setCacheManager(new MemoryConstrainedCacheManager());
>>>>>>            this.securityManager = sm;
>>>>>> 
>>>>>>this method (onInit) is not called.
>>>>>> 
>>>>>>Could anyone say if it is a bug or I miss something (I use shiro 1.7.0)?
>>>>>> 
>>>>>> 
>>>>>>--
>>>>>>Best regards, Alex Orlov
>>>> 
>>