Certificats rotatifs créés dans Nimble Studio - Amazon Nimble Studio

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Certificats rotatifs créés dans Nimble Studio

Amazon Nimble Studio utilise des certificats X.509 pour effectuer et valider des revendications d'identité entre les points de terminaison d'un canal de communication Nimble Studio. Le certificat X.509 définit un format spécifique de certificat numérique qui peut être utilisé pour l'identification et le chiffrement des messages. Pour de plus amples informations sur les certificats, consultez leDocumentation RFDK.

Ces certificats auto-signés sont exigés par Deadline. Par défaut, ils ont une période de validité de trois ans et expireront après cette période. Pour atténuer le risque de disponibilité lié à l'expiration de ces certificats, vous devez effectuer une rotation manuelle des certificats.

Important

Vous n'avez qu'à alterner vos certificats trois ans après la création de votre studio. Au plus tôt, vous devez alterner vos certificats d'ici le 28 avril 2024.

Prérequis

  • Pour suivre ce didacticiel, vous aurez besoin d'un studio Nimble Studio, déployé dans votreCompte AWS. Si aucun studio du cloud n'est déjà déployé, consultez la sectionDéploiement d'un nouveau Studio avec StudioBuilderdidacticiel.

  • Supprimez toutes les configurations personnalisées pour votre studio. Si ce n'est pas le cas, vous risquez de rencontrer des erreurs lorsque vous tentez de modifier vos certificats.

Faire pivoter l'autorité de certification racine

L'autorité de certification racine (CA) est un certificat auto-signé qui est utilisé pour signer tous les autres certificats X.509 utilisés dans Render Farm Deployment Kit (RFDK), y compris le certificat Deadline Client, le certificat de file d'attente de rendu et MongoDB. La rotation de ce certificat entraîne la non-validation du certificat de l'équilibreur de charge d'application (ALB) par rapport à l'ancienne autorité de certification racine. Cela signifie que toute connexion à la file d'attente de rendu est interrompue. Pour le faire pivoter, vous devez démolir les flottes de travailleurs et le niveau de service.

Étape 1 : Supprimer la personne dépendante CloudFormation piles

Vous devez supprimer leComputeetServicepiles. La protection contre la terminaison est activée par défaut sur les deux piles. Vous devez donc d'abord la désactiver afin de pouvoir les supprimer.

Vous devez également désactiver la protection contre la résiliation pour votreRenderQueueApplication Load Balancer de charge (ALB) pour la rotation du niveau de service. Dans le cas contraire, en supprimant le CloudFormation La pile peut échouer. Une fois que vous avez supprimé la pile, vous pouvez ajouter une protection contre la suppression à l'ALB.

  1. Connectez-vous à AWS Management Console et ouvrez la console AWS CloudFormation.

  2. Sélectionnez la pile <your-studio-name>Compute. La pile doit être en cours de déploiement.

  3. Dans le volet des des de de de de de deActions de pilepuis sélectionnezModifier la de la fin. CloudFormation afficheModifier la de la finBoîte de dialogue.

    
                     Le CloudFormation Volet de la pile. Le menu déroulant Actions de la pile est étendu.
  4. ChoisissezDésactiver, puis sélectionnezEnregistrer.

    
                     Le CloudFormation Boîte de la protection de la fin. L'option Désactivé est sélectionnée.
  5. Sélectionnez Save. Dans le volet des détails de la pile, choisissez Supprimer.

  6. Sélectionnez Supprimer la pile lorsque vous y êtes invité.

  7. Une fois que l'état de la de la de la de la pileDelete, accédez àServicespuis sélectionnezEC2.

  8. Dans le volet de navigation, sous leEquilibrage de chargesection, choisissezÉquilibreurs de charge.

  9. Sélectionner l'équilibreur de charge quiRendedans son nom.

  10. Dans l'onglet Description, choisissez Modifier des attributs.

    
                     La barre de détails des équilibreurs de charge EC2. Le menu déroulant Actions est étendu.
  11. Sur la page Modifier les attributs de l'équilibreur de charge, désélectionnez Activer pour Protection contre la suppression, puis choisissez Enregistrer.

    
                     La page Modifier les attributs de l'équilibreur de charge. La case en regard de Protection contre la suppression n'est pas cochée.
  12. Choisissez Save (Enregistrer).

  13. Accéder àServices. Choisissez ensuite CloudFormation.

  14. Sélectionnez la.<your-studio-name>Pile de services. La pile doit être en cours d'exécution.

  15. Dans le volet des des de de de de de deActions de pile, puis choisissezModifier la de la fin. CloudFormation afficheModifier la de la finBoîte de dialogue.

  16. ChoisissezDésactiver, puis sélectionnezEnregistrer.

  17. Sélectionnez Save. Dans le volet des détails de la pile, choisissez Supprimer.

  18. Sélectionnez Supprimer la pile lorsque vous y êtes invité.

    1. S'il existe de nouveaux profils de lancement dans le studio, la suppression échouera.

