Combodo's customers only
- Sharing Base
- Allow to share objects between organizations so they can be seen by users with silos
- ITSM Designer
- PHP 8.1
This extension allow to share objects between organizations,
enabling access to them, despite silos created by
The purpose of sharing “a Document X belonging to organization A, with an organization B”, is to allow users which can only see Documents belonging to organization B to see also this Document X, even if it is not in the scope of Documents he should normally be able to see.
Classes of objects which can be shared is defined in XML by a to-be-created extension or an XML injection
Objects are shared between organizations individually.
Objects can be shared with multiple organizations
When an object X belonging to organization A is shared with organization B, it can be modified by any user who has
Write-accesson this object class for organization A.
User having organization B but not A within his “Allowed Organizations”, even if he has write access on the class of object X, will not have write access to that object, as it does not belong to one of his “Allowed Organizations”.
|1.1.0||2022-02-09||Fix compatibility with iTop 3.0|
Sharing is only explicit, object by object, it cannot be defined on rules.
It shares objects in read mode, it does not enable write access to the shared objets.
Use the Standard installation process for this extension.
To enable Sharing on some classes, add this XML code either as injection in the delta XML or within an extension
<snippets _delta="define"> <snippet id="Sharing classes"> <placement>module</placement> <module>sharing-base</module> <rank>10</rank> <content><![CDATA[ SharedObject::DeclareSharedClass("Location"); SharedObject::DeclareSharedClass("Document"); ]]></content> </snippet> </snippets>
By default, only administrators are allowed to share object. If you want to add other profiles, you need to add XML as injection in the delta XML.
More over if you want to add OQL throw designer based on these
new classes, you need to add this XML code as injection in the
delta XML on
<class id="SharedLocation" _delta="define"> <fields> <field xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="pdu_id" xsi:type="AttributeExternalKey"> <target_class>Location</target_class> </field> <field xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="org_id" xsi:type="AttributeExternalKey"> <target_class>Organization</target_class> </field> </fields> </class>