View a markdown version of this page

Création d'un secret client Salesforce - AWS Secrets Manager

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.

Création d'un secret client Salesforce

Dans ce didacticiel, vous allez créer un secret client Salesforce et le stocker en AWS Secrets Manager tant que secret externe géré, activer la rotation gérée, puis tester les informations d'identification modifiées en les échangeant contre un jeton d'accès. Ce didacticiel prend environ 20 à 30 minutes.

Ce didacticiel utilise AWS des services susceptibles de vous facturer des frais Compte AWS, notamment des frais pour le secret que vous stockez dans Secrets Manager et, si vous choisissez d'en utiliser un, pour une clé gérée par le client. Pour plus d’informations, consultez Tarification.

Note

Ce didacticiel utilise le type SalesforceClientSecretsecret comme exemple. Les autres types de secrets externes gérés suivent un flux similaire. Vous créez le secret en utilisant le format défini par le partenaire d'intégration, vous activez la rotation gérée, puis vous utilisez les informations d'identification pivotées. Pour obtenir la liste des partenaires intégrés et leurs formats secrets requis, voir. Partenaires d'intégration

Avant de commencer ce didacticiel, assurez-vous de disposer des éléments suivants.

  • Un compte Salesforce (développeur ou autre) qui vous permet de créer des applications clientes externes (ECA).

  • Autorisations administratives accordées à votre Compte AWS. Dans un environnement de production, il est recommandé d'utiliser différents rôles pour différentes tâches. Par exemple, un rôle qui gère les secrets au sein de votre organisation créerait le secret, et un rôle distinct utiliserait le secret lors de l'exécution. Pour les étapes du tutoriel, nous vous recommandons de continuer à utiliser la même identité. Pour plus d'informations sur la façon de configurer les autorisations dans un environnement de production, consultez Authentification et contrôle d'accès pour AWS Secrets Manager.

Étape 1 : créer une application client externe et activer OAuth

La première étape consiste à créer une application client externe (ECA) dans Salesforce et à la configurer pour OAuth afin que Secrets Manager puisse faire pivoter le secret du client. Pour la procédure complète de Salesforce, voir Configurer l'autorisation avec une application client externe dans la documentation Salesforce.

Lorsque vous configurez l'ECA, assurez-vous de configurer les éléments suivants :

  • Au niveau de l'organisation, activez Autoriser l'accès aux secrets des consommateurs de l'application client externe via l'API REST. Ce paramètre permet à Secrets Manager de récupérer et de faire pivoter le secret du consommateur via l'API REST de Salesforce.

  • Sur l'ECA, activez le champ OAuth pour gérer les données utilisateur via des API (api).

  • Sur l'ECA, activez Activer le flux d'informations d'identification du client.

  • Sur l'ECA, activez Activer le flux d'échange de jetons et Exiger le secret pour le flux d'échange de jetons.

Après avoir créé l'ECA, collectez les valeurs que vous devez stocker dans le secret à l'étape suivante :

  • La clé du consommateur (ID client) et le secret du consommateur (secret du client) issus des paramètres OAuth d'ECA Manager.

  • Votre URL de base Salesforce My Domain, par exemplehttps://MyDomainName.my.salesforce.com.

  • L'identifiant de l'application et l'identifiant du consommateur pour l'ECA. Ils correspondent aux consumer_id champs external_client_app_identifier et de la documentation Salesforce. Pour savoir comment récupérer ces valeurs, consultez la section Stage OAuth Credentials dans la documentation Salesforce.

Pour une description de chaque champ obligatoire dans le secret, voirSecret du client Salesforce.

Étape 2 : Création du secret externe géré et activation de la rotation

Ensuite, vous stockez le secret du client Salesforce dans Secrets Manager en tant que secret externe géré et vous activez la rotation gérée. Avec la rotation gérée, vous ne créez ni ne gérez de fonction de rotation Lambda. Secrets Manager fait tourner le secret pour vous.

