Documentation

{{docApp.title}}

{{docApp.description}}

How can we help?

{{docApp.searchError}}
{{product.name}}

Searching in {{docApp.searchFilterBySpecificBookTitle}}

{{docApp.searchResultFilteredItems.length}} results for: {{docApp.currentResultsSearchText}} in {{docApp.searchFilterBySpecificBookTitle}}
Search results have been limited. There are a total of {{docApp.searchResponse.totalResultsAvailable}} matches.

You have an odd number of " characters in your search terms - each one needs closing with a matching " character!

{{docApp.libraryHomeViewProduct.title || docApp.libraryHomeViewProduct.id}}

{{docApp.libraryHomeViewProduct.description}}

  1. {{book.title}}

{{group.title || group.id}}

{{group.description}}

  1. {{book.title}}

{{group.title}}

Troubleshooting Azure User Imports

Logs

All logs are saved in the log folder, which can be found in the same location as the executable. The log file names contain the date and time the import was run, for example: Azure_User_Import_2023-08-30T16-19-51+01-00.log.

Common Errors

Below are some common errors that you may encounter in the user imports log file and what they mean:

  • Error processing authentication details: Decryption of authentication data failed: Key not valid for use in specified state.
    • This error can occur for either of the below states and can be resolved by either running the import as the same session user and on the same computer that the original import authentication took place, or by resetting the encrypted credentials:
      • When the user who runs the import is not the same user who first ran the import;
      • When the import is run on a different computer from the one that originally performed the authentication details encryption.
  • Error Decoding Configuration File:...
    • This will typically be due to a missing quote (") or comma (,) somewhere in the configuration file. This is where an online JSON viewer/validator can come in handy rather than trawling the conf file looking for that proverbial needle in a haystack.
  • Get https://api.github.com/repos/hornbill/user-import-azure/tags: dial tcp xx.xx.xx.xx:xxx: ...
    • This most likely indicates that you have an HTTP proxy server on your network between the host running the executable and your Hornbill API endpoint. Ensure the HTTPS_PROXY environment variable is set, and that the proxy is configured to allow this communication. See the HTTP Proxies content from the Network section of the Overview article for more information.
  • panic: runtime error: invalid memory address or nil pointer deference [recovered]...
    • This error suggests an incorrectly specified attribute in the conf file. Where information is being obtained from a directory attribute, the attribute must be in the following format: {{.directoryAttributeName}}
  • Unable to Create User: Invalid value for parameter '[parameter name]': The text size provided (31 characters) is greater than the maximum allowable size of 20 characters for column [column name]
    • The contents of your directory attribute exceed the maximum number of characters that can be placed in the Hornbill database column.
  • Unable to Create User: The value in element <userId> did not meet the required input pattern constraints. at location '/methodCall/params/userId'
  • Unable to Create User: [usedID] Error: The specified handle [Display Name] is already in use
    • By default, the “Handle” (Hornbill Display Name) must be unique. This error suggests a user account already exists in Hornbill which is using this handle. The duplicate-handle validation can be disabled via a setting found in Hornbill Configuration, under Home > System > Advanced Settings and filtering for api.xmlmc.uniqueUserHandle.enable
  • Unable to Update User: Invalid value for parameter '[parameter name]': Error setting value for column '[column name]'. bad lexical cast: source type value could not be interpreted as target
    • This error indicates that the contents of your directory attribute are in a format that is not compatible with the type of the Hornbill database column. For example, you will get this when trying to place text into a database field that is of type “INT” (accepts integer values only).
  • Unable to Load Attribute: '[attribute name]' For Input Param: '[Hornbill Parameter name]'
    • When the import utility is unable to load a particular record attribute from your data source, this means that the attribute field in your directory does not contain a value. This error will not prevent the user account from being created or updated in Hornbill and can be considered more as a warning rather than an outright failure or problem.
  • Unable to Set User Status [status name]: You have reached your user subscription limit of [xx], you will need to expand your subscription level if you wish to add more users
    • The utility is trying to update the user status of an existing user account from an inactive status (i.e. “archived” or “suspended”) to “active”. However, for this to be successful you must have some subscriptions available.
  • Unable to run import, a previous import is still running
    • This can occur if the previous import has failed to complete. Perform a manual (non-scheduled) run of the import from the command line including the argument -forcerun=true. Future imports should now run without issue.
In This Document