Migrar o servidor de federação do AD FS 2.0 para o AD FS no Windows Server 2012 R2

Para migrar um servidor de federação do AD FS que pertence a um farm do WIF de nó único, um farm do SQL Server ou um farm do AD FS para o Windows Server 2012 R2, é necessário executar as seguintes tarefas:

  1. Exportar e fazer backup dos dados de configuração do AD FS

  2. Criar um farm de servidor de federação do Windows Server 2012 R2

  3. Importar os dados de configuração original para o farm do AD FS do Windows Server 2012 R2

Exportar e fazer backup dos dados de configuração do AD FS

Para exportar as definições de configuração do AD FS, execute os seguintes procedimentos:

Para exportar as configurações de serviço

  1. Verifique se você tem acesso aos seguintes certificados e suas chaves privadas em um arquivo .pfx:

    • O certificado SSL que é usado pelo farm do servidor de federação que você deseja migrar

    • O certificado de comunicação do serviço (se for diferente do certificado SSL) que é usado pelo farm do servidor de federação que você deseja migrar

    • Todos os certificados de criptografia/descriptografia de token ou autenticação de token de terceiros que são usados pelo farm do servidor de federação que você deseja migrar

Para localizar o certificado SSL, abra o console de gerenciamento do IIS (Serviços de Informações da Internet), selecione Site Padrão no painel esquerdo, clique em Ligações… no painel Ação, encontre e selecione a ligação https, clique em Editar e em Exibir.

É preciso exportar o certificado SSL usado pelo serviço de federação e sua chave privada para um arquivo .pfx. Para obter mais informações, consulte Exportar a parte da chave privada de um Certificado de Autenticação de Servidor.

Observação

Se você planeja implantar o Serviço de Registro de Dispositivos como parte da execução do AD FS no Windows Server 2012 R2, é necessário obter um novo certificado SSL. Para obter mais informações, consulte Registrar um certificado SSL para o AD FS e Configurar um servidor de federação com o Device Registration Service.

Para exibir os certificados de assinatura de token, descriptografia de token e comunicação de serviços que são utilizados, execute o seguinte comando do Windows PowerShell para criar uma lista com todos os certificados em uso em um arquivo:

Get-ADFSCertificate | Out-File “.\certificates.txt”
  1. Exporte as propriedades do serviço de federação do AD FS, como nome do serviço de federação, nome de exibição do serviço de federação e identificador do servidor de federação, para um arquivo.

Para exportar as propriedades do serviço de federação, abra o Windows PowerShell e execute o seguinte comando:

Get-ADFSProperties | Out-File “.\properties.txt”`.

O arquivo de saída conterá os valores de configuração importantes a seguir:

Nome da Propriedade do Serviço de Federação relatado por Get-ADFSProperties Nome da Propriedade do Serviço de Federação no console de gerenciamento do AD FS
HostName Nome do Serviço de Federação
Identificador Identificador do Serviço de Federação
DisplayName Nome de exibição do Serviço de Federação
  1. Faça backup do arquivo de configuração do aplicativo. Entre outras configurações, esse arquivo contém a cadeia de conexão do banco de dados da política.

Para fazer backup do arquivo de configuração do aplicativo, é preciso copiar manualmente o arquivo %programfiles%\Active Directory Federation Services 2.0\Microsoft.IdentityServer.Servicehost.exe.config para um local seguro em um servidor de backup.

Observação

Anote a cadeia de conexão de banco de dados deste arquivo, localizada imediatamente após “policystore connectionstring=”. Se a cadeia de conexão especificar um banco de dados do SQL Server, o valor será necessário ao restaurar a configuração original do AD FS no servidor de federação.

Veja a seguir um exemplo de uma cadeia de conexão de WID: “Data Source=\\.\pipe\mssql$microsoft##ssee\sql\query;Initial Catalog=AdfsConfiguration;Integrated Security=True". Veja a seguir um exemplo de uma cadeia de conexão de SQL Server: "Data Source=databasehostname;Integrated Security=True".

  1. Registre a identidade da conta de serviço de federação do AD FS e a senha dessa conta.

Para encontrar o valor da identidade, examine a coluna Fazer logon como do Windows Service do AD FS 2.0 no console Serviços e registre manualmente esse valor.

Observação

Para um serviço de federação autônomo, a conta SERVIÇO DE REDE interna é usada. Nesse caso, não é necessário ter uma senha.

  1. Exporte a lista de pontos de extremidade do AD FS habilitados para um arquivo.

Para fazer isso, abra o Windows PowerShell e execute o seguinte comando:

Get-ADFSEndpoint | Out-File “.\endpoints.txt”`.
  1. Exporte todas as descrições de declarações personalizadas para um arquivo.

Para fazer isso, abra o Windows PowerShell e execute o seguinte comando:

Get-ADFSClaimDescription | Out-File “.\claimtypes.txt”`.
  1. Se você tiver configurações personalizadas, como useRelayStateForIdpInitiatedSignOn, configuradas no arquivo web.config, faça backup do arquivo web.config para consulta. É possível copiar o arquivo do diretório que é mapeado para o caminho virtual “/adfs/ls” no IIS. Por padrão, ele fica no diretório %systemdrive%\inetpub\adfs\ls.

Para exportar os objetos de confiança do provedor de declarações e da terceira parte confiável

  1. Para exportar objetos de confiança de terceira parte confiável e relações de confiança do provedor de declarações do AD FS é necessário fazer logon como Administrador (no entanto, não como o Administrador de Domínio) no servidor de federação e executar o seguinte script do Windows PowerShell, localizado na pasta media/server_support/adfs do CD de instalação do Windows Server 2012 R2: export-federationconfiguration.ps1.

Importante

O script de exportação usa os seguintes parâmetros:

  • Export-FederationConfiguration.ps1 -Path <string> [-ComputerName <string>] [-Credential <pscredential>] [-Force] [-CertificatePassword <securestring>]

    • Export-FederationConfiguration.ps1 -Path <string> [-ComputerName <string>] [-Credential <pscredential>] [-Force] [-CertificatePassword <securestring>] [-RelyingPartyTrustIdentifier <string[]>] [-ClaimsProviderTrustIdentifier <string[]>]
    • Export-FederationConfiguration.ps1 -Path <string> [-ComputerName <string>] [-Credential <pscredential>] [-Force] [-CertificatePassword <securestring>] [-RelyingPartyTrustName <string[]>] [-ClaimsProviderTrustName <string[]>]

    -RelyingPartyTrustIdentifier <string[]> – o cmdlet só exporta objetos de confiança de terceira parte confiável cujos identificadores estejam especificados na matriz de cadeia de caracteres. O padrão é não exportar NENHUM dos objetos de confiança da terceira parte confiável. Se RelyingPartyTrustIdentifier, ClaimsProviderTrustIdentifier, RelyingPartyTrustName e ClaimsProviderTrustName não estiverem especificados, o script exportará todos os objetos de confiança da terceira parte confiável e do provedor de declarações.

    -ClaimsProviderTrustIdentifier <string[]> – o cmdlet só exporta relações de confiança do provedor de declarações cujos identificadores estejam especificados na matriz de cadeia de caracteres. O padrão é não exportar NENHUM dos objetos de confiança do provedor de declarações.

    -RelyingPartyTrustName <string[]> – o cmdlet só exporta objetos de confiança de terceira parte confiável cujos nomes estejam especificados na matriz de cadeia de caracteres. O padrão é não exportar NENHUM dos objetos de confiança da terceira parte confiável.

    -ClaimsProviderTrustName <string[]> – o cmdlet só exporta relações de confiança do provedor de declarações cujos nomes estão especificados na matriz de cadeia de caracteres. O padrão é não exportar NENHUM dos objetos de confiança do provedor de declarações.

    -Path <string> – o caminho para uma pasta que vai conter os arquivos exportados.

    -ComputerName <string> – especifica o nome do host do servidor STS. O padrão é o computador local. Se você estiver migrando o AD FS 2.0 ou o AD FS em Windows Server 2012 para o AD FS em Windows Server 2012 R2, esse será o nome do host do servidor do AD FS herdado.

    -Credential <PSCredential> – especifica uma conta de usuário que tenha permissão para executar essa ação. O padrão é o usuário atual.

    -Force – especifica não solicitar confirmação do usuário.

    -CertificatePassword <SecureString> – especifica uma senha para exportar as chaves privadas dos certificados do AD FS. Se não estiver especificado, o script solicitará uma senha se um certificado do AD FS com chave privada precisar ser exportado.

    Inputs: None

    Outputs: string - este cmdlet retorna o caminho da pasta de exportação. É possível canalizar o objeto retornado para Import-FederationConfiguration.

Para fazer backup de repositórios de atributos personalizados

  1. É necessário exportar manualmente todos os repositórios de atributos personalizados que você deseja manter no novo farm do AD FS no Windows Server 2012 R2.

Observação

No Windows Server 2012 R2, o AD FS exige repositórios de atributos personalizados que sejam baseados em .NET Framework 4.0 ou acima. Siga as instruções no Microsoft .NET Framework 4.5 para instalar e configurar o .NET Framework 4.5.

É possível encontrar informações sobre repositórios de atributos personalizados em uso pelo AD FS, executando o seguinte comando do Windows PowerShell:

Get-ADFSAttributeStore

As etapas para atualização ou migração de repositórios de atributos personalizados variam.

  1. Também é necessário exportar manualmente todos os arquivos .dll dos repositórios de atributos personalizados que você deseja manter no novo farm do AD FS no Windows Server 2012 R2. As etapas para atualização ou migração de arquivos .dll dos repositórios de atributos personalizados variam.

Criar um farm de servidor de federação do Windows Server 2012 R2

  1. Instale o sistema operacional Windows Server 2012 R2 em um computador que você deseja que funcione como um servidor de federação e adicione a função de servidor do AD FS. Para obter mais informações, consulte Instalar o serviço de função do AD FS. Em seguida, configure seu novo serviço de federação pelo Assistente de configuração do serviço de federação do Active Directory ou pelo Windows PowerShell. Para obter mais informações, consulte "Configurar o primeiro servidor de federação em um novo farm de servidor de federação" em Configurar um servidor de federação.

Ao concluir essa etapa, é preciso seguir estas instruções:

  • É preciso ter privilégios de Administrador de Domínio para configurar o serviço de federação.

  • É preciso usar o mesmo nome do serviço de federação (nome do farm) utilizado no AD FS 2.0 ou no AD FS no Windows Server 2012. Se o mesmo nome do serviço de federação não for usado, o backup dos certificados não funcionará no serviço de federação do Windows Server 2012 R2 que você está tentando configurar.

  • Especifique se trata-se de um farm de servidor de federação de WID ou de SQL Server. Se for um farm de SQL, especifique o local do banco de dados e o nome da instância do SQL Server.

  • É preciso fornecer um arquivo .pfx que contenha o certificado de autenticação de servidor SSL do qual você fez o backup como parte da preparação para o processo de migração do AD FS.

  • É preciso especificar a mesma identidade de conta de serviço que foi usada no AD FS 2.0 ou no AD FS, no farm do Windows Server 2012.

  1. Depois que o nó inicial é configurado, é possível adicionar nós adicionais ao novo farm. Para obter mais informações, consulte "Adicionar um servidor de federação a um novo farm de servidor de federação" em Configurar um servidor de federação.

Importar os dados de configuração original para o farm do AD FS do Windows Server 2012 R2

Agora que você tem um farm de servidor de federação do AD FS executado no Windows Server 2012 R2, será possível importar os dados de configurações originais do AD FS para ele.

  1. Importe e configure outros certificados personalizados do AD FS, incluindo certificados de criptografia/descriptografia de token ou autenticação de token externamente inscritos, e o certificado de comunicação de serviço, se ele for diferente do certificado SSL.

No console de gerenciamento do AD FS, selecione Certificados. Verifique os certificados de criptografia/descriptografia de token, autenticação de token e comunicações de serviço, comparando cada um com os valores que você exportou para o arquivo certificates.txt durante a preparação da migração.

Para alterar os certificados de descriptografia de token e de autenticação de token dos certificados autoassinados padrão para certificados externos, é preciso primeiro desabilitar o recurso de sobreposição automática de certificados, que fica habilitado por padrão. Para fazer isso, é possível usar o seguinte comando do Windows PowerShell:

Set-ADFSProperties –AutoCertificateRollover $false
  1. Defina todas as configurações personalizadas de serviço do AD FS como tempo de vida SSO ou AutoCertificateRollover, usando o cmdlet Set-AdfsProperties.

  2. Para importar relações de confiança do provedor de declarações e objetos de confiança de terceira parte confiável do AD FS, é necessário fazer logon como Administrador (no entanto, não como o Administrador de Domínio) no servidor de federação e executar o seguinte script do Windows PowerShell, localizado na pasta \support\adfs do CD de instalação do Windows Server 2012 R2:

    import-federationconfiguration.ps1
    

Importante

O script de importação usa os seguintes parâmetros:

  • Import-FederationConfiguration.ps1 -Path <string> [-ComputerName <string>] [-Credential <pscredential>] [-Force] [-LogPath <string>] [-CertificatePassword <securestring>]
  • Import-FederationConfiguration.ps1 -Path <string> [-ComputerName <string>] [-Credential <pscredential>] [-Force] [-LogPath <string>] [-CertificatePassword <securestring>] [-RelyingPartyTrustIdentifier <string[]>] [-ClaimsProviderTrustIdentifier <string[]>
  • Import-FederationConfiguration.ps1 -Path <string> [-ComputerName <string>] [-Credential <pscredential>] [-Force] [-LogPath <string>] [-CertificatePassword <securestring>] [-RelyingPartyTrustName <string[]>] [-ClaimsProviderTrustName <string[]>]

-RelyingPartyTrustIdentifier <string[]> – o cmdlet só importa objetos de confiança de terceira parte confiável cujos identificadores estejam especificados na matriz de cadeia de caracteres. O padrão é não importar NENHUM dos objetos de confiança da terceira parte confiável. Se RelyingPartyTrustIdentifier, ClaimsProviderTrustIdentifier, RelyingPartyTrustName e ClaimsProviderTrustName não estiverem especificados, o script importará todos os objetos de confiança da terceira parte confiável e do provedor de declarações.

-ClaimsProviderTrustIdentifier <string[]> – o cmdlet só importa relações de confiança do provedor de declarações cujos identificadores estejam especificados na matriz de cadeia de caracteres. O padrão é não importar NENHUM dos objetos de confiança do provedor de declarações.

-RelyingPartyTrustName <string[]> – o cmdlet só importa objetos de confiança de terceira parte confiável cujos nomes estejam especificados na matriz de cadeia de caracteres. O padrão é não importar NENHUM dos objetos de confiança da terceira parte confiável.

-ClaimsProviderTrustName <string[]> – o cmdlet só importa relações de confiança do provedor de declarações cujos nomes estejam especificados na matriz de cadeia de caracteres. O padrão é não importar NENHUM dos objetos de confiança do provedor de declarações.

-Path <string> – o caminho para uma pasta que contém os arquivos de configuração a serem importados.

-LogPath <string>– o caminho para uma pasta que conterá o arquivo de log importado. Um arquivo de log chamado “import.log” será criado nesta pasta.

-ComputerName <string> – especifica o nome do host do servidor STS. O padrão é o computador local. Se você estiver migrando o AD FS 2.0 ou o AD FS em Windows Server 2012 para o AD FS em Windows Server 2012 R2, esse parâmetro deverá ser definido como o nome do host do servidor AD FS herdado.

-Credential <PSCredential> – especifica uma conta de usuário que tenha permissão para executar essa ação. O padrão é o usuário atual.

-Force – especifica não solicitar confirmação do usuário.

-CertificatePassword <SecureString> – especifica uma senha para importar chaves privadas dos certificados do AD FS. Se não estiver especificado, o script solicitará uma senha se um certificado do AD FS com chave privada precisar ser importado.

Inputs: string - este comando utiliza o caminho da pasta de importação como entrada. É possível canalizar Export-FederationConfiguration para este comando.

Outputs: None.

Os espaços à direita na propriedade WSFedEndpoint de uma terceira parte confiável podem causar erro na importação do script. Nesse caso, remova manualmente os espaços do arquivo antes da importação. Por exemplo, estas entradas causam erros:

<URI N="WSFedEndpoint">https://127.0.0.1:444 /</URI>
<URI N="WSFedEndpoint">https://myapp.cloudapp.net:83 /</URI>

Eles devem ser editadas para:

<URI N="WSFedEndpoint">https://127.0.0.1:444/</URI>
<URI N="WSFedEndpoint">https://myapp.cloudapp.net:83/</URI>

Importante

Se você tiver alguma regra de declaração personalizada (regras que não sejam as regras padrão do AD FS) nos objetos de confiança do provedor de declarações do Active Directory no sistema de origem, ela não será migrada pelos scripts. Isso ocorre porque o Windows Server 2012 R2 tem novos padrões. Todas as regras personalizadas devem ser mescladas adicionando-as manualmente à relação de confiança do provedor de declarações do Active Directory no novo farm do Windows Server 2012 R2.

  1. Configure todas as configurações personalizadas de ponto de extremidade do AD FS. No console de gerenciamento do AD FS, selecione Pontos de extremidade. Compare os pontos de extremidade do AD FS habilitados com a lista de pontos de extremidade do AD FS habilitados que você exportou para um arquivo durante a preparação para a migração do AD FS.

    - E -

    Configure todas as descrições de declarações personalizadas. No console de gerenciamento do AD FS, selecione Descrições de declarações. Compare a lista de descrições de declarações do AD FS com a lista de descrições de declarações que você exportou para um arquivo durante a preparação para a migração do AD FS. Adicione todas as descrições de declarações personalizadas de seu arquivo que não tenham sido incluídas na lista padrão do AD FS. Observe que o identificador de declarações no console de gerenciamento mapeia para ClaimType no arquivo.

  2. Instale e configure todos os repositórios de atributos personalizados com backup. Como administrador, verifique se todos os binários dos repositórios de atributos personalizados estão atualizados para o .NET Framework 4.0 ou superior antes de atualizar a configuração do AD FS para apontar para eles.

  3. Configure as propriedades de serviço que mapeiam para os parâmetros de arquivo web.config herdados.

    • Se useRelayStateForIdpInitiatedSignOn foi adicionado ao arquivo web.config no AD FS 2.0 ou no AD FS no farm do Windows Server 2012, será preciso configurar as seguintes propriedades de serviço no AD FS no farm do Windows Server 2012 R2:

      • O AD FS no Windows Server 2012 R2 inclui um arquivo %systemroot%\ADFS\Microsoft.IdentityServer.Servicehost.exe.config. Crie um elemento com a mesma sintaxe do elemento de arquivo web.config: <useRelayStateForIdpInitiatedSignOn enabled="true" />. Inclua esse elemento como parte da seção <microsoft.identityserver.web> do arquivo Microsoft.IdentityServer.Servicehost.exe.config.
    • Se <persistIdentityProviderInformation enabled="true|false" lifetimeInDays="90" enablewhrPersistence=”true|false” /> foi adicionado ao arquivo web.config no AD FS 2.0 ou no AD FS no farm do Windows Server 2012, será preciso configurar as seguintes propriedades de serviço no AD FS no farm do Windows Server 2012 R2:

      1. No AD FS no Windows Server 2012 R2, execute o seguinte comando do Windows PowerShell: Set-AdfsWebConfig –HRDCookieEnabled –HRDCookieLifetime.
    • Se <singleSignOn enabled="true|false" /> foi adicionado ao arquivo web.config no AD FS 2.0 ou no AD FS no farm do Windows Server 2012, não será preciso configurar quaisquer outras propriedades de serviço no AD FS no farm do Windows Server 2012 R2. O logon único é habilitado por padrão no AD FS no farm do Windows Server 2012 R2.

    • Se as configurações localAuthenticationTypes foram adicionadas ao arquivo web.config no AD FS 2.0 ou no AD FS no farm do Windows Server 2012, será preciso configurar as seguintes propriedades de serviço no seu AD FS no farm do Windows Server 2012 R2:

      • A lista Transformação Básica, Integrado, Formulários, TIsClient no AD FS equivalente no Windows Server 2012 R2 tem configurações de política de autenticação global para permitir os tipos de autenticação de proxy e o serviço de federação. Essas definições podem ser configuradas no AD FS, no snap-in Gerenciamento, em Políticas de autenticação.

    Depois de importar os dados de configuração originais, é possível personalizar as páginas de entrada do AD FS conforme necessário. Para obter mais informações, consulte Personalizando as páginas de entrada do AD FS.

Próximas etapas

Migrar os serviços de função dos Serviços de Federação do Active Directory (AD FS) para o Windows Server 2012 R2Como preparar a migração do servidor de federação do AD FSMigrar o proxy do servidor de federação do AD FSVerificar a migração do AD FS para o Windows Server 2012 R2