Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Stop .
  2. In a text editor, open <frevvo-home>/tomcat/conf/Catalina/localhost/frevvo.xml.
  3. You can edit the LDAP Configuration Properties. Alternatively, you can start off from one of the sample configurations and provide only the key information listed above.
    1. Active Directory Sample 
    2. Open LDAP Sample
  4. Log into your LDAP Server and add a new group, frevvo.TenantAdmin (case sensitive)
  5. Assign the frevvo.TenantAdmin group to one or more users for tenant admin privilege.
  6. Start
  7. Login to  as a  administrator (user:admin and password:admin if you have not changed it)
  8. Click on Manage and then Manage Tenants
  9. You will see a page where the current tenants are listed. If this is a new installation you will only see the default tenant d
  10. Click on the plus sign (+) to add a new tenant.
  11. Configure the new tenant:
    1. In the drop down Security Manager Class choose LDAP/Active Directory Security Manager. If your version does not have a drop down, enter the following in the in the text box: com.frevvo.security.ldap.LDAPSecurityManager.
    2. Give it a tenant id. For the sake of this document lets assume you call it MYLDAP. Provide the tenant name and description.
    3. The Max Concurrent Users is the maximum allowed by your license or less.
    4. Specify the LDAP User ID that will have the tenant admin permission. 
    5. Click Submit. You will see your new tenant in the tenant list.

 

Note
There are four special roles in : frevvo.TenantAdmin, frevvo.Designer, frevvo.Publisher, frevvo.ReadOnly, that must be specified on your LDAP/AD Server if you have users that will be assigned these roles. The group names must be frevvo.TenantAdmin, frevvo.Designer, frevvo.Publisher, frevvo.ReadOnly . Upper/lower case may be a factor for Open LDAP systems.

 

Check if the configuration is correct

...

Code Block
Parameter name="frevvo.internal.baseurl" value="http:// <ip of the m/c where frevvo server is hosted>:<port>" override="false"/>

Live Forms login page authenticating against LDAP

This is the case where the user will authenticate through the 's login page but the user data is in LDAP. Once you complete the LDAP configuration you should have a tenant configured with the LDAP security manager. Lets assume that the tenant name you created is 'LDAP' and there is a user 'john' in LDAP. In that case, in 's login page:

Code Block
Username: john@LDAP 
Password: *****      
Tenant: <blank>

The password provided in the login page is the user's password in LDAP. A very important point to note is that the user name, "john" in the example above, needs to match the value for the LDAP entry attribute configured in the property com.frevvo.security.ldap.userIdDisplayAttribute. For instance, for Active Directory, the value of this property is normally sAMAccountName. That means  will try to find an entry in LDAP that has sAMAccountName=john. You can configure any attribute that uniquely identify the user and that the possible values don't have spaces.

LDAP Troubleshooting

If things are not working as you expected:

  • The primary source of information is the  log file. In most cases, the LDAP connector will try to indicate what the problem is in the logs. In the log file, look for lines with LDAPSecurityManager or FrevvoJNDIRealm.
  • It is useful to have an LDAP browser at hand, for instance, the Apache Directory Studio. With the browser you can:
    •  Check if the connection parameters that you configured in  are correct.
    •  Run queries against LDAP and make sure that the expressions you configured in   are correct and returning what you expect.
  • If you can't spot the problem and need to contact frevvo support:
    • Stop
    • Go to <frevvo-home>/tomcat/logs/frevvo.log.
    • Follow these steps to change the log level from INFO to DEBUG
    • Restart
    • Execute the steps that is causing problems.
    • Send the log file (zip) to Live Forms support (support@frevvo.com) with a description of the problem.
    • Restore the log level to INFO.

Below are some common cases to help with troubleshooting. All of them assume that the connectivity is working, meaning that you tested, from the same box where  is running that the connection parameters to the LDAP server you configured in  are correct. 

As an admin I can't list the users or groups for the LDAP tenant

This is can be a problem with the expression you configured in com.frevvo.security.ldap.allUsersFilter (for users) and/or com.frevvo.security.ldap.allGroupsFilter (for groups). Also verify that the search bases are correct, properties com.frevvo.security.ldap.usersBase (users) and com.frevvo.security.ldap.groupsBase (groups). The LDAP Browser is useful here. Execute a search using the same expression and bases you configured in  and check if the result is correct.

A user that should be a designer logs in but can't design forms

  1. Login to your LDAP/AD Server.
  2. Make sure you have a group defined for the designer role and it is named FrevvoDesigners.
  3. Make sure the user having the problem is a member of the FrevvoDesigners group.

Another potential issue is case sensitivity. Please refer to the topic Mixed or Upper case User Names below.

