Developers can use the PingFederate SDK to create specific drivers for non-JDBC or LDAP datastores (or more sophisticated JDBC or LDAP queries) including; for example, flat files or SOAP-connected databases. Furthermore, datastores may be written to perform configuration assistance or validation actions, such as testing a connection to a database. Actions may also include generation of parameters that might need to be set manually in a configuration file. Once the datastore driver (JAR) file is written and installed, you can select it on the Data Store screen when creating a new instance of your datastore.

For more information, refer to the Javadoc for the CustomDataSourceDriver interface, the SamplePropertiesDataStore.java file for a sample implementation, and the SDK developer's guide for build and deployment information.

Tip:

The Javadoc for PingFederate and the sample implementation are located under the <pf_install>/pingfederate/sdk directory.

  1. On the Configure Data Store Instance screen, configure your datastore instance.
    Depending on the datastore implementation, configuration requirements vary.

    For example, after building and deploying the sample from the <pf_install>/pingfederate/sdk/plugin-src/custom-data-store-example directory, you can create an instance of the Sample SDK Properties Data Store and configure the rest, as illustrated in the following screen captures.

    A sample screenshot of the Data Store Type screen.
    A sample screenshot of the Configure Data Store Instance screen.
    When editing an existing instance, you can optionally modify the name of the datastore instance and toggle the option whether PingFederate should mask attribute values returned from this datastore instance in PingFederate logs.
  2. On the Actions screen (if shown), follow the on-screen instructions provided by the developer to complete any required tasks.
    Depending on the datastore implementation, configuration requirements vary. If no action is required, this screen is not shown.
  3. Click Save to keep your configuration.