Pour créer le secret et activer la rotation (console)
  1. Ouvrez la console Secrets Manager à l'adresse https://console.aws.amazon.com/secretsmanager/.

  2. Choisissez Store a new secret (Stocker un nouveau secret).

  3. Sur la page Choose secret type (Choisir un type de secret), procédez comme suit :

    1. Pour le type secret, choisissez le type de secret externe géré par secret du client Salesforce (SalesforceClientSecret).

    2. Entrez les champs de valeur secrète pour le secret du client Salesforce : la clé du consommateur, le secret du consommateur, l'URI de base, l'ID de l'application et l'ID du consommateur. Pour une description de chaque champ, voirSecret du client Salesforce.

    3. Pour la clé de chiffrement, choisissez aws/secretsmanagerd'utiliser le Clé gérée par AWS for Secrets Manager. L'utilisation de cette clé n'entraîne aucun coût. Vous pouvez également utiliser votre propre clé gérée par le client. Pour plus d'informations sur les coûts d'utilisation d'une clé gérée par le client, consultez Tarification.

    4. Choisissez Suivant.

  4. Sur la page Configurer le secret, entrez un nom de secret et une description descriptifs, puis choisissez Next.

  5. Sur la page Configurer la rotation, procédez comme suit. Pour les secrets externes gérés, la rotation est activée par défaut lors de la création du secret.

    1. Vérifiez que la rotation automatique est activée.

    2. Sous Métadonnées de rotation, pour la version de l'API (apiVersion), entrez la version de l'API de votre organisation Salesforce. Ce champ est obligatoire. Il doit être au formatvXX.X, où se X trouve un caractère numérique, et doit être au moinsv65.0. Si vous souhaitez que Secrets Manager fasse pivoter le secret à l'aide d'un ensemble distinct d'informations d'identification administratives, fournissez également l'ARN du secret d'administration. Pour une description de chaque champ de métadonnées, voirSecret du client Salesforce.

    3. Dans Autorisations de service pour la rotation des secrets, choisissez Create a new role pour créer automatiquement un rôle IAM avec les autorisations dont Secrets Manager a besoin pour faire pivoter le secret. Par défaut, les autorisations sont limitées au partenaire d'intégration de la AWS région où le secret est créé. Pour plus d’informations, consultez Sécurité et autorisations.

    4. Sous Calendrier de rotation, entrez votre calendrier dans le fuseau horaire UTC, par exemple, effectuez une rotation automatique tous les 30 jours.

    5. Choisissez Suivant.

  6. Dans la page Review (Révision), passez en revue vos paramètres, puis choisissez Store (Stocker).

Pour d'autres méthodes de configuration de la rotation pour un secret externe géré, notamment le AWS AWS CLI, voirRotate Secrets Manager gérait les secrets externes.

Étape 3 : tester les informations d'identification modifiées

La dernière étape consiste à confirmer que les informations d'identification alternées fonctionnent en récupérant la valeur secrète et en échangeant les informations d'identification contre un jeton d'accès Salesforce.

Pour récupérer la valeur secrète (console)
  1. Ouvrez la console Secrets Manager à l'adresse https://console.aws.amazon.com/secretsmanager/.

  2. Sur la page Secrets, choisissez votre secret.

  3. Sur la page Secret details (Détails secrets), faites défiler l'écran vers le bas et choisissez Retrieve secret value (Récupération d'une valeur de secret). Notez le courant consumerKey et consumerSecret les valeurs.

Note

Vérifiez que les consumerSecret valeurs consumerKey et ont réellement changé par rapport aux valeurs que vous avez initialement stockées. S'ils n'ont pas changé, attendez quelques minutes et vérifiez à nouveau. S'ils n'ont toujours pas changé, AWS CloudTrail recherchez les RotationFailed événements liés au secret, notamment les raisons de l'échec de la rotation. Pour plus d’informations, consultez Mon secret externe géré ne change pas.

Utilisez ensuite les informations d'identification récupérées pour demander un jeton d'accès à Salesforce. MyDomainNameRemplacez-le par votre nom Salesforce My Domain, puis remplacez consumerKey et par consumerSecret les valeurs que vous avez récupérées.

curl -X POST "https://MyDomainName.my.salesforce.com/services/oauth2/token" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -d "client_id=consumerKey" \ -d "client_secret=consumerSecret"

Si les informations d'identification sont valides, Salesforce renvoie une réponse JSON contenant unaccess_token. La réception d'un jeton d'accès confirme que les informations d'identification modifiées fonctionnent.

Lorsque saisissez des commandes dans un shell de commande, il existe un risque d'accès à l'historique des commandes ou aux paramètres de vos commandes. Consultez Réduisez les risques liés AWS CLI à l'utilisation du pour stocker vos AWS Secrets Manager secrets.

Étape 4 : Nettoyer les ressources

Pour éviter d'encourir des frais permanents, supprimez les ressources que vous avez créées dans ce didacticiel lorsque vous n'en avez plus besoin : le secret et le rôle de rotation IAM créés par Secrets Manager. La suppression du secret arrête également la rotation automatique.

Pour supprimer le secret (console)
  1. Ouvrez la console Secrets Manager à l'adresse https://console.aws.amazon.com/secretsmanager/.

  2. Sur la page Secrets, choisissez votre secret.

  3. Dans la section Secrets details (Détails du secret), choisissez Actions, puis Edit description (Modifier la description).

  4. Dans la boîte de dialogue Désactiver la suppression secrète et planifiée, entrez une période d'attente, puis choisissez Planifier la suppression. Secrets Manager rend le secret immédiatement inaccessible et planifie sa suppression après la fenêtre de restauration. Pour plus d’informations, consultez Supprimer un AWS Secrets Manager secret.

Pour supprimer le rôle de rotation (console)
  1. Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/, puis sélectionnez Rôles.

  2. Recherchez le rôle créé par Secrets Manager pour la rotation, sélectionnez-le, puis choisissez Supprimer. Pour plus d'informations, consultez Suppression de rôles ou de profils d'instance dans le guide de l'utilisateur IAM.

Étapes suivantes