Delegated Admin provides a way to exercise additional control over the form field for a given attribute. Although the presentation can be customized completely, example files are provided to help give a sense of the capabilities from a functionality standpoint.

Note: Because the example files will most likely require modifications to address your specific needs, we recommend a basic level of familiarity with HTML, CSS, and JavaScript when dealing with custom UI form fields.

The example files cover the following scenarios:

  • Single-selection lists, which allow users to select one item from multiple options
  • Check boxes, which can be customized so that one check box is dependent on the other
  • String fields with validation and error messages
  • Custom, user-friendly display of a JSON attribute, such as ubidEmailJSON
  • Multivalue string field, which allows users to enter multiple, comma-separated values

To set up Delegated Admin to use the custom HTML files and to display custom UI form fields, perform the following steps:

  1. Navigate to PingDirectory/webapps/delegator/app/customAttributes.
  2. Use an editor to open the relevant example HTML file, as shown by the following table.
    UI Form Field Example File
    Single selection list example-select.html
    Dependent check boxes example-dependent.html
    String field example-basic.html
    Custom display of a JSON attribute example-json.html
    Multivalue string field example-multivalue.html
  3. Make the appropriate modifications to the example file.
    For information about resizing and other custom capabilities, refer to the comments in PingDirectory/webapps/delegator/app/assets/iframe--v1.js.
  4. Save the example file as a new file named attributeName.html.
    For example, if you are setting up a custom attribute presentation for cn, name the file cn.html.
  5. Optional: For further clarity, create a directory under the customAttributes directory with the name of the resource endpoint of the REST resource types.
    For example, because a users type exists with the endpoint usersEndpoint, you might place cn.html under customAttributes/usersEndpoint/.
    When locating the appropriate HTML file, Delegated Admin searches for the attribute name under the endpoint folder, if one exists, before searching under the customAttributes folder.
  6. Within PingDirectory Server, set the attribute-presentation field for the Delegated Admin attribute to custom, as the following example shows.
    dsconfig set-delegated-admin-attribute-prop \
      --type-name users  \
      --attribute-type cn  \
      --set attribute-presentation:custom

Browsers that attempt to aggressively cache HTML files often save and reuse outdated versions of those files. Because such browsers might not display changes that are made to an example HTML file, we recommend that you include the following <meta> tag in the head of each custom HTML file:

<meta http-equiv="Cache-Control" content="no-cache"/>

If your browser still does not display the updated HTML file, try one or more of the following suggestions:

  • Clear the browser's cache.
  • Use a private browsing window.
  • Try a different browser.