Issue: User gets the authentication prompt when trying to open the InfoPath form from a SharePoint form library.



Background:

While submitting the credentials, user can open the form. However, when he try to pull some of the information from the drop down menu, which is custom field, he can’t see the information in the field.

Basic checks:

Initially I though it is a problem of the IE version, So we did some basic level of troubleshooting such as:

  • Clearing the IE history.
  • Resetting the IE to factory settings.
  • Repairing the Office using MS office diagnostic tool.
  • Clearing the InfoPath cache from Start -> Select Run- > Enter ‘InfoPath /cache clearall.
  • Deleted all files and folders within any other folders starting with FormCache: C:\Documents and Settings\[User]\Local Settings\Application Data\Microsoft\InfoPath **Note: [User] is your logon ID
  • Asked user to login to any other machine, there we saw the same behaviour.

    So this is not a machine specific issue and not that easy.

    Troubleshooting:

    Tried to reproduce the problem with a normal user account.

    Note: As a SharePoint admin there are two accounts to work with: a normal user account and the account with the farm level admin rights.

    When accessing the form with the higher privileged account, it could populate the values in the custom field in the InfoPath Form. However, the normal user account was also facing the same problem.

    It was not something very easy now.

    Tried to isolate the problem by adding the normal account at different level of permissions (Read/Contribute/Full Control) at Top level site/sub-site and the doc library level.

    Nothing worked.

    Now it was something to deal with at the form level. Then viewed the form structure to check where the problem was lying.

    One was sure that while opening the form it was talking to the list in the background via a web service (_vti_bin_lists.asmx) as you may have noticed from the authentication box.

    1. Edited the form in design mode.
    2. Checked the properties of the drop down box.



        3. As you can see from the properties, the ‘List box entries’ was using the values form an external data source. (Note: External data source can be anything like an XML Document, a Database, a Web service, and SharePoint Library or list.

       4.This information you can see by adding the data sources to the drop down box.

       5. By modifying we get to know from which list the field was populating the values. 
       
       6.
    Accessed that list from SharePoint site and checked that the list was not inheriting permissions from its parent site.

       7. Added the normal account and user account with the contribute permissions to the list and tried to access the form again. This time it didn’t asked for any authentication and values were also populating the drop down of the InfoPath form.

    To conclude, it was a permissions issue. Not on the form library though but on the list from where values were populating in the form.

    Product Applies to: SharePoint 2007, InfoPath 2007, SharePoint Server 2010 and InfoPath 2010.