You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

In a Grouper v2.5 container build we will re-organize the configuration for external systems.  In general this will consolidate most the credentials that grouper uses (except to its own database).

In the Grouper UI you will be able to review all the configured external systems in one place with an easy-to-use UI.

We will try not to make changes to how these things are configured so that few or no changes are needed to leverage the new functionality.

This will assume you are storing configuration in the database, since the UI needs to save its settings.  If you do not want encrypted passwords in the database you will be able to enter a scriptlet to get the password from an environment variable or other place.

UI changes to "misc"

  • In "Misc" will we re-organize and have an "Administration" link that move the following links underneath
    • Configure
    • Subject API diagnostics
    • All daemon jobs
    • Loader jobs
    • Unresolvable subject
    • External systems (e.g. LDAP, database, etc)

Screens

  1. Main screen shows table of external system sorted by type, and name
    1. Show some of the configuration
    2. If enabled
    3. "Test all" button
    4. Each item is clickable to go to details
  2. Detail screen
    1. Drop down to 
      1. Enable/disable
      2. Test
      3. Edit
      4. Delete (with a confirm)
    2. Show all configuration
    3. Test by default and show status
    4. Section for "Used by" (which provisioners/loaders use it, clickable to each provisioner/loader (TODO LATER)
  3. Edit screen
    1. Standard label/form element/documentation look and feel
    2. Allow scriptlets for database
    3. Show default value if not entered

Technical details

  • GrouperExternalSystem abstract class per type (one for LDAP, one for SQL, etc)
  • configId property
  • enabled property
  • Validate (test) method (optional)
  • saveConfig() method
  • listAllExternalSystemsOfThisType() method to get a list of all of this type (e.g. all LDAP systems)
  • retrieveAllUsedBy() returns everything that uses this
    • GrouperExternalSystemUsedBy
    • name
    • links to externalized text
  • return list of attributes
    • GrouperExternalSystemAttribute
    • type
    • standard validations
    • links to externalized text
    • order
    • required?
    • get value
    • configSuffix
    • default value
  • No labels