---
title: "Enforce HTTPS for xConnect Search"
slug: "enforce-https-for-xconnect-search"
abstract: "How to enforce HTTPS for Sitecore xConnect Search."
---
# Enforce HTTPS for xConnect Search

| **Applies to** | xConnect Collection Search, xConnect Search Indexer |
| --- | --- |
| **Sitecore Installation Framework** | HTTPS is enforced by default. |
| **Azure Toolkit** | HTTPS is enforced by default |

This topic describes how to enforce communication over HTTPS between the xConnect Search Indexer and the xDB index, and the xConnect Collection Search service role and the xDB index.

<details>
<summary><h2>Enforce HTTPS for Solr</h2></summary>

> [!note]
> HTTPS is enforced by default. To allow HTTP in a development environment, set `RequireHttps` to false. This is not recommended in a production environment.

To enforce HTTPS for Solr:

1. Set up Solr with SSL.
2. For the xConnect Search Indexer, open the `<xconnect-search-indexer>\App_data\Config\Sitecore\SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml` file and set the `RequireHttps` setting to true:

    ```xml
    <Options>
        <ConnectionStringName>solrCore</ConnectionStringName>
        <RequireHttps>true</RequireHttps>
        <Encoding>utf-8</Encoding>
    </Options>

    .. note::

        This steps assumes that your search indexer is located in the *jobs* sub-folder of your xConnect Search instance.
    ```

3. For every instance of the xConnect Collection Search role, open the `C:\path\to\xconnect\App_data\config\sitecore\CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml` file and set both `RequireHttps` settings to true:

    ```xml
    <Solr.SolrReaderSettings>
        <Type>Sitecore.Xdb.Collection.Search.Solr.SolrReaderSettings, Sitecore.Xdb.Collection.Search.Solr</Type>
        <LifeTime>Singleton</LifeTime>
        <Options>
            <ConnectionStringName>solrCore</ConnectionStringName>
            <RequireHttps>true</RequireHttps>
            <Encoding>utf-8</Encoding>
        </Options>
    </Solr.SolrReaderSettings>
    <Solr.SolrWriterSettings>
        <Type>Sitecore.Xdb.Collection.Search.Solr.SolrWriterSettings, Sitecore.Xdb.Collection.Search.Solr</Type>
        <LifeTime>Singleton</LifeTime>
        <Options>
            <ConnectionStringName>solrCore</ConnectionStringName>
            <RequireHttps>true</RequireHttps>
            <MaximumUpdateBatchSize>1000</MaximumUpdateBatchSize>
            <MaximumDeleteBatchSize>1000</MaximumDeleteBatchSize>
            <MaximumCommitMilliseconds>1000</MaximumCommitMilliseconds>
            <ParallelizationDegree>4</ParallelizationDegree>
            <MaximumRetryDelayMilliseconds>5000</MaximumRetryDelayMilliseconds>
            <RetryCount>5</RetryCount>
            <Encoding>utf-8</Encoding>
        </Options>
    </Solr.SolrWriterSettings>
    ```

4. For all roles that connect to the xDB index, ensure that the `solrCore` connection string in `\App_data\ConnectionStrings.config` use HTTPS:

    ```text
    <add name="solrCore" connectionString="https://yourSolrInstance/" />
    ```

</details>

<details>
<summary><h2>Enforce HTTPS for Azure Search</h2></summary>

No additional configuration is required to enforce HTTPS for Azure Search. xConnect does not support running Azure Search without HTTPS.

</details>