Configurare l'attendibilità per la ricerca tra due farm di SharePoint Server

SI APPLICA A:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

Per configurare una farm di contenuto di SharePoint Server locale affinché restituisca risultati dal relativo indice di ricerca in una farm di SharePoint Server separata, è necessario eseguire le due seguenti procedure principali:

  1. Nella farm che riceverà le query di ricerca, configurare l'attendibilità della farm che invierà le query eseguendo le operazioni seguenti:
  • Configurare una relazione di trust S2S utilizzando il protocollo di autorizzazione Web Open Authorization 2.0 (OAuth 2.0).

  • Abilitare la farm che riceve le query per restituire i risultati della ricerca da tutte le applicazioni Web che ospitano il contenuto.

  1. Nella farm che invierà le query di ricerca, creare un'origine dei risultati che esegue ognuna delle seguenti operazioni:
  • Specifica SharePoint remoto come protocollo.

  • Specifica l'indirizzo di qualsiasi raccolta siti radice nella farm di SharePoint Server che riceveranno le query di ricerca.

Per ulteriori informazioni, vedere Configurare le origini dei risultati per la ricerca in SharePoint Server.

Nota

[!NOTA] Dopo aver creato l'origine dei risultati, si espongono i risultati di ricerca forniti utilizzandola in una web part o in un'azione query-regola. In questo modo, gli utenti della farm che invia le query di ricerca possono visualizzare i risultati della farm che riceve le query. Per ulteriori informazioni, vedere Informazioni sulle origini dei risultati per la ricerca in SharePoint Server.

In questo articolo viene descritto come eseguire la prima procedura nell'elenco precedente: come configurare la farm che riceve le query di ricerca per considerare attendibile la farm che invia le query.

Per brevità, in questo articolo vengono utilizzati i termini seguenti:

   
SendingFarm Una farm SharePoint Server locale che ha un servizio di ricerca che invia query a ReceivingFarm.
ReceivingFarm Una farm di contenuto SharePoint Server locale che ha un indice di ricerca che riceve le query di ricerca da SendingFarm. In questo articolo si presuppone che ReceivingFarm disponga di almeno un'applicazione Web con contenuto.

Affinché SendingFarm sia in grado di ottenere risultati di ricerca dall'indice di ricerca in ReceivingFarm, le farm devono avere le caratteristiche seguenti:

Nota

[!NOTA] Poiché SharePoint Server viene eseguito sotto forma di siti Web in Internet Information Services (IIS), gli amministratori e gli utenti dipendono dalle funzionalità di accessibilità offerte dai browser. SharePoint Server supporta le funzionalità di accessibilità dei browser supportati. Per ulteriori informazioni, vedere le risorse seguenti:

Per configurare ReceivingFarm affinché consideri attendibile SendingFarm

  1. Verificare che l'account utente che esegue questa procedura sia membro dei seguenti gruppi:
  • Gruppo Amministratori farm in ReceivingFarm.

  • Gruppo Administrators sul server sul quale si eseguono i cmdlet di Microsoft PowerShell.

    Un amministratore di tale server può utilizzare il cmdlet Add-SPShellAdmin per concedere a qualcuno le autorizzazioni per l'utilizzo dei cmdlet di SharePoint Server. Quando si esegue il cmdlet Add-SPShellAdmin, è necessario essere membri nel ruolo predefinito del server securityadmin nelle istanze di SQL Server ed è necessario essere membri del ruolo predefinito del database db_owner per tutti i database che devono essere aggiornati. Per ulteriori informazioni, vedere Add-SPShellAdmin. Se non si dispone delle appartenenze, contattare l'amministratore di sistema o l'amministratore di SQL Server per richiederle.

  1. In un server di ReceivingFarm, avviare SharePoint Management Shell.

    • Per Windows Server 2008 R2:

      Nell'ambiente SharePoint Server scegliere Tutti i programmi dal menu Start, selezionare SharePoint 2016 e quindi SharePoint Management Shell.

    • Per Windows Server 2012:

    • Nella pagina Start dell'ambiente SharePoint Server selezionare SharePoint Management Shell.

    • Se SharePoint Management Shell non si trova nella pagina Start , fare clic con il pulsante destro del mouse su Computer, selezionare Tutte le app e quindi SharePoint Management Shell.

    Per altre informazioni su come interagire con Windows Server 2012, vedi Attività di gestione comuni e spostamento in Windows Server 2012.

  2. In un server di ReceivingFarm, al prompt dei comandi PowerShell eseguire i seguenti comandi. I comandi utilizzano il protocollo di autorizzazione Web OAuth 2.0 per configurare l'attendibilità S2S, in modo che ReceivingFarm consideri attendibili SendingFarm.

    # Create a trusted security token issuer
    $i = New-SPTrustedSecurityTokenIssuer -Name "SendingFarm" -IsTrustBroker:$false -MetadataEndpoint "https://<SendingFarm_web_application>/_layouts/15/metadata/json/1"
    # Configure trust of the token-signing certificate'
    # by adding the trust used to sign oAuth tokens'
    # to the list of trusted root authorities'
    # in ReceivingFarm
    New-SPTrustedRootAuthority -Name "SendingFarm" -MetadataEndPoint https://<SendingFarm_web_application>/_layouts/15/metadata/json/1/rootcertificate
    

    Dove:

    https://<SendingFarm_web_application> è qualsiasi applicazione Web SSL in SendingFarm

    Importante

    [!IMPORTANTE] Le applicazioni Web che includono endpoint di autenticazione da server a server per le richieste in arrivo da server a server o che inviano richieste in uscita da server a server dovrebbero essere configurate per l'utilizzo di Secure Sockets Layer (SSL). Per informazioni su come configurare un'applicazione Web per l'utilizzo di SSL, vedere Creare applicazioni web basate sulle attestazioni in SharePoint Server. Per informazioni sulla configurazione del supporto HTTP per le richieste da server a server, vedere Configure server-to-server authentication between SharePoint Server farms in Configure server-to-server authentication in SharePoint Server.

  3. In un server di ReceivingFarm, al prompt dei comandi di PowerShell eseguire il seguente comando:

    # Use $realm to store the string'
    # that comes after the "@" character'
    # in the value of $i.NameId
    $realm = $i.NameId.Split("@")
    
  4. In un server di ReceivingFarm, in un prompt dei comandi di PowerShell, eseguire i comandi seguenti per consentire a tutte le applicazioni Web di ReceivingFarm di restituire i risultati della ricerca a SendingFarm:

    $s1 = Get-SPSite -Identity https://<ReceivingFarm_web_application>
    $sc1 = Get-SPServiceContext -Site $s1
    # Set up an authentication realm for'
    # a web application that hosts content in ReceivingFarm 
    Set-SPAuthenticationRealm -ServiceContext $sc1 -Realm $realm[1]
    # Get a reference to the application principal'
    # for that web application in Farm B
    $p = Get-SPAppPrincipal -Site https://<ReceivingFarm_web_application> -NameIdentifier $i.NameId
    # Grant rights to the application principal'
    # that SendingFarm will use'
    # when it sends queries to ReceivingFarm
    Set-SPAppPrincipalPermission -Site https://<ReceivingFarm_web_application> -AppPrincipal $p -Scope SiteCollection -Right FullControl
    

    Dove:

    https://<ReceivingFarm_web_application> è un'applicazione Web SSL di ReceivingFarm.

  5. Ripetere il passaggio precedente (5) per ogni applicazione Web in ReceivingFarm che ospita contenuto che si desidera cercare.

Vedere anche

Panoramica dell'autenticazione per SharePoint Server

Pianificare l'autenticazione da server a server in SharePoint Server

Pianificare l'autenticazione da server a server in SharePoint Server

Configure server-to-server authentication in SharePoint Server

Configurazione di un'attendibilità oAuth tra farm in SharePoint 2013

Ricevere un set di risultati completo da un indice di SharePoint remoto in SharePoint 2013

Un'introduzione a JavaScript Object Notation (JSON) in JavaScript e .NET