Você será solicitado a fornecer as credenciais ao abrir documentos de forma anônima no SharePoint Server 2016

Aplicável a:

  • Microsoft SharePoint Server 2016
  • Versão baseada no Windows Installer (MSI) de aplicativos do Microsoft Office 2016 (não se aplica a aplicativos do Office 365)
  • Acesso anônimo habilitado para o site ou a biblioteca do SharePoint
  • Acessar documentos do Office anonimamente
  • Acessar documentos do Office usando uma conta diferente da que você usou para fazer logon no Windows

Sintomas

Quando você abrir documentos no SharePoint Server 2016 usando a versão baseada no Windows Installer (MSI) de aplicativos do Office, as credenciais serão solicitadas se as condições da seção "aplica-se a" forem atendidas.

Por que esse problema ocorre

Aplicativos do Office enviam uma autorização: cabeçalho do portador para compatibilidade com o SharePoint Online e o onedrive for Business. O SharePoint Server 2016 envia um prompt HTTP 401 de autenticação por causa de um problema no modo como o SharePoint Server 2016 local identifica solicitações que possuem o cabeçalho Authorization: do portador e também por causa da ausência do cabeçalho X-IDCRL_ACCEPTED: t .

Como contornar esse problema

Para contornar esse problema, desabilite as solicitações de opções para os aplicativos Web afetados e, em seguida, use as regras de regravação de URL para remover efetivamente a autorização: cabeçalho de portador de solicitações de cabeçalho. Somente as regras de regravação de URL com suporte para o SharePoint Server 2016 são usadas para remover um valor de cabeçalho de solicitação. Para obter mais informações, consulte capacidade de regravação e redirecionamento no SharePoint 2016, 2013, 2010 e 2007.

Para implementar essa solução alternativa, siga estas etapas.

Etapa 1: bloquear solicitações de opções para o aplicativo Web por meio de Web. config

Para bloquear solicitações de opções, altere o arquivo Web. config do aplicativo Web da seguinte maneira:

<system.webServer>
…
    <security>
      <requestFiltering allowDoubleEscaping="true">
            <verbs applyToWebDAV="false">
                       <remove verb="OPTIONS" />
               <add verb="OPTIONS" allowed="false" />
            </verbs>

Observação

As solicitações de opções não são bloqueadas para solicitações de criação e controle de versão distribuída na Web (WebDav).

Etapa 2: baixar e instalar a extensão de regravação de URL do IIS

Baixe e instale a extensão de regravação de URL do IIS nos servidores Web front-end (WFE) do SharePoint.

Etapa 3: adicionar a variável de servidor HTTP_Authorization ao IIS

  1. Inicie o Gerenciador de serviços de informações da Internet (IIS), selecione o SharePoint Server no painel esquerdo e, em seguida, selecione regravação de URL no painel central.

  2. No painel direito, selecione exibir variáveis de servidor.

  3. Para adicionar uma nova variável de servidor, selecione Adicionar.

  4. Digite um nome de variável de servidor, como HTTP_Authorizatione, em seguida, selecione OK.

  5. No painel direito, selecione voltar para regras.

  6. Verifique se a variável de servidor HTTP_Authorization foi adicionada no arquivo ApplicationHost. config, da seguinte maneira:

    <system.webServer>
    ….
         <rewrite>
             <allowedServerVariables>
                 <add name="HTTP_Authorization" />
             </allowedServerVariables>
         </rewrite>
    

Etapa 4: adicionar uma regra para parar o processamento de regras de regravação de URL para outros métodos de solicitação

Você pode adicionar uma regra para interromper o processamento de outras regras de reconfiguração de URL se o método de solicitação não for HEAD (alterar apenas as solicitações HEAD). Para fazer isso, execute estas etapas:

  1. Selecione o aplicativo Web e, em seguida, selecione regravação de URL.

  2. No painel direito, selecione Adicionar regra (s) para adicionar uma nova regra.

  3. Digite um nome de regra, como Authrule-HEADonly.

  4. Na seção URL de correspondência , especifique os seguintes valores:

    1. URL solicitada: corresponde ao padrão
    2. Usando: expressões regulares
    3. Padrão:^(?!.*\.aspx).*$
    4. Opção Ignorar maiúsculas e minúsculas : selecionada
  5. Na seção condições, selecione Adicionare, em seguida, especifique os seguintes valores:

    1. Entrada de condição: {REQUEST_METHOD}
    2. Verificar se a cadeia de caracteres de entrada: não corresponde ao padrão
    3. Padrão: Head
    4. Opção Ignorar maiúsculas e minúsculas : selecionada
  6. Edite a seção ação da seguinte maneira:

    1. Tipo de ação: nenhum
    2. Parar o processamento da opção de regras subsequentes : selecionado
    3. No painel direito, selecione aplicar -> novamente às regras.

Observação

Verifique se a regra está habilitada. Para fazer isso, procure a opção desabilitar regra no painel direito. Essa opção é exibida após a seleção da regra.

Etapa 5: adicionar uma regra de regravação de URL para remover a autorização: cabeçalho do portador

Para remover efetivamente a autorização: cabeçalho de portador para solicitações, use uma regra de regravação de URL, da seguinte maneira:

  1. Selecione o aplicativo Web e, em seguida, selecione regravação de URL.

  2. No painel direito, selecione Adicionar regra (s) para adicionar uma nova regra.

  3. Digite um nome de regra, como Authrule.

  4. Na seção URL de correspondência , especifique os seguintes valores:

    1. URL solicitada: corresponde ao padrão
    2. Usando: expressões regulares
    3. Padrão:^(?!.*\.aspx).*$
    4. Opção Ignorar maiúsculas e minúsculas : selecionada
  5. Na seção variável de servidor , selecione Adicionar, especifique os seguintes valores e, em seguida, selecione OK:

    1. Nome da variável do servidor: HTTP_Authorization
    2. Valor: nenhum
    3. Substitua a opção de valor existente : Selected
  6. Na seção ação , especifique os seguintes valores

    1. Tipo de ação: nenhum
    2. Parar o processamento de regras subsequentes: selecionado
  7. No painel direito, selecione aplicar -> novamente às regras.

Observação

Verifique se a regra está habilitada. Para fazer isso, procure a opção desabilitar regra no painel direito. Essa opção é exibida após a seleção da regra.

Resolver esse problema no farm do SharePoint Server 2016

Repita todas as etapas da seção anterior em cada servidor de front-ends do SharePoint (WFE) no farm para verificar se todos os servidores estão configurados de forma idêntica. Se você já usou regras de reconfiguração, as duas regras da seção anterior precisam ser definidas como as duas últimas na lista porque a regra de cabeçalho desabilitará as regras subsequentes.

Devido às limitações da extensão de regravação de URL do IIS, as regras não podem ser combinadas no momento de forma que eles funcionem corretamente. Essa situação pode ser alterada em uma versão futura da extensão ou uma configuração alternativa pode ser encontrada no futuro. Por enquanto, esses métodos são a melhor maneira confirmada para resolver esse problema usando a regravação de URL.

Mais informações

Ainda precisa de ajuda? Vá para a comunidade do SharePoint.