CzechIdM a Remote Connector Server

Konektory, které Identity Manager CzechIdM používá pro komunikaci s koncovými systémy, jsou volány prostřednictvím takzvaného OpenICF Connector Serveru. V naprosté většině případů administrátor použije lokální Connector Server, který je součástí každé instalace CzechIdM. Existují ovšem situace, kdy se vyplatí (anebo je to dokonce nezbytné) použít vzdálený Connector Server, tedy samostatně běžící aplikaci, na CzechIdM zcela nezávislou.

Ve svém článku takové situace zmíním, ukážu, jak nainstalovat samostatně běžící Java Connector Server, a naučím vás, jak se k němu z běžícího CzechIdM připojit.

Lokální versus vzdálený

V rámci projektu OpenICF dosud vznikly dva typy vzdáleného Connector Serveru: Java Connector Server a .NET Connector Server.

Výhodou vzdáleného Java Connector Serveru může být rozložení zátěže: volání konektorů pak neběží ve stejné VM jako samotné CzechIdM, ale ve VM na vzdáleném stroji.

.NET Connector Server je naproti tomu nutné používat pro konektory napsané v jazyce C#. Jelikož Java nepodporuje volání C# za běhu, je .NET Connector Server pro některé koncové systémy (například Active Directory) zcela nezbytný.

Pokud ovšem vás ovšem netrápí ani jeden z výše uvedených problémů, použijte raději standardní lokální server, který je součástí vaší instalace CzechIdM. Administrace takového připojení je jednodušší.

Instalace Java Connector Serveru

Než se pustíte do samotné instalace, ujistěte se, že používáte Javu 1.5 nebo novější.

Vytvořte si nový adresář, do kterého Connector Server, budeme instalovat. V něm vytvořte podadresáře lib a bundles:

/opt $ mkdir jconnserver; cd jconnserver
/opt/jconnserver $ mkdir lib; mkdir bundles

Stáhněte si ze stránek OpenICF balíčky connector-framework.jar, connector-framework-internal.jar a groovy-all.jar a zkopírujte je do adresáře jconnserver.

V balíčku connector-framework-internal.jar najděte soubor org/identityconnectors/framework/server/ConnectorServer.properties a zkopírujte ho do adresáře jconnserver.

Nastavte heslo ke Connector Serveru:

/opt/jconnserver $ java -jar connector-framework-internal.jar -setKey -key Heslo1234 -properties ConnectorServer.properties

Soubor ConnectorServer.properties by měl vypadat přibližně takto:

# Port, na kterem bude server poslouchat
connectorserver.port=8759

# Adresar, do ktereho budou nahrany konektory
connectorserver.bundleDir=bundles

# Adresar, do ktereho budou nahrany pomocne knihovny
connectorserver.libDir=lib

# Zda se pro pripojeni ma pouzivat ssl
connectorserver.usessl=false

# Otisk zadaneho hesla
connectorserver.key=lmA6bMfENJGlIDbfrVtklXFK32s\=

Do adresáře bundles nyní můžete nahrát balíček s konektorem, do adresáře lib všechny potřebné knihovny a spustit Connector Server příkazem:

$ java -cp "connector-framework.jar:connector-framework-internal.jar:groovy-all.jar" org.identityconnectors.framework.server.Main -run -properties connectorserver.properties

Dejte si pozor na classpath! Pokud váš konektor používá nějaké externí jar balíky, nezapomeňte je uvést!

Konfigurace v CzechIdM

Předpokládejme, že jsme Java Connector Server, nainstalovaný v minulé kapitole, spustili na localhostu, tedy hned vedle naší běžící instalace CzechIdM. Pokud jsme do Java Connector Serveru nahráli bundle pro nějaký konektor, můžeme se k němu z CzechIdM pokusit připojit.

Přihlaste se do administrátorskéh rozhraní CzechIdM, v menu klikněte na „Systémy“, v podmenu na „Typy systémů“ a na tlačítko „Nový typ“. Objeví se jednoduchý dotaz na typ Connector Serveru, který chcete použít:

Pokud zaškrtnete, že se má použít lokální Connector Server, stačí standardně zvolit bundle s implementací konektoru. Zvolíte-li opačnou možnost, musíte vyplnit údaje pro připojení ke vzdálenému Connector Serveru:

Jakmile kliknete na „Uložit“, můžete obvyklým způsobem nadefinovat nový koncový systém s tímto typem. Pro připojení se nyní bude používat Remote Connector Server.

Závěr

Pokud jste dočetli až sem, mohli jste se dozvědět něco o Remote Connector Serveru a jeho použití v Identity Manageru CzechIdM. Pokud se chcete dozvědět víc, klidně mi napište, moje adresa je vojtech.matocha@bcvsolutions.eu.