Activer l’accès à distance à partir de l’intranet avec un certificat TLS/SSL (avancé)

Dans ce tutoriel, vous apprendrez comment configurer un runtime d’intégration auto-hébergé avec plusieurs machines sur site et à activer l’accès à distance depuis l’intranet avec un certificat TLS/SSL (Advanced) pour sécuriser la communication entre les nœuds du runtime d’intégration auto-hébergé.

Prerequisites

  • Une introduction au chiffrement fort SSL/TLS.
  • Un certificat peut être un certificat TLS général pour un serveur Web. Exigences:
    • Le certificat doit être un certificat X509 v3 approuvé publiquement. Nous vous recommandons d’utiliser des certificats émis par une autorité de certification partenaire publique.
    • Chaque nœud d’exécution d’intégration doit faire confiance à ce certificat.
    • Nous recommandons les certificats Subject Alternative Name (SAN) car tous les noms de domaine pleinement qualifiés (FQDN) des nœuds d’exécution d’intégration doivent être sécurisés par ce certificat. (Le problème selon lequel la validation WCF TLS/SSL ne vérifiait que le dernier nom DNS du SAN a été corrigé dans le .NET Framework 4.6.1. Voir Atténuation : méthode X509CertificateClaimSet.FindClaims pour plus d’informations.)
    • Les certificats génériques (*) ne sont pas pris en charge.
    • Le certificat doit avoir une clé privée (comme au format PFX).
    • Le certificat peut utiliser n’importe quelle taille de clé prise en charge par Windows Server 2012 R2 pour les certificats TLS/SSL.
    • Nous ne prenons en charge que les certificats CSP (Cryptographic Service Provider) pour l’instant. Les certificats utilisant des clés CNG (Key Storage Provider) ne sont pas pris en charge.

Étapes

  1. Exécutez la commande PowerShell ci-dessous sur toutes les machines pour obtenir leurs FQDN :

    [System.Net.Dns]::GetHostByName("localhost").HostName
    

    Par exemple, les FQDN sont node1.domain.contoso.com et node2.domain.contoso.com.

  2. Générez un certificat avec les FQDN de toutes les machines dans le champ nom alternatif du sujet (SAN).

    Capture d’écran montrant la génération de certificat dans Autre nom de l’objet.

  3. Installez le certificat sur tous les nœuds dans le magasin Ordinateur local ->Personnel afin qu’il puisse être sélectionné dans le gestionnaire de configuration du runtime d’intégration :

    1. Cliquez sur le certificat et installez-le.

    2. Sélectionnez Machine locale et entrez le mot de passe.

      Capture d’écran montrant la sélection de la machine locale.

    3. Sélectionnez Placer tous les certificats dans le magasin suivant. Cliquez sur Parcourir. Sélectionnez Personnel.

    4. Sélectionnez Terminer pour installer le certificat.

  4. Activez l’accès à distance depuis l’intranet :

    1. Lors de l’enregistrement du nœud d’exécution d’intégration auto-hébergé :

      1. Sélectionnez Activer l’accès à distance depuis l’intranet et sélectionnez Suivant.

        Capture d’écran montrant l’activation de l’accès à distance depuis l’intranet.

      2. Configurez le port TCP (8060 par défaut). Assurez-vous que le port est ouvert sur le pare-feu.

      3. Cliquez sur Sélectionner. Dans la fenêtre contextuelle, choisissez le bon certificat et sélectionnez Terminer.

        Capture d’écran montrant la sélection du certificat.

    2. Après l’enregistrement du nœud d’exécution d’intégration auto-hébergé :

      Note

      Le runtime d’intégration auto-hébergé ne peut modifier les paramètres d’accès à distance que lorsqu’il possède un nœud unique, ce qui est le cas par défaut. Sinon, le bouton radio ne peut pas être sélectionné.

      Capture d’écran qui montre l’activation avec le certificat TLS/SSL (Avancé).

      1. Accédez au Gestionnaire de configuration de l'Integration Runtime auto-hébergé - >Paramètres - >Accès à distance à partir de l’intranet. Cliquez sur Modifier.

      2. Choisissez Activer avec certificat TLS/SSL (Avancé).

      3. Cliquez sur Sélectionner. Dans la fenêtre contextuelle, choisissez le bon certificat et sélectionnez OK.

        Capture d’écran montrant le choix du certificat.

    3. Vérifiez les paramètres d’accès à distance dans Integration Runtime Configuration Manager auto-hébergé.

      Capture d’écran montrant la vérification des paramètres d’accès à distance dans Self-hosted Integration Runtime Configuration Manager, étape 1.

      Capture d’écran montrant la vérification des paramètres d’accès à distance dans le Gestionnaire de configuration du runtime d’intégration auto-hébergé, étape 2.

  5. Utiliser un certificat auto-signé si vous ne possédez pas de certificat reconnu par une autorité de certification publique :

    1. Générez et exportez un certificat auto-signé (cette étape peut être sautée si vous avez déjà le certificat) :

      1. Générez un certificat auto-signé via PowerShell (avec des privilèges élevés) :

        New-SelfSignedCertificate -DnsName contoso.com, node1.domain.contoso.com, node2.domain.contoso.com -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -CertStoreLocation cert:\LocalMachine\My
        
      2. Pour exporter le certificat généré avec une clé privée vers un fichier PFX protégé par mot de passe, vous aurez besoin de son empreinte digitale. Il peut être copié à partir des résultats de la commande New-SelfSignedCertificate. Par exemple, c’est AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00.

      3. Exportez le certificat généré avec la clé privée via PowerShell (avec des privilèges élevés) :

        $CertPassword = ConvertTo-SecureString -String “Password” -Force -AsPlainText
        Export-PfxCertificate -Cert
        cert:\LocalMachine\My\AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00 -FilePath C:\self-signedcertificate.pfx -Password $CertPassword            
        
      4. Vous avez exporté le certificat avec la clé privée vers C:\self-signedcertificate.pfx.

    2. Installer le certificat sur tous les nœuds sur Ordinateur local ->Magasin d'autorités de certification racines de confiance :

      1. Cliquez sur le certificat et installez-le.
      2. Sélectionnez Machine locale et entrez le mot de passe.
      3. Sélectionnez Placer tous les certificats dans le magasin suivant. Cliquez sur Parcourir. Sélectionnez Autorités de certification racines de confiance.
      4. Sélectionnez Terminer pour installer le certificat.

      Capture d’écran montrant comment installer le certificat sur tous les nœuds.

  6. Troubleshooting

    1. Vérifiez que le certificat existe dans le magasin cible :

      1. Suivez cette procédure Comment : Visualiser les certificats avec le composant logiciel enfichable MMC - WCF pour consulter les certificats (ordinateur local) dans le composant logiciel enfichable MMC.

        Capture d’écran montrant la consultation des certificats dans le composant logiciel enfichable MMC.

      2. Vérifiez que le certificat est installé dans Personnel et Magasin d’autorités de certification racines de confiance (s’il s’agit d’un certificat auto-signé).

        Capture d’écran montrant le certificat installé dans le magasin Personnel et le magasin Autorités de certification racines de confiance.

    2. Vérifiez que le certificat possède une clé privée et n’est pas expiré.

      Capture d’écran qui montre la vérification que le certificat a une clé privée et n’est pas expiré.

    3. Assurez-vous que le compte service pour l’exécution d’intégration auto-hébergée (le compte par défaut est NT SERVICE\DIAHostService) possède une autorisation de lecture pour les clés privées du certificat :

      1. Faites un clic droit sur le certificat ->Toutes les tâches ->Gérer les clés privées.

      2. Si ce n’est pas le cas, accordez l’autorisation, choisissez Appliquer et enregistrez.

        Capture d’écran montrant que le compte de service pour le runtime d’intégration auto-hébergé a l’autorisation de lecture des clés privées du certificat.