Como configurar a delegação restrita kerberos para páginas de proxy do Registro Web

O artigo fornece instruções passo a passo para implementar o Service for User to Proxy (S4U2Proxy) ou a Delegação Restrita Kerberos somente em uma conta de serviço personalizada para páginas proxy do Registro Web.

Aplica-se a: Windows Server 2016, Window Server 2019, Windows Server 2012 R2
Número de KB original: 4494313

Resumo

Este artigo fornece instruções passo a passo para implementar o Serviço para Usuário para Proxy (S4U2Proxy) ou delegação restrita somente Kerberos para páginas proxy do Registro Web. Este artigo descreve os seguintes cenários de configuração:

  • Configurando a delegação para uma conta de serviço personalizada
  • Configurando delegação para a conta do NetworkService

Observação

Os fluxos de trabalho descritos neste artigo são específicos para um ambiente específico. Os mesmos fluxos de trabalho podem não funcionar para uma situação diferente. No entanto, os princípios permanecem os mesmos. A figura a seguir resume esse ambiente.
Tipos de servidores no ambiente de exemplo.

Cenário 1: configurar delegação restrita para uma conta de serviço personalizada

Esta seção descreve como implementar o Serviço para Usuário para Proxy (S4U2Proxy) ou delegação restrita somente Kerberos quando você usa uma conta de serviço personalizada para as páginas de proxy do Registro Web.

1. Adicionar um SPN à conta de serviço

Associe a conta de serviço a um SPN (Nome da Entidade de Serviço). Para fazer isso, siga estas etapas:

  1. Em Usuários e Computadores do Active Directory, conecte-se ao domínio e selecione Usuários PKI>PKI.

  2. Clique com o botão direito do mouse na conta de serviço (por exemplo, web_svc) e selecione Propriedades.

  3. Selecione Atributo Editor>servicePrincipalName.

  4. Digite a nova cadeia de caracteres SPN, selecione Adicionar (conforme mostrado na figura a seguir) e selecione OK.

    Diretrizes para adicionar e configurar as SPNs do H T T P.

    Você também pode usar Windows PowerShell para configurar o SPN. Para fazer isso, abra uma janela do PowerShell elevada e execute setspn -s SPN Accountname. Por exemplo, execute o seguinte comando:

    setspn -s HTTP/webenroll2016.contoso.com web_svc
    

2. Configurar a delegação

  1. Configurar a delegação restrita S4U2proxy (somente Kerberos) na conta de serviço. Para fazer isso, na caixa de diálogo Propriedades da conta de serviço (conforme descrito no procedimento anterior), selecione Delegação>Confie nesse usuário somente para delegação para serviços especificados. Verifique se o Uso de Kerberos só está selecionado.

    Configure web_svc propriedades na guia Delegação na caixa de diálogo Propriedades.

  2. Feche a caixa de diálogo.

  3. Na árvore do console, selecione Computadores e selecione a conta de computador do servidor de front-end do Registro Web.

    Observação

    Essa conta também é conhecida como a "conta do computador".

  4. Configurar a delegação restrita do S4U2self (Transição de Protocolo) na conta do computador. Para fazer isso, clique com o botão direito do mouse na conta do computador e selecione Properties>Delegation>Trust neste computador para delegação apenas para serviços especificados. Selecione Usar qualquer protocolo de autenticação.

    Selecione Usar qualquer protocolo de autenticação na opção Confiar neste computador para delegação para serviços especificados.

3. Criar e associar o certificado SSL para registro na Web

Para habilitar as páginas de registro da Web, crie um certificado de domínio para o site e, em seguida, associe-o ao Site Padrão. Para fazer isso, siga estas etapas:

  1. Abra o Gerenciador do IIS (Serviços de Informações da Internet).

  2. Na árvore do console, selecione <HostName> e selecione Certificados de Servidor.

    Observação

    <Hostname> é o nome do servidor Web de front-end.
    Adicione um certificado de domínio para o site.

  3. No menu Ações , selecione Criar um Certificado de Domínio.

  4. Depois que o certificado for criado, selecione Site Da Web Padrão na árvore do console e selecione Associações.

  5. Verifique se a porta está definida como 443. Em seguida, em certificado SSL, selecione o certificado que você criou na etapa 3.

    Adicione o certificado e associe-o à porta 443 para o cenário 1.

  6. Selecione OK para associar o certificado à porta 443.

4. Configurar o servidor de front-end do Registro Web para usar a conta de serviço

Importante

Verifique se a conta de serviço faz parte do grupo de administradores locais ou IIS_Users no servidor Web.
Grupos para a conta de serviço no servidor Web.

  1. Clique com o botão direito do mouse em DefaultAppPool e selecione Configurações Avançadas.

    Configurar configurações avançadas de pools de aplicativos.

  2. Selecione ProcessarIdentidadedo Modelo>, selecione Conta personalizada e, em seguida, selecione Definir. Especifique o nome e a senha da conta de serviço.

    Configure a Identidade do Pool de Aplicativos como a conta de serviço personalizada.

  3. Selecione OK nas caixas de diálogo Definir Credenciais e Identidade do Pool de Aplicativos .

  4. Em Configurações Avançadas, localize o Perfil do Usuário de Carga e verifique se ele está definido como True.

    Defina a configuração Perfil do Usuário de Carga como True.

  5. Reinicie o computador.

