Autenticação do servidor - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Autenticação do servidor

Quando seu dispositivo ou outro cliente tentar se conectar AWS IoT Core, o AWS IoT Core servidor enviará um certificado X.509 que seu dispositivo usa para autenticar o servidor. A autenticação ocorre na TLS camada por meio da validação da cadeia de certificados X.509. Esse é o mesmo método usado pelo seu navegador quando você visita um HTTPSURL. Para usar certificados de sua própria autoridade de certificação, consulte Gerenciar os certificados CA.

Quando seus dispositivos ou outros clientes estabelecem uma TLS conexão com um AWS IoT Core endpoint, AWS IoT Core apresenta uma cadeia de certificados que os dispositivos usam para verificar se estão se comunicando AWS IoT Core e não se passando por outro servidor. AWS IoT Core A cadeia apresentada depende de uma combinação do tipo de endpoint ao qual o dispositivo está se conectando e do conjunto de cifras que o cliente AWS IoT Core negociou durante o handshake. TLS

Tipos de endpoint

AWS IoT Core suportesiot:Data-ATS. iot:Data-ATSos endpoints apresentam um certificado de servidor assinado por uma CA da Amazon Trust Services.

Os certificados apresentados pelos ATS endpoints são assinados cruzadamente pela Starfield. Algumas implementações de TLS clientes exigem a validação da raiz de confiança e exigem que os certificados Starfield CA sejam instalados nos repositórios confiáveis do cliente.

Atenção

Não é recomendável usar um método de fixação de certificado que faça o hash de todo o certificado (incluindo o nome do emissor, etc.), pois isso fará com que a verificação do certificado falhe, pois os ATS certificados que fornecemos são assinados pela Starfield e têm um nome de emissor diferente.

Importante

Use endpoints iot:Data-ATS. Os certificados Symantec e Verisign foram descontinuados e não são mais suportados pelo. AWS IoT Core

Você pode usar o describe-endpoint comando para criar seu ATS endpoint.

aws iot describe-endpoint --endpoint-type iot:Data-ATS

O comando describe-endpoint retorna um endpoint no seguinte formato.

account-specific-prefix.iot.your-region.amazonaws.com
nota

Na primeira vez que describe-endpoint for chamado, um endpoint será criado. Todas as chamadas subsequentes para describe-endpoint retornam o mesmo endpoint.

nota

Para ver seu iot:Data-ATS endpoint no AWS IoT Core console, escolha Configurações. O console exibe somente o endpoint iot:Data-ATS.

Criando um IotDataPlaneClient com o AWS SDK para Java

Para criar um IotDataPlaneClient que use um endpoint iot:Data-ATS, faça o seguinte.

  • Crie um iot:Data-ATS endpoint usando o. DescribeEndpointAPI

  • Especifique esse endpoint ao criar o IotDataPlaneClient.

O exemplo a seguir executa as duas operações.

public void setup() throws Exception { IotClient client = IotClient.builder().credentialsProvider(CREDENTIALS_PROVIDER_CHAIN).region(Region.US_EAST_1).build(); String endpoint = client.describeEndpoint(r -> r.endpointType("iot:Data-ATS")).endpointAddress(); iot = IotDataPlaneClient.builder() .credentialsProvider(CREDENTIALS_PROVIDER_CHAIN) .endpointOverride(URI.create("https://" + endpoint)) .region(Region.US_EAST_1) .build(); }

Certificados CA para autenticação do servidor

Dependendo do tipo de endpoint de dados que você está usando e do pacote de criptografia negociado, os certificados de autenticação AWS IoT Core do servidor são assinados por um dos seguintes certificados CA raiz:

Endpoints do Amazon Trust Services (preferencial)

nota

Talvez seja necessário clicar com o botão direito do mouse nesses links e selecionar Salvar link como... para salvar esses certificados como arquivos.

  • RSAChave de 2048 bits: Amazon Root CA 1.

  • RSAChave de 4096 bits: Amazon Root CA 2. Reservado para uso futuro.

  • ECCChave de 256 bits: Amazon Root CA 3.

  • ECCChave de 384 bits: Amazon Root CA 4. Reservado para uso futuro.

Esses certificados são todos assinados pelo Certificado da CA raiz Starfield. Todas as novas AWS IoT Core regiões, a partir do lançamento em 9 de maio de 2018 AWS IoT Core na região Ásia-Pacífico (Mumbai), oferecem somente ATS certificados.

VeriSign Endpoints (antigos)

Diretrizes de autenticação do servidor

Há muitas variáveis que podem afetar a capacidade de um dispositivo de validar o certificado de autenticação do servidor do AWS IoT Core . Por exemplo, os dispositivos podem ter memória muito limitada para armazenar todos os certificados da CA raiz possíveis ou os dispositivos podem implementar um método não padrão de validação de certificado. Por estas razões, sugerimos seguir estas diretrizes:

  • Recomendamos que você use seu ATS endpoint e instale todos os compatíveis Amazon Root CA certificados.

  • Se você não conseguir armazenar todos esses certificados em seu dispositivo e se seus dispositivos não usarem a validação ECC baseada, você poderá omitir o Amazon Root CA 3 e Amazon Root CA 4ECCcertificados. Se seus dispositivos não implementarem a validação de certificado RSA baseada, você poderá omitir o Amazon Root CA 1 e Amazon Root CA 2RSAcertificados. Talvez seja necessário clicar com o botão direito do mouse nesses links e selecionar Salvar link como... para salvar esses certificados como arquivos.

  • Se você estiver enfrentando problemas de validação de certificados de servidor ao se conectar ao seu ATS endpoint, tente adicionar o certificado Amazon Root CA com assinatura cruzada relevante ao seu armazenamento confiável. Talvez seja necessário clicar com o botão direito do mouse nesses links e selecionar Salvar link como... para salvar esses certificados como arquivos.

  • Se você estiver tendo problemas de validação de certificado do servidor, talvez seja necessário confiar explicitamente na CA raiz. Tente adicionar o Starfield Root CA Certificatepara sua loja fiduciária.

  • Se você ainda tiver problemas depois de executar as etapas acima, entre em contato com o Suporte ao desenvolvedor da AWS.

nota

Os certificados CA têm uma data de expiração depois da qual não podem ser usados para validar um certificado de servidor. O certificados da CA podem precisar ser substituídos antes da data de expiração. Você deve verificar se é possível atualizar o certificado CA raiz em todos os seus dispositivos ou clientes para ajudar a garantir uma conectividade contínua e manter-se atualizado com as melhores práticas de segurança.

nota

Ao se conectar ao AWS IoT Core código do seu dispositivo, passe o certificado para o API que você está usando para se conectar. O API que você usa varia de acordo comSDK. Para obter mais informações, consulte o AWS IoT Core Dispositivo SDKs.