Product DocsMenu

Modifying Hidden Microsoft Exchange Source Parameters

The Add Source and Source: ... General pages of the Administration Tool present the parameters with which you can configure the connector for most Microsoft Exchange setups. More advanced and more rarely used parameters are hidden. You can choose to make one or more of these parameters appear in the Add Source and Source: ... General pages of the Administration Tool so that you can change their default value.

The following list describes the available advanced hidden parameters for Microsoft Exchange sources. The parameter type (integer, string…) appears between parentheses following the parameter name.

UseAdCache (Boolean) CES 7.0.8047+ (December 2015)

Whether an Active Directory mailbox cache is used to reduce the number of AD calls required when the crawler browses the Exchange Active Directory server. The default value is false. Change the value to true when you have issues with the load on the Exchange Active Directory server (which can be due to several incremental refreshes in a short period of time).

Note: The cache is only used during incremental refresh operations and filled when the source is rebuilding or refreshing.

UseCallbackServiceForMultipleExchangeOnlineStartingItems (Boolean) CES 7.0.8047+ (December 2015)

Whether the Notification Callback Service is activated. The default value is false. Consider changing this value to true when you have 20 (or less) Exchange Online mailboxes or public folders.

Note: Due to an Exchange Web Services limitation, the maximum number of online mailbox subscriptions is approximately 20 (see Exchange Online Throttling and Limits FAQ).

When you try to subscribe to more mailboxes/public folders, you get the following error message:

Folder error: https://outlook.office365.com/public/[path]

You have exceeded the available subscriptions for your account.

Remove unnecessary subscriptions and try your request again.

CES 7.0.7814+ (August 2015) List of required hidden parameters when indexing Exchange Online mailboxes of Azure AD users:

LDAPSearchRoot (String)

Specifies to the connector where to start looking in Active Directory. When this parameter is not specified, the connector looks at the root of Active Directory, which can be extremely large. By specifying a value, you can refine the search (see What Are LDAP Searches?).

Example: To search only within the organizational unit (OU) companynameOU within the domain corp.companyname.com, enter:
LDAP://OU=companynameOU, DC=corp, DC=companyname, DC=com

LDAPFilters (String)

Filter applied to the search of Active Directory in order to find mailboxes (see What Are LDAP Searches?). Allows adding properties to the results the connector is looking for. The default filter is: (&(mail=*)(objectclass=user)(objectclass=person)).

This AND operation is performed on a few properties to find the maximum number of mailboxes without receiving any unwanted ones. If this filter is not specific enough, you can complete the filter by adding a value to the AND operation on the filter.

