Português

FAQ: Quais são as implicações do ArcObjects SDK para os aplicativos clientes Microsoft .NET Framework e ArcGIS Engine .NET ao forçar conexões TLS 1.2 somente?

Question

Quais são as implicações do ArcObjects SDK para os aplicativos clientes Microsoft .NET Framework e ArcGIS Engine .NET ao forçar conexões TLS 1.2 somente?

Answer

A Esri planeja exigir conexões TLS 1.2 para os serviços do ArcGIS Online a partir de 16 de abril de 2019. Quando as conexões TLS 1.2 somente com recursos do ArcGIS Online estão em vigor, você precisará considerar alguns fatores ao criar o novo ArcObjects SDK para os aplicativos Microsoft .NET Framework (incluindo o ArcGIS Engine for .NET) ou para executar os existentes. Na versão 10.7, o software de desktop já está configurado para usar o TLS 1.2, e nenhuma ação é necessária para habilitar o TLS 1.2.

Se os aplicativos clientes criados com o ArcObjects .NET legado (incluindo aplicativos Engine) que usam conexões de entrada com o ArcGIS não tiverem o TLS 1.2 habilitado após a troca apenas para o TLS 1.2, suas integrações poderão sofrer interrupções.

As seguintes alterações podem ser feitas nos aplicativos ArcObjects .NET e Engine que foram criados com as versões .NET anteriores à 4.6:

  1. Recompile o aplicativo no .NET Framework 4.6 ou versões superiores para habilitar o TLS 1.2, pois a 4.6 é compatível com o TLS 1.2 por padrão (nenhuma alteração de código é necessária).
  2. Os aplicativos .NET na versão 4.5.x oferecem suporte ao protocolo TLS 1.2, mas não como padrão, mesmo se o ambiente do SO tiver sido definido como TLS 1.2. É necessário alterar o código físico, conforme explicado na página 9 nas Instruções de configuração e Suporte de SSL/TLS na Plataforma ArcGIS. Veja um exemplo na anotação abaixo sobre como definir esse valor no aplicativo.
  3. Os aplicativos .NET na 4.0 não habilitam o TLS 1.2 por padrão. Para habilitar o TLS 1.2 por padrão, é possível instalar o .NET Framework 4.5 ou uma versão mais recente. Depois, defina o valor SchUseStrongCrypto DWORD nas duas chaves de registro seguintes como 1, criando-as se elas não existirem:
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 e
    • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework \v4.0.30319
      No entanto, essas chaves de registro podem habilitar o TLS 1.2 por padrão em todos os aplicativos .NET 4.0, 4.5, 4.5.1 e 4.5.2 instalados no sistema. Recomendamos testar essa alteração antes de implantá-la nos servidores de produção. No entanto, esses valores do registro não afetarão os aplicativos .NET que configuram o valor System.Net.ServicePointManager.SecurityProtocol.
Anotação:
Os aplicativos .NET podem habilitar diretamente o TLS 1.2 ao configurar System.Net.ServicePointManager.SecurityProtocol para ativar SecurityProtocolType.Tls12, conforme mostrado no exemplo abaixo.
Exemplo (C#):
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;

Você pode encontrar outros recursos sobre a transição para o TLS 1.2 na plataforma Esri nas páginas Atualizações importantes sobre a Plataforma ArcGIS e o suporte ao protocolo Transport Layer Security (TLS), incluindo referências aos documentos de desenvolvedor da Microsoft e à equipe de Segurança de Produto da Esri.

HTTP
Com relação ao uso de HTTP em aplicativos legados, observe que, com uma futura atualização de segurança do ArcGIS Online, todas as organizações devem usar apenas HTTPS, pois isso está se tornando a prática padrão no setor.

Os aplicativos ArcObjects .NET que funcionavam anteriormente com HTTP podem encontrar erros de certificado com HTTPS, porque as máquinas clientes não têm os certificados relevantes em seus armazenamentos de certificados. Portanto, as máquinas clientes devem ser configuradas adequadamente (por exemplo, os certificados relevantes adicionados aos armazenamentos de certificados). Para teste e desenvolvimento, é possível criar certificados de "teste" do servidor. Com isso, os desenvolvedores podem testar seu código de cliente em um servidor de teste que suporta apenas HTTPS sem solicitar um certificado de uma Autoridade de Certificação. Isso é comum em cenários de intranet.

Para obter mais informações sobre o TLS 1.2, consulte o documento de Suporte Técnico da Esri: Atualizações importantes sobre a Plataforma ArcGIS e o suporte ao protocolo Transport Layer Security (TLS)

Last Published: 4/26/2019

Article ID: 000019966