Étape 2 : Accordez des autorisations Lambda pour créer un secret

Suivez les instructions de la sectionPour intégrer une stratégie en ligne pour un utilisateur ou un rôle (console)du Guide de l'utilisateur IAM Utilisez les informations suivantes pendant que vous suivez le didacticiel.

  1. Choisissez le rôle IAM dont le nom commence par<your-studio-name>Data-RootCAGeneratorServiceRole.

  2. Également pour les stratégies d'autorisation, recherchez Secret et cochez la case pourSecretManagerReadWrite.

Important

Supprimez cette stratégie du rôle avant de supprimer le studio. Dans le cas contraire, la suppression du studio échouera sur laDatapile.

Étape 3 : Modifier la valeur secrète RootCapassPhrase

Pour protéger le certificat, modifiez la valeur de laRootCAPassphrasesecret.

  1. Connectez-vous àAWS Management Consoleet ouvrezSecrets Managerconsole

  2. Sélectionnez le secret dont le nom commence par RootCapAsSphrase.

  3. Sur la page des des détails, choisissezRécupération d'un secretdans leSection de valeur de secretpour mettre à jour la valeur du secret.

  4. ChoisissezModifieret entrez une nouvelle valeur secrète.

  5. Sélectionnez Save.

  6. Notez l'ARN du secret dans leDétails secretsSection. Elle sera utilisée pour créer la fonction Lambda dansÉtape 4 : Appeler la fonction Lambda.

    1. Exemple : arn:aws:secretsmanager:region:user-id:secret:RootCAPassphraseuniqueId

Étape 4 : Appeler la fonction Lambda

Une fois la stratégie associée à Lambda, vous pouvez invoquer la fonction Lambda pour créer une nouvelle autorité de certification racine. Vous pouvez invoquer la fonction Lambda de trois manières : via la console, en utilisantAWS CloudShell, ou en utilisant leAWS CLI.

Le JSON suivant est la fonction Lambda que vous allez exécuter. RemplacezARN du secret contenant le mot de passeavec l'ARN du secret que vous avez trouvé dansÉtape 6deÉtape 3 : Modifier la valeur secrète RootCapassPhrase.

{ "RequestType": "Create", "ResourceProperties": { "DistinguishedName": { "CN": "your-studio-nameRootCA", "O": "AWS", "OU": "Thinkbox" }, "Passphrase": "arn:aws:secretsmanager:us-west-2:675872700355:secret:RootCAPassphraseC6002E3F-OR3shg9dBi38-srKIKQ", "Secret": { "NamePrefix": "your-studio-nameData/RootCA", "Description": "your-studio-nameData/RootCA", "Tags": [] }, "CertificateValidFor": "1095" } }

Appeler la fonction Lambda à l'aide de la section

  1. Accéder àServicespuis sélectionnezLambda.

  2. Sélectionner la fonction Lambdayour-studio-nameGénérateur racine de données.

  3. Tâche de sélectionActionspuis sélectionnezTest.

  4. Dans la section Test event (Événement de test), choisissez New event (Nouvel événement).

  5. DansTemplate (Modèle), entrez le modèle JSON fourni ci-dessus.

  6. Saisissez unNompour ce test.

  7. Choisissez Save changes (Enregistrer les modifications), puis Test. Chaque utilisateur peut créer jusqu'à 10 événements de test par fonction. Ces événements de test ne sont pas disponibles pour les autres utilisateurs.

    1. Lambda exécute votre fonction en votre nom. Le gestionnaire de fonctions reçoit et traite l'exemple d'événement.

    2. Si, dans leSortie de journal, vous voyez"Status":"SUCCESS", la fonction Lambda a été invoquée avec succès.