Example: When you enter the value cn=JohnSmith in the parameter, the resulting filter is: (&(mail=*)(objectclass=user)(objectclass=person)(cn=JohnSmith)

GroupLDAPFilters (String)

Parameter used to filter the AD group expansion when the ExpandADGroups is set to true. This parameter behaves like the LDAPFilters parameter.

TimeOut (Integer)

The number of seconds to wait for Microsoft Exchange to answer when the crawler performs a request. The default value is 30 seconds.

NbPrefetchThreads (Integer)

The number of threads that attempt to get changes ahead of time from the server. The default value is 2.

Note: Increasing this above the value of the ConnectionLimit parameter has no effect and may even reduce performance as more threads fight for the smaller amount of connections.

NbRefreshThreads (Integer)

The number of threads that consume the prefetched items. These will also need to connect to the Microsoft Exchange Server to download attachments. The default value is 2.

MaxNumberPrefetchChanges (Integer)

Maximum number of items that can be stored in the prefetch cache. This cache is useful to reduce the delay between each query to Microsoft Exchange. The default value is 200.

Increasing this value increases performance, but also the amount of memory used by the connector. If the connector is running on a server with limited memory resources, lowering this number to 100 or 50 can prevent out of memory issues.

BatchSize (Integer)

Number of items to fetch per request made to the Microsoft Exchange Server. The default value is 50. The minimum value is 1 and the maximum 512. A small value forces the connector to make small but frequent queries to Microsoft Exchange. A larger value leads to larger and less frequent connections.

IndexMailbox (Boolean)

Determines if normal mailboxes should be indexed. This parameter only makes sense with Microsoft Exchange 2010 where archives also exist. The default value is true.

IndexArchive (Boolean)

Determines if Microsoft Exchange 2013 or 2010 archive mailboxes should be indexed. The default value is true.

IndexOutbox (Boolean)

Can be added to crawl the Outbox folder. This folder usually only temporarily contains emails before they are sent by the Exchange server. The default value is false.

IndexJunkAttachments (Boolean)

When set to true, the attachments of junk emails are indexed, otherwise they are ignored. The default value is false.

SkipEmbeddedImageAttachment (Boolean)

When set to true, the images embedded directly within the text of an email (like signature images) are skipped, otherwise they are indexed. The default value is true.

UserDefinedFields (String)

Can be added to retrieve user defined fields from Microsoft Exchange items. This string is in the following format: Fieldtype:FieldName;FieldType:FieldName, etc. The FieldType value is taken directly from the Microsoft Exchange Form Designer. The FieldName value is the name of the field as entered in the Form Designer.

ConnectionLimit (Integer)

Can be added to increase performance. If you plan on increasing the number of threads in the connector, you will also need to increase this value. The suggested value is the sum of all the threads you want to be able to connect to Exchange, in all your sources. Increasing this value will increase the load on the Exchange Server. The default value is 2.

OMCAdditionalIncludes (String)

Parameter used to specify additional item classes to get. By default, the crawler gets the following types:

  • IPM.Note

  • IPM.Post

  • IPM.Document

  • IPM.Contact

  • IPM.Appointment

  • IPM.Task

  • IPM.TaskRequest

  • IPM.Object

  • IPM.DistList

  • IPM.Organization

  • IPM.StickyNote

  • IPC

  • IPM.Sharing

Additional fields must be separated by a semi-colon (;). These types are recursive.

Example: When the crawler gets IPM.Note, it also gets IPM.Note.Whatever.

Note: When you add a type and later remove it, the indexed items of that type will be deleted at the next rebuild.

OMCExcludes (String)

Parameter allowing to exclude particular item classes that are included by default or by the OMCAdditionalIncludes parameter. The exclusion is recursive.

Example: When you exclude IPM.Note, you also exclude IPM.Note.Whatever.

Note: When you exclude a type for which items are indexed, the indexed items of that type will be deleted at the next rebuild.

IgnoreUnresolvedDeniedSecurities (Boolean)

Can be added to allow the connector to keep crawling even after finding denied permissions that could not be resolved. This behavior could create a security hole, so this parameter should be used with caution. The default value is false.

ResolveDisplayValuesWithContacts (Boolean)

Can be added to allow the connector to perform a resolution of the email address values found on emails with the mailbox contacts. The default value is false.

Example: When the connector finds the To value jsmith <jsmith@companyname.com>, it looks into the contacts folder of this mailbox and tries to form a new value using the first and last name of the contact: John Smith <jsmith@companyname.com>.

ExpandADGroups (Boolean)

Can be added to allow the connector to perform an expansion of Active Directory groups it finds while looking for users (based on the LDAPSearchRoot and LDAPFilters parameters). The users found in these groups that have a mailbox are added to the list of mailboxes to crawl, even if they do not match the original LDAPSearchRoot or LDAPFilterss. The default value is false.

MaxReceivedMessageSize (Integer)

The maximum size of messages (in bytes) received from the Exchange callback service that the Exchange crawler can accept. A message appears indicating when this parameter needs to be changed. The default value is 2048000. This parameter may need to be changed only for Exchange servers with very high email traffic.

CallbackServiceTimeout (Integer)

The number of seconds the Exchange crawler waits for the Exchange callback service to send a message or receive an answer. The default value is 60 seconds. You can increase this parameter if you receive timeout messages from the Exchange callback service. This parameter may need to be changed only for Exchange servers with very high email traffic.

Exchange2013ViewModelValue (String) CES 7.0.5989+ (October 2013)

For Exchange Server 2013 and Exchange Online, use this parameter to modify the default value of the ViewModel attribute in the OWA clickable URIs to ensure that the OWA URI is valid. When the OWA URI is invalid, end-users are not able to open Exchange search results in Outlook Web Access (OWA).

You can find the appropriate value to use for this parameter for your deployment as follows:

  1. In Outlook Web Access, open an email message in a separate browser window or tab.

  2. In the browser address bar, look for the ViewModel attribute value (example reported in the Microsoft documentation: _y$Ep).

    Example: In the following clickable URI example, the ViewModel attribute uses the default value (ReadMessageItem):

    https://exchange.server/owa/#viewmodel=ReadMessageItem&ItemID=12o378459749379375byvyt7b3

  3. When the ViewModel attribute value read from the URL is not the default (ReadMessageItem), enter it for the Exchange2013ViewModelValue parameter value.

Note: In the out-of-the-box search interfaces preferences, end-users can clear the Open emails with Microsoft Outlook option to open email messages in Outlook Web App (OWA) rather than in Outlook when clicking an email search result (see Modifying .NET Search Interface Preferences).

IndexedContentScope (String) CES 7.0.6196+ (November 2013)

This parameter determines the type of content to index. The default is ServerOwnContent. The following table lists available values.

Values Description
ServerOwnContent Index all Exchange content except remote archives (Default).
Mailboxes Index only mailboxes
LocalArchives Index only local archives
RemoteArchives Index only remote archives

PowerShellEndpoint (String) CES 7.0.6684+ (May 2014)

Specifies the PowerShell endpoint of the Exchange server used by the connector to list all the mailboxes to crawl. The connector uses the LDAPSearchRoot parameter by default to expand starting addresses, but rather uses the PowerShellEndpoint parameter when it is defined.

For a Microsoft Exchange Online source like in the remote archive part of a hybrid deployment, you must specify the PowerShellEndpoint because in this case, Active Directory is not available, and consequently, LDAP searches cannot be used.

For the remote archive part in a hybrid deployment, although not obvious, you must connect PowerShell to the Exchange On-Premises Server to allow the connector to list the remote archives hosted in Exchange Online. This is because only the Exchange On-Premises Server can be queried to retrieve all mailboxes and to detect which of these mailboxes have its archive hosted on Exchange Online. The PowerShellEndpoint parameter value for an (local) Exchange On-Premises Server is typically in the following form:

https://exchange.mycompany.com/powershell

Notes:

  • The PowerShellEndpoint parameter is available starting with the CES 7.0.6684 May 2014 monthly release.

  • On the Coveo Master server, the crawler is allowed to execute a PowerShell script when the PowerShell execution policy is set to RemoteSigned (see Using the Set-ExecutionPolicy Cmdlet).

PowerShellUserName (String) CES 7.0.6684+ (May 2014)
PowerShellUserPassword (String) CES 7.0.6684+ (May 2014)

When a CES user identity associated with a source for a remote part of an Exchange hybrid deployment cannot meet all the requirements to access all necessary services, you can use the PowerShellUserName and PowerShellUserPassword parameters to add a set of PowerShell credentials meeting the requirements (see Creating a Microsoft Exchange Crawling Account).

Example: You need to access Exchange Online EWS using an In Cloud user which is not synchronized with Active Directory (AD). Since this In Cloud user is not a valid AD user and cannot be a local Exchange On-Premises Server administrator, you must add the PowerShellUserName and PowerShellUserPassword parameters to the source to hold the PowerShell credentials meeting the requirements.

Note: Be aware that the PowerShellUserName and PowerShellUserPassword parameter strings are saved in clear text in the connector configuration file.

OnlyIndexActiveUserMailboxes (Boolean) CES 7.0.6830+ (July 2014)

When set to true, the default, the mailboxes of disabled users are not indexed. Set this parameter to false when you want to index disabled user mailboxes along with those of active users.

Note: The OnlyIndexActiveUserMailboxes parameter replaces the IndexMailboxUsersOnly obsolete parameter.

UseDefaultFiltersToFindMailboxes (Boolean) CES 7.0.6830+ (July 2014)

When set to true, the default, adds the default Coveo LDAP Filters to our LDAP Queries:

"(&(mail=*)(objectclass=user)(objectclass=person)"

Note: The UseDefaultFiltersToFindMailboxes parameter replaces the IndexMailboxUsersOnly obsolete parameter.

IgnoreRMSEmailBody (Boolean) CES 7.0.7433+ (February 2015)

Whether to ignore the body of emails protected by Microsoft rights Management Services (RMS) policies. The default value is true, meaning that RMS protected emails are not indexed.

RMSMessage (String) CES 7.0.7433+ (February 2015)

The message the crawler looks for to determine if emails are RMS protected or not. The default value is This message uses Microsoft Information Protection solutions. Open this item using an email application that supports protected messages. Only change this value when you modified the message replacing the body of RMS protected emails in Exchange.

IndexMailboxUsersOnly (Boolean) OBSOLETE CES 7.0.6767– (June 2014)

When set to false, the mailboxes of disabled users are indexed along with the mailboxes of active users. The default value is true, meaning that disabled users mailboxes are not indexed.

Note: The IndexMailboxUsersOnly parameter was available for CES 7.0.5556+ (June 2013) to CES 7.0.6767– (June 2014) inclusively, but its functionality is now replaced by two parameters: OnlyIndexActiveUserMailboxes and UseDefaultFiltersToFindMailboxes.

DateScopedCrawlingSinceXDays (Integer) CES 7.0.8225+ (March 2016)

Instructs to index only items with a modification date between now and the specified number of previous days. By default, there is no modification date filter. This parameter is useful to limit the size of a source when you do not need old items to be searchable.

Example: You want to index only items that have been modified over the last 2 years, so you set the DateScopedCrawlingSinceXDays parameter to 730 (days).

Note: You cannot set a value for the DateScopedCrawlingSinceXDays when you use either of the DateScopedCrawlingRangeLowerLimit or DateScopedCrawlingRangeUpperLimit parameters.

DateScopedCrawlingRangeLowerLimit (String)
DateScopedCrawlingRangeUpperLimit (String) CES 7.0.8225+ (March 2016)

Indexes only items for which the modification date is equal or after (DateScopedCrawlingRangeLowerLimit parameter) or before (DateScopedCrawlingRangeUpperLimit parameter) the specified date entered in the MM/dd/yyyy format. These parameters, together or alone, are useful to limit the size of a source and allow you to split your Exchange content in 2 or more sources based on content modification dates.

Example: You use both the DateScopedCrawlingRangeLowerLimit or DateScopedCrawlingRangeUpperLimit parameters to create one Exchange source per previous year from 01/01/yyyy to 12/31/yyyy, and the DateScopedCrawlingRangeLowerLimit parameter to configure one source for the current year. Only the current year source needs to be regularly refreshed, reducing the load on your Exchange server.

Note: You cannot you use either of the DateScopedCrawlingRangeLowerLimit or DateScopedCrawlingRangeUpperLimit parameters when you use the DateScopedCrawlingSinceXDays parameter.

Use the following procedure only when you want to modify one or more of the above hidden source parameters.

To modify hidden Microsoft Exchange source parameters

  1. Refer to Adding an Explicit Connector Parameter to add one or more Microsoft Exchange hidden source parameters.

  2. For a new Microsoft Exchange source, access the Add Source page of the Administration Tool to modify the value of the newly added advanced parameter:

    1. Select Index > Sources and Collections.

    2. Under Collections, select the collection in which you want to add the source.

    3. Under Sources, click Add.

    4. In the Add Source page, edit the newly added advanced parameter value.

  3. For an existing Microsoft Exchange source, access the Source: ... General page of the Administration Tool to modify the value of the newly added advanced parameter:

    1. Select Index > Sources and Collections.

    2. Under Collections, select the collection containing the source you want to modify.

    3. Under Sources, click the existing Microsoft Exchange source in which you want to modify the newly added advanced parameter.

    4. In the Source: ... General page, edit the newly added advanced parameter value.

People who viewed this topic also viewed