I have a legal query about using Alfresco inside a Commercial Solution.
We have an already developed Commercial Solution, we were considering using Alfresco for one of our modules for Document management, in embedded Deployment mode, i.e. we will have our own User interface, and we will use Alfresco at back end to manage documents (We will be using Alfresco's DM only, at this point of time).
We will integrate Alfresco using Alfresco Java Foundation API i.e. Spring Beans. — Till this point I know its possible, and we don't have to pay for it.
Now comes my actual query,
1) Alfresco's Permission Model is somewhat different than ours (its basically any allow allows OR any deny denies), but in our already existing Commercial Solution we have precedence to Users then Roles and then Groups. So if I extend Alfresco's PermissionSeviceImpl class (without recompiling any Alfresco's jar/classes), my new permissionseveice class will reside in a separate jar and will be loaded as library jar, and in Alfresco's context xmls (precisely public-service-security-context.xml) I will make alfresco's default "permissionServiceImpl" bean as abstract =true and my new class's bean declaration will be referred as Permission Implementation class. (I have overridden/changed hasPermission and hasReadPermission methods implementation in my new class). So before I move forward I wanted to confirm if this is fine in legal perspective.
AND
2) Is any change in any alfresco context xmls or permissionDefinitions.xml or custom model xmls, comes under Alfresco's license violation?
Is it fine ? Do I have to make anything open-source from my code (or may be how did I override the default behavior, that I have to explain)?
Only after this we can go forward with Alfresco Usage, So please need your inputs.