But it is then just a current-thread stack based mechanism? So to make this
work as Christian wants means you must be on the beginning of everybody’s
thread?
Kind regards,
Peter Kriens
> On 1 mrt. 2016, at 19:35, [email protected] wrote:
>
> JAAS (like Shiro and other frameworks) ultimately relies on JavaSE's
> java.security.AccessController - as does java.lang.SecurityManager. So
> these frameworks effectively replace the SecurityManager - and as they do
> not link access to a code source they don't need the stack-inspection
> magic that SecurityManager needs.
>
>> The AccessControlContext is simply used as an independent vehicle to
>> transport the logged in user and the groups. It allows for example CXF to
>> set the authentication information in a CXF interceptor and the blueprint
>> authz module to read the authentication. As JAAS is available in standard
>> java the login can be transported without introducing a dependency between
>> CXF and blueprint.
>>
>> The security is then for example enforced by a blueprint interceptor
>> (blueprint-authz) or by java code. This security measure is not meant to
>> protect against unauthorized code. It is only on application level like
>> Guillaume explained.
>>
>> Christian
>>
>>
>> 2016-03-01 9:47 GMT+01:00 Peter Kriens <[email protected]>:
>>
>>> So no security manager and you can still use the AccessControlContext?
>>> That surprises me and makes me wonder what it means? Without a security
>>> manager, I do not understand how the checks are done, nor how they can
>>> be
>>> enforced?
>>>
>>> Kind regards,
>>>
>>> Peter Kriens
>>>
>>>
>>>
>>>> On 1 mrt. 2016, at 00:33, Christian Schneider
>>> <[email protected]>
>>> wrote:
>>>>
>>>> I will have to look into Conditional Permission admin.
>>>> I only use JAAS to do the authentication and make the
>>> AccesControlContext available on the thread via:
>>>> AccessControlContext acc = AccessController.getContext()
>>>> The nice thing is that this allows other parts of the code to do
>>> authorization decisions without being coupled to any special security
>>> library.
>>>> I do not use the SecurityManager.
>>>> The JAAS approach is already used in many places. For example the
>>> karaf
>>> web console populates the AccessControlContext on the web console and
>>> the
>>> console. Karaf also checks the authorization of commands executed on the
>>> shell this way. CXF populates the AccessControlContext from the service
>>> authentication information. Aries blueprint can do annoation based
>>> authorization using @RolesAllowed.
>>>> So a nice way to run a bundle as a certain user would play very nicely
>>> together with these mechanisms. Of course you can already do a JAAS
>>> login
>>> with code but it is a lot of boiler plate code.
>>>> Christian
>>>>
>>>>
>>>> 2016-02-29 8:42 GMT+01:00 Peter Kriens <[email protected]>:
>>>> There is no standardized solution for this. In general, Bundle
>>> Activators are called on the thread the start method is called but this
>>> is
>>> not guaranteed and for DS youâer out of luck.
>>>>
>>>> That said, I am a bit puzzled by the model. JAAS is based on the same
>>> (terrible) security model the VM gave us. Why not use Conditional
>>> Permission admin to just manage the required permission for that bundle,
>>> that you can do standardized and quite easy?
>>>>
>>>> Kind regards,
>>>>
>>>> Peter Kriens
>>>>
>>>>> On 28 feb. 2016, at 12:09, Christian Schneider <
>>> [email protected]> wrote:
>>>>>
>>>>> When working with JAAS based authentication it is necessary to run
>>> the
>>> code as a certain subject.
>>>>>
>>>>> For code that is called from the outside as well as from the karaf
>>> shell there are existing solutions to do the login.
>>>>> I wonder if there is an OSGi mechanism to do the same for code that
>>> is
>>> started inside a bundle. (Activator, blueprint or DS).
>>>>> What I would like to have is some way to say: The startup code for
>>> this bundle should run as a certain user.
>>>>>
>>>>> Is this already possible or would I have to create such a mechanism
>>> myself?
>>>>>
>>>>> Christian
>>>>>
>>>>> --
>>>>> Christian Schneider
>>>>> http://www.liquid-reality.de
>>>>>
>>>>> Open Source Architect
>>>>> http://www.talend.com
>>>>>
>>>>> _______________________________________________
>>>>> OSGi Developer Mail List
>>>>> [email protected]
>>>>> https://mail.osgi.org/mailman/listinfo/osgi-dev
>>>>
>>>> _______________________________________________
>>>> OSGi Developer Mail List
>>>> [email protected]
>>>> https://mail.osgi.org/mailman/listinfo/osgi-dev
>>>>
>>>>
>>>>
>>>> --
>>>> --
>>>> Christian Schneider
>>>> http://www.liquid-reality.de
>>>>
>>>> Open Source Architect
>>>> http://www.talend.com
>>>> _______________________________________________
>>>> OSGi Developer Mail List
>>>> [email protected]
>>>> https://mail.osgi.org/mailman/listinfo/osgi-dev
>>>
>>> _______________________________________________
>>> OSGi Developer Mail List
>>> [email protected]
>>> https://mail.osgi.org/mailman/listinfo/osgi-dev
>>>
>>
>>
>>
>> --
>> --
>> Christian Schneider
>> http://www.liquid-reality.de <http://www.liquid-reality.de/>
>> <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.liquid-reality.de
>>
>> <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.liquid-reality.de>>
>>
>> Open Source Architect
>> http://www.talend.com <http://www.talend.com/>
>> <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.talend.com
>>
>> <https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.talend.com>>
>> _______________________________________________
>> OSGi Developer Mail List
>> [email protected] <mailto:[email protected]>
>> https://mail.osgi.org/mailman/listinfo/osgi-dev
>> <https://mail.osgi.org/mailman/listinfo/osgi-dev>
>
>
> _______________________________________________
> OSGi Developer Mail List
> [email protected] <mailto:[email protected]>
> https://mail.osgi.org/mailman/listinfo/osgi-dev
> <https://mail.osgi.org/mailman/listinfo/osgi-dev>
_______________________________________________
OSGi Developer Mail List
[email protected]
https://mail.osgi.org/mailman/listinfo/osgi-dev