Microsoft Search External Items
About
The Microsoft Search External Items search engine uses Microsoft Graph API to:
- Send search queries to Microsoft 365
- Receive content indexed using Microsoft Search connectors
Set Azure Active Directory Authentication
Set authentication to Azure Active Directory in SmartHub as described here: Azure Active Directory Authentication.
Client ID Requirements
The Client ID specified in Azure Active Directory Authentication above, must belong to an application with the following permissions:
- Microsoft Graph
- Files.Read.All
- Files.Read.All
How to Add the Microsoft Search External Items search engine to SmartHub
Use the following instructions to add the Microsoft Search External Items search engine to SmartHub:
- Navigate to the SmartHub Administration page: http(s)://[web-app-url]/_admin
- Click Add New Search Engine. The search engine dialogue box appears.
- Type: Select Regular
- Search Engine: Select MS Search External Items from the drop-down list.
- Connector Connection ID: Enter the connection ID associated with your content.
- To find the connector connection ID, do the following:
- Go to the Office Admin page
- Click Settings > Microsoft Search.
- Click Connectors
- A list of your current connectors appears with their Connection IDs. See the graphic below.
- The connection ID value is the parameter the search engine expects to receive.
- To find the connector connection ID, do the following:
- Name: Enter a name for your search engine.
- Search Engine
- search engine Name: Enter a search engine name.
- search engine type: Select the search engine type "MSSearchExternalItemssearch engine."
- Connector Connection Id: Enter the connection ID associated with your content.
- Connector Connection ID:
- To get the connector Connection ID:
- Go to the Office Admin page
- Go to Settings → Microsoft Search.
- Go to Connectors
- A list of your current connectors appears with their Connection IDs. See the graphic below.
- The connection ID value is the parameter the search engine expects to receive.
- To get the connector Connection ID:
- Graph Url: Enter the MS Graph address
- For example:https://graph.microsoft.com/
- For example:https://graph.microsoft.com/
- Authentication: Select whether to enable or disable Impersonate authentication:
- Impersonate set to enabled (checked):
- Security trims the results using the current user running the search
- Impersonate set to disabled (unchecked):
- Client Id: Enter the Application ID from Azure App Registrations.
- Client Secret: Enter the Key's value from Azure App Registrations.
- Microsoft Login Endpoint: Example: https://login.microsoftonline.com/
- Access Token: Enter the access token from SmartHub's OAuth page.
Refresh Token: Enter the refresh token from SmartHub's OAuth page.
Note: To get the Access token and Refresh tokens, click the "Authorize" button, but note all the fields above must be complete (GraphUrl, ClientId, ClientSecret, MicrosoftLoginEndpoint).
- Impersonate set to enabled (checked):
How to Register an App in Azure and Configure It
If you use SmartHub with Azure Active Directory authentication, you can reuse the same App and jump to step 5.
- Navigate to portal.azure.com and log in.
- From the left side menu go to Azure Active Directory → App registrations → New registration
- Name: Enter the name of the application.
- Application type: Select Web app / API.
- Sign-on URL: Enter the SmartHub's URL.
- Select API Permissions to open the settings menu panel.
- Click Add a Permission.
- Select APIs my organization uses and add the following permissions (as you type the name, it appears):
- Microsoft Graph
- Files.Read.All
- Files.Read.All
- Microsoft Graph
- Click Certificates & secrets>New client secretto generate a client secret key.
- In the window that appears (shown below) enter the following information.
- Description: Enter a name for the client secret. (Note: The name is your client secret).
- Expires: Select the period until expires.
- A Value is generated after you click Add.
Metadata
If the publisher of your content is ConnectivityHub, then any metadata indexed as "retrievable" can be included in your search results. For example:
- escbasetitle
- escbaseauthor
- escbasecrawlurl
- etc.
Use the SelectProperties list to specify what fields to include.
Limitations
Note the following limitations when using the Microsoft Search External Items search engine:
-
Result sorting is not supported.