You are viewing the documentation for the current version.
This page is also available in versions: 7.6, 7.7, 7.8, 8.0, 8.1, 9.0, 9.1, 9.2, 9.3, 9.4, 9.5 (current), devel

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

9.5:documentation:transformation_scripts [2019/02/27 10:25] (current)
Line 1: Line 1:
 +<- .:​provisioning | Provisioning ^ .:start | Documentation ^ .:​scheduled_task | Scheduled tasks ->
  
 +====== Transformation scripts ======
 +Often, CzechIdM transform data from source system to managed system. For example CzechIdM wants to fill Active Directory'​s attribute //​diplayName//​ that is of format <​firstName + LastName>​. CzechIdM offers using a transformation script during [[devel:​documentation:​synchronization|Synchronization]] and [[devel:​documentation:​provisioning|Provisioning]].
 +
 +{{ :​devel:​documentation:​transformations.png | Transformation during provisioning}}
 +
 +Filling one attribute from 2 entity (identity in our case) attributes, the script is as simple as that:
 +
 +<​code>​
 +entity.firstName + " " + entity.lastName
 +</​code>​
 +
 +===== The scripts definition library =====
 +There is a convenient way of how to use transformation scripts. When connecting a system, it is possible to use bundled scripts in so called CzechIdM scripts library. CzechIdM administrators can also add new scripts to the library or change current scripts there.
 +
 +===== Scripts as files =====
 +
 +In fact, all default scripts that are available in GUI after CzechIdM installation,​ were loaded into application during its previous start. They meet XML format and file incorporates the script body (groovy), script privileges and its purpose. So if you want to track changes on your scripts e.g. with git, this is the best way.
 +
 +====== Read more ======
 +
 +===== Admin tutorials =====
 +  * [[tutorial:​adm:​transformation_scripts| Transformation scripts - Creating scripts and working with their library]]
 +
 +===== Admin guide =====
 +  * [[.adm:​transformations|Scripts]]
 +
 +===== Devel guide =====
 +  * [[.transformation_scripts:​dev:​scripts]]