Skip to content

Le connecteur Salesforce permet à RAC/M Identity de lire et de provisionner les comptes utilisateurs et les autorisations depuis Salesforce. Ce connecteur utilise le connecteur SCIM avec une authentification JWT Bearer Token pour communiquer avec l'API SCIM de Salesforce.

INFO

Le connecteur Salesforce est basé sur le connecteur SCIM. La version 1.5.0.0 ou plus récente est requise pour Salesforce. Veuillez consulter la documentation du connecteur SCIM pour les détails généraux de configuration SCIM.

Configuration

Ce guide s'appuie sur Configurer une application cliente externe pour émettre des jetons d'accès basés sur JWT de Salesforce.

Le connecteur Salesforce utilise le connecteur SCIM avec l'authentification jwt-bearer-token. Les paramètres suivants sont requis :

Paramètres SCIM communs

ConfigurationDescription
AuthenticationSélectionnez jwt-bearer-token pour l'authentification par jeton JWT.
SCIM EndpointSaisissez /services/scim comme chemin d'endpoint SCIM sur Salesforce.
SCIM VersionSaisissez /v2 comme version de l'API SCIM supportée par Salesforce.
Base URLSaisissez l'URL de base de votre instance Salesforce (ex. https://yourinstance.salesforce.com).
JWT Authentication EndpointSaisissez l'URL de l'endpoint d'authentification qui accepte les jetons JWT et renvoie des jetons d'accès OAuth (ex. https://yourinstance.salesforce.com/services/oauth2/token).
Private Key (PEM)Saisissez la clé privée au format PEM (PKCS#8). Requis pour l'authentification JWT. Voir Création de la paire de clés ci-dessous.
JWT IssuerSaisissez la valeur de la revendication issuer (iss) à inclure dans le jeton JWT. Cela doit correspondre au Consumer Key de votre application connectée Salesforce.
JWT SubjectSaisissez la valeur de la revendication subject (sub) à inclure dans le jeton JWT. Cela doit être le nom d'utilisateur Salesforce utilisé pour l'authentification.
JWT AudienceSaisissez la valeur de la revendication audience (aud) à inclure dans le jeton JWT (ex. https://login.salesforce.com ou https://test.salesforce.com pour un environnement sandbox).
JWT Expiration SecondsSaisissez le délai d'expiration du jeton JWT en secondes (par défaut : 300 secondes / 5 minutes).

Paramètres optionnels

Ces paramètres doivent rester vides sauf si le serveur ICF utilisé par RAC/M Identity doit passer par un proxy pour atteindre l'instance Salesforce.

ConfigurationDescription
Proxy AddressSaisissez l'adresse du serveur proxy (nom d'hôte ou adresse IP) si applicable.
Proxy Port NumberSaisissez le numéro de port du serveur proxy si applicable.
Default CharsetSaisissez l'encodage par défaut utilisé lorsque la réponse ne précise pas de charset (ex. UTF-8).

Création de la paire de clés

Pour s'authentifier auprès de Salesforce via l'authentification JWT Bearer Token, vous devez créer une paire de clés publique/privée. La clé privée sera utilisée par RAC/M Identity pour signer les jetons JWT, et la clé publique sera téléversée dans Salesforce.

Étape 1 : Générer la paire de clés

Générez une clé privée et le certificat correspondant à l'aide d'OpenSSL (la longueur de clé et la date d'expiration peuvent être ajustées si nécessaire) :

bash
openssl req -x509 -newkey rsa:2048 -keyout salesforce_private_key.pem -out salesforce_certificate.crt -days 365 -nodes

La clé privée (salesforce_private_key.pem) sera utilisée dans le paramètre de configuration Private Key (PEM) de RAC/M Identity. Le certificat (salesforce_certificate.crt) sera téléversé dans Salesforce dans la section suivante.

Configuration de l'application externe dans Salesforce

Pour activer l'intégration SCIM avec Salesforce, vous devez créer une application cliente externe dans Salesforce et la configurer pour utiliser l'authentification JWT Bearer Token.

Étape 1 : Créer un profil Salesforce pour le compte de service

Cette étape est recommandée si vous ne souhaitez pas utiliser le profil System Administrator pour le compte de service.

  1. Dans la zone Quick Find, recherchez Profiles et sélectionnez-le.
  2. Cliquez sur New Profile.
  3. Renseignez les informations de base :
    • Profile Name : Saisissez un nom pour le profil (ex. "RACM Identity SCIM Service Account Profile").
    • Description : Saisissez une description pour le profil.
  4. Dans Existing Profile, sélectionnez System Administrator.
  5. Cliquez sur Save.
  6. Modifiez le profil et activez les autorisations suivantes :
    • PermissionsActivitiesAccess
    • PermissionsAllowViewKnowledge
    • PermissionsApexRestServices
    • PermissionsAssignPermissionSets
    • PermissionsChatterInternalUser
    • PermissionsDelegatedTwoFactor
    • PermissionsLightningConsoleAllowedForUser
    • PermissionsManageInternalUsers
    • PermissionsManageIpAddresses
    • PermissionsManageLoginAccessPolicies
    • PermissionsManagePasswordPolicies
    • PermissionsManageProfilesPermissionsets
    • PermissionsManageRoles
    • PermissionsManageSharing
    • PermissionsManageUsers
    • PermissionsResetPasswords
    • PermissionsViewAllUsers
    • PermissionsViewHelpLink
    • PermissionsViewRoles
    • PermissionsViewSetup
  7. Cliquez sur Save.

Étape 2 : Créer un compte utilisateur pour le compte de service

  1. Dans la zone Quick Find, recherchez Users et sélectionnez-le.
  2. Cliquez sur New User.
  3. Renseignez les informations de base :
    • First Name : Saisissez le prénom de l'utilisateur (ex. "RACM Identity").
    • Last Name : Saisissez le nom de famille de l'utilisateur (ex. "SCIM Service Account").
    • Email : Saisissez l'adresse e-mail de l'utilisateur (ex. "racmidentity@example.com").
    • Username : Saisissez l'adresse e-mail de l'utilisateur (ex. "racmidentity@example.com"). Elle sera utilisée comme JWT Subject dans RAC/M Identity.
    • Profile : Sélectionnez le profil créé à l'étape précédente. Assurez-vous que la User License est Salesforce.
  4. Cliquez sur Save.

Étape 3 : Créer un ensemble d'autorisations pour le compte de service

  1. Dans la zone Quick Find, recherchez Permission Sets et sélectionnez-le.
  2. Cliquez sur New.
  3. Renseignez les informations de base :
    • Label : Saisissez un nom (ex. "RACM Identity SCIM Permissions").
    • API Name : Il sera généré automatiquement.
    • User License : Sélectionnez Salesforce.
  4. Cliquez sur Save.
  5. Dans l'ensemble d'autorisations, ouvrez System Permissions et cliquez sur Edit.
  6. Activez les autorisations suivantes :
    • Assign Permission Sets
    • Delegated Two-Factor Authentication
    • Manage Internal Users
    • Manage IP Addresses
    • Manage Login Access Policies
    • Manage Password Policies
    • Manage Profiles and Permission Sets
    • Manage Roles
    • Manage Sharing
    • Manage Users
    • Record Visibility API
    • Reset Passwords
    • View All Profiles
    • View All Users
    • View Roles
    • View Setup and Configuration
  7. Cliquez sur Save.
  8. Ouvrez Manage Assignments et assignez cet ensemble d'autorisations au compte de service créé à l'étape 2.

Étape 4 : Créer une application cliente externe

  1. Connectez-vous à Salesforce en tant qu'administrateur.
  2. Accédez à Setup (icône engrenage) > Setup.
  3. Dans la zone Quick Find, recherchez External Client App Manager et sélectionnez-le.
  4. Cliquez sur New External Client App.
  5. Renseignez les informations de base :
    • External Client App Name : Saisissez un nom pour votre application cliente externe (ex. "RACM Identity SCIM Integration").
    • API Name : Il sera généré automatiquement à partir du nom de l'application cliente externe.
    • Contact Email : Suivez les politiques de votre organisation pour les adresses e-mail de contact dans Salesforce.
  6. Cliquez sur Create.

Étape 5 : Configurer le flux JWT Bearer Token

  1. Ouvrez l'onglet Settings et cliquez sur Edit pour ouvrir le menu des paramètres.
  2. Dans OAuth Settings, cochez Enable OAuth.
  3. Callback URL : Saisissez une URL de rappel (requise mais non utilisée pour le flux JWT Bearer Token). Vous pouvez indiquer l'URL de l'instance RAC/M Identity (l'URL exacte importe peu car elle sera ignorée).
  4. Selected OAuth Scopes : Ajoutez les scopes suivants :
    • Manage user data via APIs (api)
    • Perform requests on your behalf at any time (refresh_token, offline_access)
  5. Dans Flow Enablement, sélectionnez Enable JWT Bearer Flow.
  6. Cliquez sur Upload Files et téléversez le certificat de clé publique (salesforce_certificate.crt) créé dans la section Création de la paire de clés.
  7. Cliquez sur Save.

Étape 6 : Accorder l'accès

Si votre application connectée est configurée avec "Admin approved users are pre-authorized", vous devrez peut-être :

  1. Ouvrez l'onglet Policies et cliquez sur Edit pour ouvrir le menu des politiques.
  2. Dans Selected Profiles, sélectionnez le profil créé à l'étape 1(#etape-1-creer-un-profil-salesforce-pour-le-compte-de-service).
  3. Dans Selected Permission Sets, sélectionnez l'ensemble d'autorisations créé à l'étape 3(#etape-3-creer-un-ensemble-dautorisations-pour-le-compte-de-service).
  4. Dans OAuth Policies, pour Permitted Users, sélectionnez Admin approved users are pre-authorized.
  5. Cliquez sur Save.

Étape 7 : Récupérer les valeurs de configuration

Après avoir créé l'application cliente externe, vous devrez récupérer les valeurs suivantes pour les utiliser dans RAC/M Identity :

  1. Cliquez sur Consumer Key and Secret pour récupérer la Consumer Key et le Secret.
  2. Dans la page qui s'ouvre, copiez la Consumer Key. Elle sera utilisée comme JWT Issuer dans RAC/M Identity.

Prochaines étapes

Après avoir terminé la création de la paire de clés et la configuration de l'application connectée Salesforce :

  1. Configurez le connecteur SCIM dans RAC/M Identity avec les paramètres listés dans la section Configuration ci-dessus.
  2. Utilisez la clé privée (format PKCS#8) dans le champ Private Key (PEM).
  3. Utilisez la Consumer Key de l'application connectée comme JWT Issuer.
  4. Utilisez le nom d'utilisateur Salesforce comme JWT Subject.
  5. Testez la connexion pour vous assurer que l'authentification fonctionne correctement.

Pour plus d'informations sur la configuration et le dépannage du connecteur SCIM, consultez la documentation du connecteur SCIM.