A user that should be an administrator logs in but can't manage the tenant

  1. Login to your LDAP/AD Server.
  2. Make sure you have a group defined for the designer role and it is named FrevvoAdmins.
  3. Make sure the user having the problem is a member of the FrevvoAdmins group. 

Another potential issue is case sensitivity. Please refer to the topic Mixed or Upper case User Names below.

I can authenticate against LDAP via the Live Forms login page but SSO is not working

  1. # In IIS:
    1. Make sure Windows Authentication is set in the Default Web App (or the web app used to send requests to )
    2. Verify that Anonymous Authentication is NOT set in the default Web App  (or the web used to send requests to )
  2. In :
    1. Open FREVVO_HOME/tomcat/conf/server.xml
    2. Look at the AJP connector configuration.
    3. Verify that it has the attribute tomcatAuthentication="false"

Can't login via the Live Forms login page

A common cause is that the distinguished name attribute is incorrect. That attribute is defined by the property com.frevvo.security.ldap.distinguishedNameAttribute. If you can't determine the distinguished name attribute for your system you can try the fall back strategy described here. Some common distinguished name attributes can be found here

Problems with Mixed or Uppercase User Names

Info

 user names are case sensitive; the user name johndoe'' is not the same as JohnDoe. Several LDAP systems are case insensitive. Thus the two user names would resolve to the same LDAP account but to different  user accounts.

To avoid case issues follow these three steps described in more detail below:

  1. Set com.frevvo.security.ldap.ignoreCase to true.
  2. Set frevvo.login.userid.case to lower.
  3. Convert control values to lower case if they are used in workflow routing to a specific user.

...

Upload and Video Control Behavior

If your system is configured for LDAP SSO, the upload and video controls exhibit the following behaviors:

  1. The "uploading...." snake image displays continuously when uploading an image to an upload control in a form, accessed from a space, on a mobile device.
  2. The video control will ask for credentials again in use/design mode if you are using the FireFox browser. In IE9, you will see the message: " The Web-page wants to run the following add-on: 'Windows Media Player' from 'Microsoft Corporation'. What's the risk?" Enter your credentials or run the add-on to proceed.

To workaround this issue, configure IIS so that it does not require re-authentication for every single request.

Live Forms login page authenticating against LDAP

This is the case where the user will authenticate through the 's login page but the user data is in LDAP. Once you complete the LDAP configuration you should have a tenant configured with the LDAP security manager. Lets assume that the tenant name you created is 'LDAP' and there is a user 'john' in LDAP. In that case, in 's login page:

Code Block
Username: john@LDAP 
Password: *****      
Tenant: <blank>

The password provided in the login page is the user's password in LDAP. A very important point to note is that the user name, "john" in the example above, needs to match the value for the LDAP entry attribute configured in the property com.frevvo.security.ldap.userIdDisplayAttribute. For instance, for Active Directory, the value of this property is normally sAMAccountName. That means  will try to find an entry in LDAP that has sAMAccountName=john. You can configure any attribute that uniquely identify the user and that the possible values don't have spaces.

LDAP Troubleshooting

If things are not working as you expected:

  • The primary source of information is the  log file. In most cases, the LDAP connector will try to indicate what the problem is in the logs. In the log file, look for lines with LDAPSecurityManager or FrevvoJNDIRealm.
  • It is useful to have an LDAP browser at hand, for instance, the Apache Directory Studio. With the browser you can:
    •  Check if the connection parameters that you configured in  are correct.
    •  Run queries against LDAP and make sure that the expressions you configured in   are correct and returning what you expect.
  • If you can't spot the problem and need to contact frevvo support:
    • Stop
    • Go to <frevvo-home>/tomcat/logs/frevvo.log.
    • Follow these steps to change the log level from INFO to DEBUG
    • Restart
    • Execute the steps that is causing problems.
    • Send the log file (zip) to Live Forms support (support@frevvo.com) with a description of the problem.
    • Restore the log level to INFO.

Below are some common cases to help with troubleshooting. All of them assume that the connectivity is working, meaning that you tested, from the same box where  is running that the connection parameters to the LDAP server you configured in  are correct. 

As an admin I can't list the users or groups for the LDAP tenant

This is can be a problem with the expression you configured in com.frevvo.security.ldap.allUsersFilter (for users) and/or com.frevvo.security.ldap.allGroupsFilter (for groups). Also verify that the search bases are correct, properties com.frevvo.security.ldap.usersBase (users) and com.frevvo.security.ldap.groupsBase (groups). The LDAP Browser is useful here. Execute a search using the same expression and bases you configured in  and check if the result is correct.

A user that should be a designer logs in but can't design forms

  1. Login to your LDAP/AD Server.
  2. Make sure you have a group defined for the designer role and it is named FrevvoDesigners.
  3. Make sure the user having the problem is a member of the FrevvoDesigners group.

Another potential issue is case sensitivity. Please refer to the topic Mixed or Upper case User Names below.