Il peut y avoirFailuresdans la console lors de l'exécution de ce script. Le nouveau secret et les nouvelles certifications seront toujours créés et seront disponibles dans Secrets Manager. Vous pouvez trouver les nouvelles certifications en modifiant les colonnes disponibles pour inclure la date de création et en recherchant les certificats nouvellement créés en fonction de cette date.

Appeler la fonction Lambda CloudShell

Note

CloudShell n'est pas pris en charge dans leeu-west-2ouca-central-1régions. Si vous êtes dans l'une de ces régions, utilisez laAWS CLIà la place.

  1. Connectez-vous àAWS Management Consoleet ouvrezLambdaconsole

  2. Sélectionner la fonction Lambda<your-studio-name>Data-RootCAGenerator.

    1. Notez le nom de cette fonction Lambda. Vous en aurez besoin pourÉtape 6.

  3. Connectez-vous à AWS Management Console.

  4. Accéder àServicespuis sélectionnezCloudShell.

    
                     La valeur AWS Management Console. En haut de la page, l'icône à droite de la barre de recherche est encerclée. À droite de cette icône se trouvent une cloche et un point d'interrogation.
  5. Patientez CloudShell session à charger.

  6. Exécutez la commande suivante: aws lambda invoke --cli-binary-format raw-in-base64-out --function-name Lambda function name --payload `Template from previous example` response.json

    1. RemplacezNom de fonction Lambdaavec le nom complet de la fonction Lambda que vous avez trouvé dansétape 6a.

    2. Vous pouvez soit définir le modèle en tant que blob au format json, soit enregistrer le modèle en tant que fichier local, puis exécuter la commande en utilisant le format--payload file://template.json.

    3. Vous aurez droit à un“Unhandled”erreur lorsque vous exécutez cette commande, mais elle créera toujours l'autorité de certification racine.

Appeler la fonction Lambda à l'aide de laAWS CLI

Note

Si vous êtes danseu-west-2ouca-central-1régions, utilisez leAWS CLIpour invoquer la fonction Lambda. Les étapes suivantes vous indiquent comment installer et configurer leAWS CLI.

  1. Pour installer ou mettre à niveauAWS CLIsur votre machine locale, suivez les instructions de la sectionInstallation deAWS Command Line Interfaceversion 2dans leAWS Command Line InterfaceGuide de l'utilisateur .

  2. Configurer l'AWS CLIen suivant les instructions de la sectionConfiguration rapide de la nouvelle.

  3. Vérifiez l'installation ou la mise à niveau en exécutantaws nimble help. Cette commande affiche la liste des commandes Nimble Studio.

  4. Connectez-vous àAWS Management Consoleet ouvrezLambdaconsole

  5. Sélectionner la fonction Lambda<your-studio-name>Data-RootCAGenerator.

    1. Notez le nom de cette fonction Lambda. Vous en aurez besoin pourÉtape 7.

  6. Exécutez la commande suivante: aws lambda invoke --cli-binary-format raw-in-base64-out --function-name Lambda function name --payload `Template from previous example` response.json

    1. RemplacezNom de fonction Lambdaavec le nom complet de la fonction Lambda que vous avez trouvé dansÉtape 3a.

    2. Vous pouvez soit définir le modèle en tant que blob au format json, soit enregistrer le modèle en tant que fichier local, puis exécuter la commande en utilisant le format--payload file://template.json.

    3. Vous aurez droit à un“Unhandled”erreur lorsque vous exécutez cette commande, mais elle créera toujours l'autorité de certification racine.

Vérifiez que vous avez invoqué la fonction Lambda

Note

Pour vérifier que cette étape a réussi, vous devez vérifier la CloudWatch bûches.

  1. Ouvrez la console CloudWatch.

  2. Dans le panneau de navigation, choisissez Groupes de journaux.

  3. PourGroupes de journaux, choisissez les derniers journaux dans la sectionData-RootCAGeneratorgroupe de journaux.

  4. Vérifiez si la CloudFormation la réponse a été un succès.

    
                        La racine des données génère des journaux de groupe de journaux. Une liste déroulante est étendue et affiche un statut réussi pour CloudFormation.

