Sintoma
Assuma que tem o Microsoft SQL Server 2012, 2014 ou 2016 a funcionar num servidor que tem o Federal Information Processing Standard (FIPS) ativado. Nesta situação, quando executar ou validar um pacote de Serviço de Integração de Servidores (SSIS) do Microsoft SQL que contém um componente de script de fluxo de dados, recebe a seguinte mensagem de erro:
System.InvalidOperationException: Esta implementação não faz parte dos algoritmos criptográficos validados da Plataforma Windows FIPS. em System.Security.Cryptography.MD5 CryptoserviceProvider.. ctor()
Nota Esta emissão ocorre quando o sub-chave do registo a seguir é definido para 1:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
Causa
Este problema ocorre porque o SSIS utiliza o algoritmo MD5. O algoritmo MD5 não é compatível com o FIPS.
Resolução
Informações do pacote de serviço
SQL Server 2016
Para corrigir este problema no SQL Server 2016, obtenha o Service Pack 1 para o SQL Server 2016.
Cada nova construção para o SQL Server 2016 contém todos os hotfixes e todas as correções de segurança que foram incluídas com a construção anterior. Recomendamos que instale a mais recente construção para o SQL Server 2016.
SQL Server 2014Para corrigir este problema no SQL Server 2014, obtenha o Service Pack 2 para o SQL Server 2014.
Cada nova atualização para o SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas na atualização anterior. Recomendamos que instale a mais recente construção para o SQL Server 2014.
SQL Server 2012Para corrigir este problema no SQL Server 2012, obtenha o Service Pack 3 para o SQL Server 2012.
Cada nova atualização para o SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas na atualização anterior. Recomendamos que instale o mais recente pacote de serviços para o SQL Server 2012.
Solução
Para contornar esta questão, experimente um dos seguintes métodos:
-
Desligue a política fips do servidor. Para isso, consulte a secção "Configurar definições de política fips" no seguinte website da TechNet:
Contramedidas adicionais do sistemaNotas
-
Tem de reiniciar a aplicação para a nova definição para entrar em vigor.
-
Esta definição afeta o seguinte valor de registo no Windows Server:
HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\EnabledEste valor de registo reflete a definição atual do FIPS. Se esta definição estiver ativada, o valor é 1. Se esta definição for desativada, o valor é 0.
-
-
Utilize outras soluções Microsoft .NET em vez do componente Script.Nota O algoritmo MD5 é codificado em código rígido dentro do componente de fluxo de dados Script. Portanto, não é possível alterar este componente script.
Mais Informações
Os serviços de integração de servidores SQL utilizam vários algoritmos de encriptação do Windows que não cumprem o FIPS 140-2, que são requisitos de segurança para módulos criptográficos. Por exemplo, o SSIS 2012 utiliza MD5. Isto não está em conformidade com o FIPS 140-2, para valores de haxixe computacional que não são utilizados para a segurança. O FIPS 140-2 define normas de segurança que os governos dos Estados Unidos e do Canadá utilizam para validar os níveis de segurança dos produtos que implementam a criptografia.
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".