Hello Manoj and Ntando,

If I got it, the application.properties should be injected to the Anubis
Library (at compile or runtime as spring boot file parameter).

https://raw.githubusercontent.com/fintecheando/fineract-cn-anubis-1/develop/library/src/main/resources/application.properties

This can be changed, depending on the use case (using or not the Keycloak)

I have put for now the variables in the library to disable the use of
Keycloak just as you have shared in plain text.

I will test as is and go back for any query.

Thank you.

Regards

Victor


El mar, 10 ago 2021 a las 2:24, Manoj VM (<ma...@fynarfin.io>) escribió:

> Hi Victor,
>
> As Ntando pointed out, the latest PR calls for adding some additional
> configurations to application.properties.
>
> This will make Anubis work normally. We will add these configurations to
> the documentation soon.
>
>
> keycloak.enabled=false
> authentication.service.keycloak=false
> authentication.service.anubis=true
> keycloak.auth-server-url=keycloakAuthUrl
> keycloak.realm=keycloakRealm
> keycloak.resource=keycloakClient
> keycloak.public-client=true
> keycloak.principal-attribute=preferred_username
> keycloak.bearer-only=true
> fin.keycloak.realm.publicKey=publicKeyFromKeycloak
> keycloak.use-resource-role-mappings = true
> conf.enableAccountLevelAccessVerification=false
>
> On Tue, 10 Aug, 2021, 12:39 Ntando Mngomezulu, <nta...@nasasa.org.za>
> wrote:
>
>> Good morning Victor,
>>
>>
>>
>> The recent changes to Anubis were in order to enable the use of
>> alternative authentication servers. Here is a redacted example of the
>> config map I am using,
>>
>>
>>
>>
>>
>> By setting the enableAccountLevelAccessVerification accordingly, you
>> should resolve the error shown.
>>
>>
>>
>> Regards
>>
>> Ntando
>>
>>
>>
>> *From:* VICTOR MANUEL ROMERO RODRIGUEZ <victor.rom...@fintecheando.mx>
>> *Sent:* Tuesday, 10 August 2021 08:42
>> *To:* dev@fineract.apache.org
>> *Subject:* Anubis issue
>>
>>
>>
>> Hello,
>>
>>
>>
>> Now with some recent changes the Anubis library is throwing errors
>> related to the AccountLevelAccessVerifierCustom injected dependency. This
>> error occurs while running the Provisioner micro service.
>>
>>
>>
>> We are using the latest version of the development branch of the
>> Fineract-CN repositories.  Maybe there is a pending PR ?
>>
>>
>>
>> Regards
>>
>>
>>
>> Victor
>>
>>
>>
>> 01:37:39.072 [main] WARN  o.s.boot.SpringApplication - Error handling
>> failed (Error creating bean with name 'delegatingApplicationListener'
>> defined in class path resource
>> [org/springframework/security/config/annotation/web/configuration/WebSecurityConfiguration.class]:
>> BeanPostProcessor before instantiation of bean failed; nested exception is
>> org.springframework.beans.factory.BeanCreationException: Error creating
>> bean with name
>> 'org.springframework.transaction.config.internalTransactionAdvisor' defined
>> in class path resource
>> [org/springframework/transaction/annotation/ProxyTransactionManagementConfiguration.class]:
>> Bean instantiation via factory method failed; nested exception is
>> org.springframework.beans.BeanInstantiationException: Failed to instantiate
>> [org.springframework.transaction.interceptor.BeanFactoryTransactionAttributeSourceAdvisor]:
>> Factory method 'transactionAdvisor' threw exception; nested exception is
>> java.lang.NullPointerException)
>> 01:37:39.077 [main] ERROR o.s.boot.SpringApplication - Application
>> startup failed
>> org.springframework.beans.factory.BeanCreationException: Error creating
>> bean with name
>> 'org.apache.fineract.cn.anubis.security.AccountLevelAccessVerifierCustom':
>> Injection of autowired dependencies failed; nested exception is
>> java.lang.IllegalArgumentException: Could not resolve placeholder
>> 'conf.enableAccountLevelAccessVerification' in string value
>> "${conf.enableAccountLevelAccessVerification}"
>> at
>> org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:355)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1219)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:543)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
>> at
>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
>> at
>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:751)
>> at
>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861)
>> at
>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541)
>> at
>> org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
>> at
>> org.springframework.boot.SpringApplication.refresh(SpringApplication.java:761)
>> at
>> org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:371)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1186)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1175)
>> at
>> org.apache.fineract.cn.provisioner.ProvisionerApplication.main(ProvisionerApplication.java:33)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:498)
>> at
>> org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
>> at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
>> Caused by: java.lang.IllegalArgumentException: Could not resolve
>> placeholder 'conf.enableAccountLevelAccessVerification' in string value
>> "${conf.enableAccountLevelAccessVerification}"
>>
>
> Disclaimer:
>
> Privileged & confidential information is contained in this message
> (including all attachments). If you are not an intended recipient of this
> message, please destroy this message immediately and kindly notify
> the sender by reply e-mail. Any unauthorised use or dissemination of this
> message in any manner whatsoever, in whole or in part, is strictly
> prohibited. This e-mail, including all attachments hereto, (i) is for
> discussion purposes only and shall not be deemed or construed to be a
> professional opinion unless expressly stated otherwise, and (ii) is not
> intended, written or sent to be used, and cannot and shall not be used, for
> any unlawful purpose. This communication, including any attachments, may
> not be free of viruses, interceptions or interference, and may not be
> compatible with your systems. You should carry out your own virus checks
> before opening any attachment to this e-mail. The sender of this e-mail and
> *Fynarfin Tech Private Limited* shall not be liable for any damage that
> you may sustain as a result of viruses, incompleteness of this message, a
> delay in receipt of this message or computer problems experienced.
>

Reply via email to