Share via


Contenuto di SharePoint Online non visualizzato in una ricerca locale di SharePoint

Problema

Considerate il seguente scenario:

  • È possibile configurare la ricerca ibrida in uscita per restituire i risultati da SharePoint Online in un ambiente locale SharePoint 2013.

  • Quando un utente esegue una query da un sito locale di SharePoint 2013, vengono visualizzati solo i risultati dell'ambiente locale di SharePoint 2013. Nessun risultato viene restituito da SharePoint Online.

  • Un amministratore modifica la regola di query associata alle origini dei risultati. Quindi, l'amministratore apre Query Builder dal blocco dei risultati. Tuttavia, viene generato il seguente errore:

    1 3/4 System.Net.WebException: La richiesta è stata interrotta: La richiesta è stata annullata. -->Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2ErrorResponseException: il server remoto ha restituito un errore: (404) Non trovato. at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.GetResponse(Uri stsurl, OAuth2AccessTokenRequest message) at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.RequestOAuthToken(Uri stsUrl. OAuth2AccessTokenRequest request) at stslnfo, OAuth2EndpointIdentity endpointldentity) at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2SecurityTokenManager.GetRawBearerToken(String nameldentifier, SPSecurityTokenServiceConnectionInformation stslnfo.

Inoltre, la seguente eccezione viene registrata nel log ULS (Unified Logging Service):

An exception occurred during OAuth2 request to <url specific to your site>
The remote server returned an error: (404) Not Found.
at System.Net.HttpWebRequest.GetResponse()
at Microsoft.SharePoint.IdentityModel.OAuth2.SPOAuth2Client.GetResponse(Uri stsUrl,
OAuth2AccessTokenRequest message)

Soluzione

Per risolvere il problema, determinare se il proxy dell'applicazione del servizio di ricerca è stato distribuito in modalità partizione. In tal caso, rimuovere e quindi ricreare il proxy senza utilizzare la modalità partizione.

              NOTARE

Per eseguire questa operazione, seguire la procedura seguente nella shell di gestione di SharePoint.

  1. Ottenere l'ID dell'applicazione del servizio di ricerca. A tale scopo, eseguire il cmdlet seguente:

    $ssa=Get-SPEnterpriseSearchServiceApplication
    
  2. Ottenere l'ID del proxy dell'applicazione del servizio di ricerca. A tale scopo, eseguire il cmdlet seguente:

    $ssaproxy=Get-SPServiceApplicationProxy –identity <guid>
    

    {r}}               NOTARE Il GUID proxy applicazione servizio è unico per ogni azienda. Eseguire il cmdlet Get-SPServiceApplicationProxy e annotare il GUID del proxy delle applicazioni del servizio di ricerca.

  3. Esaminare i risultati di $ssaproxy.properties. Il proxy deve essere elencato come partizionato. In questo caso, passare al passaggio 4 per aggiornare le proprietà del proxy.

  4. Aggiornare le proprietà del proxy. A tale scopo, eseguire il cmdlet seguente:

    $proxy = get-spenterprisesearchserviceapplicationproxy
    $proxy.Properties["Microsoft.Office.Server.Utilities.SPPartitionOptions"] = 0
    $proxy.Update()
    $ssa = get-spenterprisesearchserviceapplication
    $ssa.SetProperty("IgnoreTenantization",1)
    $ssa.Update()
    

    Dopo aver completato questi passaggi, controlla se il problema è stato risolto. Altrimenti, andare al passaggio 5 per rimuovere e ricreare il proxy.

  5. Rimuovere il proxy di applicazione del servizio di ricerca. A tale scopo, eseguire il cmdlet seguente:

    Remove-SPServiceApplicationProxy $ssaproxy
    
  6. Creare un nuovo proxy di applicazione del servizio di ricerca. A tale scopo, eseguire il cmdlet seguente:

    New-SPEnterpriseSearchServiceApplicationProxy -SearchApplication $ssa -Name "Search Service Application Proxy"
    

Dopo aver seguito questi passaggi, la farm di ricerca SharePoint 2013 locale dovrebbe iniziare a restituire risultati da SharePoint Online.

Ulteriori informazioni

Per ulteriori informazioni, consultare Informazioni su multi-tenancy in SharePoint Server 2013.

Ulteriore assistenza Visitare la community di SharePoint.