A user that should be an administrator logs in but can't manage the tenant

  1. Login to your LDAP/AD Server.
  2. Make sure you have a group defined for the designer role and it is named FrevvoAdmins.
  3. Make sure the user having the problem is a member of the FrevvoAdmins group. 

Another potential issue is case sensitivity. Please refer to the topic Mixed or Upper case User Names below.

I can authenticate against LDAP via the Live Forms login page but SSO is not working

  1. # In IIS:
    1. Make sure Windows Authentication is set in the Default Web App (or the web app used to send requests to )
    2. Verify that Anonymous Authentication is NOT set in the default Web App  (or the web used to send requests to )
  2. In :
    1. Open FREVVO_HOME/tomcat/conf/server.xml
    2. Look at the AJP connector configuration.
    3. Verify that it has the attribute tomcatAuthentication="false"

Can't login via the Live Forms login page

A common cause is that the distinguished name attribute is incorrect. That attribute is defined by the property com.frevvo.security.ldap.ignoreCase to true.

To prevent issues you could always login to  using lower case jstevens. LDAP will grant access as it is case insensitive and  will know that you may have the designer or admin special permission. However users can forget to do this. To force this configure 's web.xml parameter frevvo.login.userid.case by adding the <context-param> lines you see below. You can specify a value of either lower or upper.

Code Block
languagejavascript
<context-param>     
    <param-name>frevvo.login.userid.case</param-name>     
    <param-value>lower</param-value>     
    <description>Force all login user ids to upper or lower case</description> 
</context-param>

The second problem is in directing tasks to frevvo users if your LDAP user names are mixed case. One solution is to use hidden controls on your forms with rules to convert the case of user names to lower case. The example below shows two text controls on a form, one visible, EmployeeMixedCase, and the other hidden, Employee.

Image Removed

A user types a name (regardless of case) into the EmployeeMixedCase control. The hidden Employee control has a business rule that takes the value of the visible control and converts it to lowercase.

Code Block
Employee.value = EmployeeMixedCase.value.toLowerCase(); 

The form or workflow routing can then use {Employee} rather than the control that may be mixed case.

Upload and Video Control Behavior

If your system is configured for LDAP SSO, the upload and video controls exhibit the following behaviors:

  1. The "uploading...." snake image displays continuously when uploading an image to an upload control in a form, accessed from a space, on a mobile device.
  2. The video control will ask for credentials again in use/design mode if you are using the FireFox browser. In IE9, you will see the message: " The Web-page wants to run the following add-on: 'Windows Media Player' from 'Microsoft Corporation'. What's the risk?" Enter your credentials or run the add-on to proceed.

To workaround this issue, configure IIS so that it does not require re-authentication for every single requestdistinguishedNameAttribute. If you can't determine the distinguished name attribute for your system you can try the fall back strategy described here. Some common distinguished name attributes can be found here

Problems with Mixed or Uppercase User Names

Info

 user names are case sensitive; the user name johndoe'' is not the same as JohnDoe. Several LDAP systems are case insensitive. Thus the two user names would resolve to the same LDAP account but to different  user accounts.

To avoid case issues follow these three steps described in more detail below:

  1. Set com.frevvo.security.ldap.ignoreCase to true.
  2. Set frevvo.login.userid.case to lower.
  3. Convert control values to lower case if they are used in workflow routing to a specific user.

The first issue is cased by the user login in. For instance, John Stevens LDAP account is JStevens but he logs in as jstevens, he will be recognized by case insensitive LDAP and thus granted access but will not be recognized as a designer or as a tenant admin by . To solve this, set the property com.frevvo.security.ldap.ignoreCase to true.

To prevent issues you could always login to  using lower case jstevens. LDAP will grant access as it is case insensitive and  will know that you may have the designer or admin special permission. However users can forget to do this. To force this configure 's web.xml parameter frevvo.login.userid.case by adding the <context-param> lines you see below. You can specify a value of either lower or upper.

Code Block
languagejavascript
<context-param>     
    <param-name>frevvo.login.userid.case</param-name>     
    <param-value>lower</param-value>     
    <description>Force all login user ids to upper or lower case</description> 
</context-param>

The second problem is in directing tasks to frevvo users if your LDAP user names are mixed case. One solution is to use hidden controls on your forms with rules to convert the case of user names to lower case. The example below shows two text controls on a form, one visible, EmployeeMixedCase, and the other hidden, Employee.

Image Added

A user types a name (regardless of case) into the EmployeeMixedCase control. The hidden Employee control has a business rule that takes the value of the visible control and converts it to lowercase.

Code Block
Employee.value = EmployeeMixedCase.value.toLowerCase(); 

The form or workflow routing can then use {Employee} rather than the control that may be mixed case.

Active Directory Sample Configuration

...