Wren:ICF Java Framework is a set of components for building and running identity connectors in Java. It provides the core API, SPI and runtime needed to develop, deploy and manage connectors that integrate external identity resources with your application.
Wren:ICF is one of the projects in the Wren Security Suite, a community initiative that adopted open-source projects formerly developed by ForgeRock, which has its own roots in Sun Microsystems' products.
An identity connector is a component that provides uniform access to an external identity resource such as an LDAP directory, relational database, REST service or a flat file. The connector translates generic operations defined by the framework (create, read, update, delete, search, sync, etc.) into resource-specific calls, hiding the communication details behind a common interface (ConnectorFacade).
Connector developers implement the SPI interfaces (e.g. CreateOp, SearchOp, SyncOp) while
applications consume connectors through the corresponding API operations (e.g. CreateApiOp,
SearchApiOp, SyncApiOp).
A connector bundle is a JAR containing one or more connector implementations together with their metadata
and internal dependencies (bundled JARs). The bundle manifest includes special JAR Manifest headers
(ConnectorBundle-FrameworkVersion, ConnectorBundle-Name, ConnectorBundle-Version) that allow the framework
to discover and load connectors at runtime. Bundles can be deployed locally or served remotely through the connector
server.
You can get Wren:ICF Java Framework in a couple of ways:
Wren:ICF artifacts are published to the Wren Security Maven repository. Add the repository and dependency to your project:
<repositories>
<repository>
<id>wrensecurity-releases</id>
<url>https://wrensecurity.jfrog.io/wrensecurity/releases</url>
</repository>
</repositories>
<dependency>
<groupId>org.wrensecurity.wrenicf</groupId>
<artifactId>connector-framework-core</artifactId>
<version>1.5.4.0-M1</version>
</dependency>In order to build the project from the command line follow these steps:
Prepare your Environment
Following software is needed to build the project:
| Software | Required Version |
|---|---|
| OpenJDK | 17 and above |
| Git | 2.0 and above |
| Maven | 3.0 and above |
Build the source code
All project dependencies are hosted in JFrog repository and managed by Maven, so to build the project simply execute Maven verify goal.
$ cd wrenicf-java-framework
$ mvn clean verify
Large portions of the source code are based on the open-source projects previously released by:
- Sun Microsystems
- ForgeRock
We'd like to thank them for supporting the idea of open-source software.
Please note that the acknowledged parties are not affiliated with this project. Their trade names, product names and trademarks should not be used to refer to the Wren Security products, as it might be considered an unfair commercial practice.
Wren Security is open source and always will be.