ScriptedSQL Connector

Last modified 17 Oct 2023 12:20 +02:00

Generic identity connector for SQL databases, using custom script code.

Functionalitystable
Development statusdormant (not developed actively, but still somehow maintained)
Support statussupportable
OriginOpenICF, adopted by Evolveum
Support provided byEvolveum
Target systemsGeneric SQL databases (JDBC)
ProtocolJDBC
Source codehttps://github.com/Evolveum/connector-scripted-sql

The connector can be described as a "wrapper" for scripts (e.g. Groovy) where custom scripts provide implementation of the operations (Create, Update, Delete etc.)

Capabilities and Features

Provisioning

YES

Live Synchronization

YES

Password

YES

Activation

YES

Filtering changes

Paging support

YES

Native attribute names

YES

History

This connector was originally developed in OpenICF project. This version of the connector was heavily updated during 2018. Scripts used with ScriptedSQL Connector (deprecated) have to be modified.

Connector history continues in the spring of 2019, when Evolveum adopted the connector. Additional fixes were provided and connector architecture changed to PoolableConnector. Poolable connector let midPoint decide over the connection objects life cycle rather than relying on deprecated tomcat7 connection pool (which was replaced). As a consequence of this change, parameters from previous connector version are not compatible with new poolable connector as connection data source changed. However migration is fairly easy, just make sure at least following resource parameters are set (on top of providing usual script file names for groovy part of the connector):

Parameter Example value

jdbcDriver

com.microsoft.sqlserver.jdbc.SQLServerDriver

jdbcUrlTemplate

jdbc:sqlserver://localhost\\DBInterface:1433

user

midpoint

password

*

Connection Validation Query parameter was dropped since checkAlive method uses less costly methods to validate connection pulled from the pool.

Versions

Version Origin Binary Sources Build Date Framework Version Bundled with midPoint Description

2.0

Polygon

download jar

GitHub (v2.0 tag)

N/A

1.5.0.0

No

1.4.2.14

2.1

Polygon

download jar

GitHub (v2.1 tag)

2019/09/09

1.5.0.0

No

Fixes: Binary attribute support Improvements: Poolable connector, relative changes update. Resource settings not compatible with previous version, see History section.

2.2

Polygon

download jar

GitHub (v2.2 tag)

2020/09/29

1.5.0.0

No

Minor fixes (dependency upgrades)

2.2.1

Polygon

download jar

GitHub (v2.2.1 tag)

2020/10/12

1.5.0.0

No

JUL logging fix

2.3

Polygon

download jar

GitHub (v2.3 tag)

2020/10/12

1.5.0.0

No

Upgrade to Groovy 4 (Required for midPoint 4.8)

Logging

Use implicit log variable in your resource script as follows:

log.info("Entering " + operation + " Script")

Turn on midPoint logging for specific script file name. For instance for SearchScript.groovy use the SearchScript value without .groovy extension:

image2019 4 5 10 9 5

If your scripts are using packages, please use also package name, e.g. mypackage.SearchScript value without .groovy extension.

Resource Examples

Was this page helpful?
YES NO
Thanks for your feedback