Cenário 2: configurar delegação restrita na conta networkservice

Esta seção descreve como implementar a delegação restrita somente S4U2Proxy ou Kerberos quando você usa a conta NetworkService para as páginas de proxy do Registro Web.

Etapa opcional: configurar um nome a ser usado para conexões

Você pode atribuir um nome à função Registro da Web que os clientes podem usar para se conectar. Essa configuração significa que as solicitações de entrada não precisam saber o nome do computador do servidor de front-end do Registro Web ou outras informações de roteamento, como o nome canônico DNS (CNAME).

Por exemplo, suponha que o nome do computador do servidor de Registro Web seja WEBENROLLMAC (no domínio Contoso). Em vez disso, você deseja que as conexões de entrada usem o nome ContosoWebEnroll. Nesse caso, a URL de conexão seria a seguinte:

https://contosowebenroll.contoso.com/certsrv

Não seria o seguinte:

https://WEBENROLLMAC.contoso.com/certsrv

Para usar essa configuração, siga estas etapas:

  1. No arquivo de zona DNS para o domínio, crie um registro de alias ou um registro de nome de host que mapeie o novo nome de conexão para o endereço IP da função Registro Web. Use a ferramenta Ping para testar a configuração de roteamento.

    No exemplo que foi discutido anteriormente, o arquivo de Contoso.com zona tem um registro de alias que mapeia ContosoWebEnroll para o endereço IP da função Registro Web.

  2. Configure o novo nome como um SPN para o servidor de front-end do Registro Web. Para fazer isso, siga estas etapas:

    1. Em Usuários e Computadores do Active Directory, conecte-se ao domínio e selecione Computadores.
    2. Clique com o botão direito do mouse na conta do computador do servidor de front-end do Registro Web e selecione Propriedades.

      Observação

      Essa conta também é conhecida como a "conta do computador".

    3. Selecione Atributo Editor>servicePrincipalName.
    4. Digite HTTP/<ConnectionName>.<DomainName.com>, selecione Adicionar e selecione OK.

      Observação

      Nesta cadeia de caracteres, <ConnectionName> é o novo nome que você definiu e <DomainName> é o nome do domínio. No exemplo, a cadeia de caracteres é HTTP/ContosoWebEnroll.contoso.com. Adicione um S P N à conta de computador do servidor de front-end.

1. Configurar a delegação

  1. Se você ainda não tiver se conectado ao domínio, faça isso agora em Usuários e Computadores do Active Directory e selecione Computadores.

  2. Clique com o botão direito do mouse na conta do computador do servidor de front-end do Registro Web e selecione Propriedades.

    Observação

    Essa conta também é conhecida como a "conta do computador".

  3. Selecione Delegação e, em seguida, selecione Confiar neste computador para delegação somente para serviços especificados.

    Observação

    Se você puder garantir que os clientes sempre usarão a autenticação Kerberos quando eles se conectarem a esse servidor, selecione Usar Kerberos somente. Se alguns clientes usarem outros métodos de autenticação, como NTLM ou autenticação baseada em formulários, selecione Usar qualquer protocolo de autenticação.

    Configure delegação na conta de computador do servidor Web.

2. Criar e associar o certificado SSL para registro na Web

Para habilitar as páginas de registro da Web, crie um certificado de domínio para o site e, em seguida, associe-o ao primeiro site padrão. Para fazer isso, siga estas etapas:

  1. Abra o Gerenciador do IIS.

  2. Na árvore do console, selecione <HostName> e selecione Certificados de Servidor no painel de ações.

    Observação

    <Hostname> é o nome do servidor Web de front-end. Adicione um certificado de domínio para o site.

  3. No menu Ações , selecione Criar um Certificado de Domínio.

  4. Depois que o certificado for criado, selecione Site Da Web Padrão e selecione Associações.

  5. Verifique se a porta está definida como 443. Em seguida, em certificado SSL, selecione o certificado que você criou na etapa 3. Selecione OK para associar o certificado à porta 443.

    Adicione o certificado e associe-o à porta 443.

3. Configurar o servidor de front-end do Registro Web para usar a conta NetworkService

  1. Clique com o botão direito do mouse em DefaultAppPool e selecione Configurações Avançadas.

    Selecione Configurações Avançadas do pool de aplicativos padrão.

  2. Selecione Process Model>Identity. Verifique se a conta interna está selecionada e selecione NetworkService. Em seguida, selecione OK.

    Configure a Identidade do Pool de Aplicativos como a conta interna do NetworkService.

  3. Em Propriedades Avançadas, localize o Perfil do Usuário de Carga e verifique se ele está definido como True.

    Defina o Perfil do Usuário de Carga como True nas Configurações de Avanços.

  4. Reinicie o serviço IIS.

Para obter mais informações sobre esses processos, consulte Autenticando usuários de aplicativos Web.

Para obter mais informações sobre as extensões de protocolo S4U2self e S4U2proxy, confira os seguintes artigos: