Contrôleur d'entrée Citrix ADC

Prise en charge de l’authentification du client TLS dans Citrix ADC

Dans l’authentification du client TLS, un serveur demande un certificat valide au client pour l’authentification et garantit qu’il n’est accessible que par les machines et les utilisateurs autorisés.

Vous pouvez activer l’authentification du client TLS à l’aide de serveurs virtuels basés sur SSL Citrix ADC. Lorsque l’authentification client est activée sur un serveur virtuel SSL Citrix ADC, Citrix ADC demande le certificat client lors de la prise de contact SSL. L’appliance vérifie que le certificat présenté par le client est soumis à des contraintes normales, telles que la signature de l’émetteur et la date d’expiration.

Le schéma suivant explique la fonctionnalité d’authentification du client TLS sur Citrix ADC.

Authentification du client TLS

L’authentification du client TLS peut être définie sur obligatoire ou facultative. Si l’authentification du client SSL est définie comme obligatoire et que le client SSL ne fournit pas de certificat client valide, la connexion est abandonnée. Un certificat client valide signifie qu’il est signé ou émis par une autorité de certification spécifique, et qu’il n’a pas expiré ou révoqué. S’il est marqué comme facultatif, Citrix ADC demande le certificat client, mais la connexion n’est pas abandonnée. Citrix ADC procède à la transaction SSL même si le client ne présente pas de certificat ou si le certificat n’est pas valide. La configuration facultative est utile pour les scénarios d’authentification tels que l’authentification à deux facteurs.

Configuration de l’authentification du client TLS

Effectuez les étapes suivantes pour configurer l’authentification du client TLS.

  1. Activez la prise en charge du protocole TLS dans Citrix ADC.

    Le Citrix ingress controller utilise la section TLS de la définition Ingress comme activateur pour la prise en charge de TLS avec Citrix ADC. Voici un exemple d’extrait de définition d’entrée :

    spec:
      tls:
       - secretName:
    
  2. Appliquez un certificat d’autorité de certification à l’environnement Kubernetes.

    Pour générer un secret Kubernetes pour un certificat existant, utilisez la commande kubectl suivante :

        kubectl create secret generic tls-ca --from-file=tls.crt=cacerts.pem
    

    Remarque :

    Vous devez spécifier ‘tls.crt=’ lors de la création d’un secret. Ce fichier est utilisé par le Citrix ingress controller lors de l’analyse d’un secret d’autorité de certification.

  3. Configurez Ingress pour activer l’authentification du client.

    Vous devez spécifier l’annotation suivante pour attacher le secret d’autorité de certification généré qui est utilisé pour l’authentification du certificat client pour un service déployé dans Kubernetes.

    ingress.citrix.com/ca-secret: '{"frontend-hotdrinks": "hotdrink-ca-secret"}' 
    

    Par défaut, l’authentification du certificat client est définie sur mandatory mais vous pouvez la configurer sur optional à l’aide de l’annotation frontend_sslprofile dans la configuration frontale.

    ingress.citrix.com/frontend_sslprofile: '{"clientauth":"ENABLED", “clientcert”: “optional”}'
    

    Remarque :

    Le frontend_sslprofile seul prend en charge la configuration d’entrée frontale. Pour plus d’informations, consultez la section Configuration frontale.

Prise en charge de l’authentification du client TLS dans Citrix ADC