Étape 5 : Mettre le certificat et la clé privée en un secret

Une fois le certificat et la clé privée générés, ils doivent être placés manuellement dans le Secrets Manager d'origine pour les protéger.

  1. Connectez-vous àAWS Management Consoleet ouvrezSecrets Managerconsole

  2. Sélectionnez le secret avec le nom<your-studio-name>/RootCA-X.509-Certificate.

    1. Il s'agit du secret généré par la fonction Lambda.

    2. Créé le (UTC)devrait être aujourd'hui.

      
                           La barre de tri des Secrets Manager Secrets. Le nom du secret se trouve à gauche, et à sa droite se trouvent Description, Dernière récupération (UTC) et Créé le (UTC).
  3. Sur la page des des détails, choisissezRécupération d'un secretdans leSection de valeur de secret.

    1. Notez la valeur du secret. Vous en aurez besoin pourÉtape 6.

  4. Sélectionnez le secret dont le nom commence par<your-studio-name>Data/RootCA-X.509-Certificate.

    1. C'est le nouveau secret créé par Lambda.

  5. Sur la page des des détails, choisissezRécupération d'un secretdans leSection de valeur de secretpour mettre à jour la valeur du secret.

  6. ChoisissezModifieret entrez la valeur de l'autorité de certification racine que vous avez trouvée dansÉtape 3a.

  7. Sélectionnez Save.

  8. Sélectionnez le secret avec le nom<your-studio-name>/RootCA-X.509-PrivateKey.

    1. Il s'agit du secret généré par la fonction Lambda.

  9. Sur la page des des détails, choisissezRécupération d'un secretdans leSection de valeur de secret.

    1. Notez la valeur du secret. Vous en aurez besoin pourÉtape 12.

  10. Sélectionnez le secret dont le nom commence par<your-studio-name>Data/RootCA-X.509-PrivateKey.

  11. Sur la page des des détails, choisissezRécupération d'un secretdans leSection Valeurs secrètespour mettre à jour la valeur du secret.

  12. ChoisissezModifieret entrez la valeur de l'autorité de certification racine que vous avez trouvée dansétape 9a.

  13. Sélectionnez Save.

Vous pouvez à présent redéployer Nimble Studio en suivant laMettre à jour la dernière StudioBuilder versiondidacticiel. Tous les autres certificats signés par l'autorité de certification racine sont automatiquement générés.

Rotation du certificat de file d'attente

Le certificat de file d'attente de rendu est utilisé pour le trafic de chiffrement vers la file d'attente de rendu Il est signé par l'autorité de certification racine et est généré dans le niveau de service. La file d'attente de rendu peut être pivotée plus souvent que le certificat racine. Vous devez faire pivoter le certificat de la file d'attente de rendu si vous n'avez pas besoin de faire pivoter le certificat racine. Vous n'avez pas besoin de faire pivoter le certificat de la file d'attente de rendu après la rotation de l'autorité racine.

Note

La procédure de rotation nécessite une interruption de la ferme de rendu afin qu'une fenêtre de maintenance soit planifiée.

La meilleure façon de modifier ce certificat est de supprimer et de redéployer le niveau de service.

Pour supprimer le niveau de service

  1. Connectez-vous à AWS Management Console et ouvrez la console AWS CloudFormation.

  2. Sélectionnez la pile <your-studio-name>Service. La pile doit être en cours d'exécution.

  3. Dans le volet des des de de de de de deActions de pilepuis sélectionnezModifier la de la fin. CloudFormation afficheModifier la de la finBoîte de dialogue.

    
                  Le CloudFormation Volet de la pile. Le menu déroulant Actions de la pile est étendu.
  4. ChoisissezDésactiver, puis sélectionnezEnregistrer.

    
                  Le CloudFormation Boîte de la protection de la fin. L'option Désactivé est sélectionnée.
  5. Sélectionnez Save. Dans le volet des détails de la pile, choisissez Supprimer.

  6. Sélectionnez Supprimer la pile lorsque vous y êtes invité.

Vous pouvez à présent redéployer Nimble Studio en suivant laMettre à jour la dernière StudioBuilder version.