Architecture for Bandit Identity Provider

The Bandit IdP is comprised of multiple components, many of which come from the Higgins site. These components are as follows:

  • Various Higgins STS Components. The Higgins STS is included in the IdP to issue security tokens.
  • Various Higgins IdAS Components. The IdAS components provide an abstract interface that allows the IdP to retrieve and update identity information from various backend identity stores.
  • The Higgins IdAS JNDI (LDAP) Context Provider Component. This component allows communication, via the IdAS interface, to any JNDI store. This is the context provider that is used to communicate with LDAP identity stores.
  • The Higgins IdAS XML File Context Provider Component. This component identity information to be stored in an XML file.
  • JSP code to provide a web interface for the IdP. The Web UI provides two major categories of user functionality:
    • Functions for ordinary users. This includes the ability to create and modify user accounts, and the ability to issue information cards.
    • Functions for the administrator. This includes the ability to configure the IdP, the ability to define what attributes constitute a user identity, and the ability to create card templates that define the kinds of information cards that the IdP can issue to users.
  • Third Party libraries (jar files) needed. These are JAR files from various third parties that are needed by the Higgins components and Bandit components.
  • Source for all of the components. This allows consumers to make custom enhancements as well as bug fixes without having to wait for the next official release. We encourage consumers to submit enhancements and bug fixes back to the open source projects.
  • Sample configuration files. These configuration files are those used to configure the IdP. It is not necessary to edit the configuration files directly. All configuration tasks can be done through the administrative web pages.
  • Build scripts needed to build a Tomcat WAR file. These scripts allow you to rebuild the entire package after you have made any changes.