Good morning, as far as I know it isnt possible. I tried it several times in the past and failed.
Instead of the db I have created an additional service that uses that config and provides it to other services. kind regards Christian > Am 07.02.2025 um 07:50 schrieb Steinar Bang <s...@dod.no>: > > >> >>>>>> Steinar Bang <s...@dod.no>: > >> Is it possible to have two SCR components share a karaf config value and >> have the other component pick up the changed config when one of the >> components changes the config value? > >> I have a use case where I would like two different components, that >> otherwise have no knowledge of each others, share an integer value, > > To provide a little more context. > > The SCR components that should share a config value are a component that > exposes a shiro "realm" OSGi service[1] and a component that exposes an > OSGi service that provides the backend for a react.js admin UI for > creating and modifying users, roles and permissions[2]. > > They are both part of a karaf application that I made to work as a forms > auth service for nginx[3] > > I am extending the shiro realm[4] in [1] to handle repeatedly failed > logins and lock the account when a limit is reached. > > And it's that limit I would like to share between the admin backend[2] > and the realm[1]. > > Since both components talkt to the database the simplest way would be to > add that value to the database schema, but a table with a single value > felt... wrong... so I decided to explore the configuration approach. > > Short story: if I can do it with config with a minimum of code (just > annotations) I'll do it with config. But if not I'll bite the bullet and > create a table with a single value in the database. > > (and after sleeping on it I think I will try the database approach, in > that way I can just join the config value for limit for number of failed > logins in the select that checks for number of logins done so far... I > think I will do that...) > > > References: > [1] > <https://github.com/steinarb/authservice/blob/b3b03de37b618cd5a78dba6fc6719131754d4a98/authservice/authservice.web.security.dbrealm/src/main/java/no/priv/bang/authservice/web/security/dbrealm/AuthserviceDbRealm.java#L11> > [2] > <https://github.com/steinarb/authservice/blob/b3b03de37b618cd5a78dba6fc6719131754d4a98/authservice/authservice.users/src/main/java/no/priv/bang/authservice/users/UserManagementServiceProvider.java#L56> > [3] > <https://github.com/steinarb/authservice?tab=readme-ov-file#forms-based-nginx-login-and-pluggable-shiro-auth-in-karaf> > [4] <https://shiro.apache.org/realm.html> >