Hi Vidura,

We can identify whether it is in OSGi mode or non-OSGi mode by checking if
the bundleContext is set. If it is not set, then it is in non-OSGi mode.
This is the way we have done for msf4j. Any reason for this new approach?

Regards,
Nira

On Fri, Mar 17, 2017 at 9:37 AM, Lakshman Udayakantha <lakshm...@wso2.com>
wrote:

> Hi Vidura,
>
> On Fri, Mar 17, 2017 at 9:15 AM, Vidura Nanayakkara <vidu...@wso2.com>
> wrote:
>
>> Hi All,
>>
>> An example for a secure vault YAML configuration file is as shown below
>> according to the current implementation.
>>
>> secretRepository:
>>   type: org.wso2.carbon.kernel.securevault.repository.DefaultSecretR
>> epository
>>   parameters:
>>     privateKeyAlias: wso2carbon
>>     keystoreLocation: resources/security/wso2carbon.jks
>> masterKeyReader:
>>   type: org.wso2.carbon.kernel.securevault.reader.DefaultMasterKeyReader
>>
>> However, according to the discussion made in [1]
>> <http://wso2-oxygen-tank.10903.n7.nabble.com/C5-Moving-Carbon-Configuration-and-Carbon-Sec-Vault-to-2-Separate-Repositories-Removing-from-Kernel-td146953.html>
>> , we decided to move Carbon Secure Vault out of Carbon Kernel for the
>> specified reasons in [1]
>> <http://wso2-oxygen-tank.10903.n7.nabble.com/C5-Moving-Carbon-Configuration-and-Carbon-Sec-Vault-to-2-Separate-Repositories-Removing-from-Kernel-td146953.html>.
>> According to this change, in OSGi mode the Secret repository and the
>> master key reader will be an implementation of the specified classes (
>> org.wso2.carbon.kernel.securevault.repository.DefaultSecretRepository
>>  and org.wso2.carbon.kernel.securevault.reader.DefaultMasterKeyReader) and
>> will be registered via the Secure Vault Component while in standalone
>> mode the secret repository and master key reader will be instances of the
>> specified classes and will be created using the class.forName() method.
>>
>> According to this implementation, it was decided to delegate providing
>> other file paths (secret.properties, master-key.yaml) to relevant
>> implementation classes because other file paths (secret.properties,
>> master-key.yaml) are bound to the relevant implementation. However, with
>> this approach, we are forced to check whether the code is being executed in
>> OSGi mode or non-OSGi mode in order to provide the correct location of the
>> file paths (secret.properties, master-key.yaml).
>>
> Since this happens in implementation class as in this case in Default
> implementation, IMO it is not a problem to check whether OSGI or not to
> give the correct file location. Even when you create another implementation
> that should work in both OSGI and non OSGI enviorenments you have to check
> for OSGI or not to give the correct file location.
>
>>
>>
>
>> *Suggestion:*
>>
>> secretRepository:
>>   type: org.wso2.carbon.secvault.securevault.repository.DefaultSecre
>> tRepository
>>   parameters:
>>     privateKeyAlias: wso2carbon
>>     keystoreLocation: securevault/resources/security/wso2carbon.jks
>>     secretProperties: securevault/resources/security/secrets.properties
>> masterKeyReader:
>>   type: org.wso2.carbon.secvault.securevault.utils.DefaultHardCodedM
>> asterKeyReader
>>   parameters:
>>     masterKeyFile: securevault/resources/security/master-keys.yaml
>>
>>
>> If we could add the highlighted properties to the secure vault YAML
>> configuration file specifying the location of the master-keys.yaml and
>> secrets.properties, we only need to check whether the code is being
>> executed in OSGi mode or non-OSGi mode once at the time of secure vault
>> initialisation.
>>
>> ​WDYT?​
>>
>> [1] [C5] Moving Carbon Configuration and Carbon Sec-Vault to 2 Separate
>> Repositories (Removing from Kernel)
>> <http://wso2-oxygen-tank.10903.n7.nabble.com/C5-Moving-Carbon-Configuration-and-Carbon-Sec-Vault-to-2-Separate-Repositories-Removing-from-Kernel-td146953.html>
>>
>>
>> Best Regards,
>>
>> *Vidura Nanayakkara*
>> Software Engineer
>>
>> Email : vidu...@wso2.com
>> Mobile : +94 (0) 717 919277 <+94%2071%20791%209277>
>> Web : http://wso2.com
>> Blog : https://medium.com/@viduran <http://wso2.com/>
>> Twitter : http://twitter.com/viduranana
>> LinkedIn : https://lk.linkedin.com/in/vidura-nanayakkara
>> <http://wso2.com/>
>>
>
>
>
> --
> Lakshman Udayakantha
> WSO2 Inc. www.wso2.com
> lean.enterprise.middleware
> Mobile: *0717429601*
>
>


-- 


*Niranjan Karunanandham*
Associate Technical Lead - WSO2 Inc.
WSO2 Inc.: http://www.wso2.com
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to