Configurer une application SaaS non prise en charge
Vous pouvez intégrer des applications SaaS non prises en charge utilisant le protocole SAML en créant un fichier de configuration personnalisé dans UserLock SSO. Cela vous permet de définir manuellement comment UserLock interagit avec le fournisseur de service, que ce soit pour une configuration unique ou pour plusieurs instances d’une même application.
UserLock SSO permet d’intégrer n’importe quelle application SaaS compatible avec le protocole SAML, même si elle n’est pas proposée nativement dans l’interface.
Cette intégration s’effectue via la création d’un fichier de configuration personnalisé, qui définit comment UserLock doit émettre les assertions SAML et gérer les paramètres propres à chaque application.
Chaque configuration personnalisée est enregistrée dans le fichier suivant :%ProgramData%\ISDecisions\UserLock\SSO\CustomSamlManagers.json
Vous pouvez regrouper plusieurs configurations dans ce fichier, une par application.
Une fois la configuration personnalisée créée, vous devez également configurer le profil d’application correspondant dans UserLock SSO, comme pour les autres fournisseurs SaaS.
🚩️ Avant de commencer :
- Assurez-vous de disposer de la documentation ou du guide de configuration SAML de l’application SaaS. 
- Vérifiez les attributs, points de terminaison (endpoints) et formats de NameID requis par l’application. 
- Préparez le certificat SAML utilisé par l’application SaaS, si celle-ci requiert des requêtes d’authentification signées. 
- Le SSO UserLock doit déjà être installé et configuré. 
Note
Les configurations personnalisées utilisant le protocole OpenID Connect ne sont pas encore prises en charge.
Le fichier de configuration doit être au format JSON et structuré comme un tableau d’objets de configuration — un pour chaque application SaaS.
[
  {
    "ProfileTypeId": "Contoso",
    "Assertion": {
      "NameIdFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress",
      "NameIdType": "Email",
      "Attributes": {
        "MyAttribute": [
          "FirstName",
          "LastName"
        ]
      }
    },
    "Configuration": {
      "MultiConfigAllowed": true,
      "EditableInputs": {
        "EmailDomain": ""
      },
      "LogoFilePath": "C:\\Images\\logo.png",
      "IssuerFormat": "https://{0}.contoso.com",
      "AssertionConsumerServicesUri": "https://{0}.contoso.com/sso"
    }
  }
]UserLock prend en charge deux approches de configuration selon vos besoins :
| Type de configuration | Description | Cas d’utilisation typique | 
|---|---|---|
| Configuration unique | Configuration fixe fonctionnant pour un seul environnement, avec toutes les valeurs définies directement dans le fichier JSON. | Lorsque votre application SaaS utilise un seul domaine ou une seule instance (par ex. un locataire d’entreprise). | 
| Configuration flexible | Configuration dynamique permettant plusieurs profils pour une même application. | Lorsque votre application SaaS utilise plusieurs domaines ou locataires (par ex. un par service ou par client). | 
Le ProfileTypeId sert d’identifiant unique pour la configuration de votre application SaaS dans UserLock.
"ProfileTypeId": "Contoso"Chaque application SaaS doit disposer d’un ProfileTypeId distinct afin d’éviter tout conflit de configuration.
Cette étape explique comment UserLock génère l’assertion SAML transmise à l’application SaaS lors du processus d’authentification.
"Assertion": {
  "NameIdFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress",
  "NameIdType": "Email",
  "Attributes": {
    "MyAttribute": [
      "FirstName",
      "LastName"
    ]
  }
}Ce paramètre définit le format du NameID (sujet) utilisé dans la réponse SAML.
Il doit correspondre exactement au format attendu par l’application SaaS pour l’authentification.
Exemple :
"NameIdFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"Formats les plus courants :
- "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"(utilisé le plus couramment)
- "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent"
- "urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos"
- "urn:oasis:names:tc:SAML:2.0:nameid-format:transient"
Ce paramètre détermine quel attribut utilisateur d’Active Directory UserLock utilisera comme NameID dans la réponse SAML.
"NameIdType": "Email"Valeurs prises en charge :
- Email — sélectionne la première adresse e-mail correspondant au domaine attendu parmi les attributs UPN, Email ou ProxyAddresses (requiert le champ modifiable - EmailDomain).
- ImmutableId 
- UserPrincipalName (UPN) 
- SamAccountName 
Les autres valeurs ne sont pas prises en charge.
Les attributs correspondent à des informations utilisateur supplémentaires incluses dans la réponse SAML.
Ils proviennent des propriétés de l’utilisateur dans Active Directory.
Exemple :
"Attributes": {
  "MyAttribute": [
    "FirstName",
    "LastName"
  ]
}Vous pouvez définir plusieurs attributs :
"Attributes": {
  "MyAttribute": [
    "FirstName",
    "LastName"
  ],
  "MySecondAttribute": [
    "DisplayName"
  ]
}Valeurs prises en charge :
- Email 
- ImmutableId 
- FirstName 
- LastName 
- DisplayName 
- UserPrincipalName 
Note
Si vous avez besoin d’autres attributs qui ne sont pas listés ici, contactez l’équipe du support IS Decisions pour obtenir de l’aide.
La section de configuration précise quels paramètres l’administrateur peut personnaliser dans la console UserLock SSO, ainsi que la manière dont l’application SaaS y sera affichée et gérée.
"Configuration": {
  "MultiConfigAllowed": true,
  "EditableInputs": {
    "EmailDomain": ""
  },
  "LogoFilePath": "C:\\Images\\logo.png",
  "IssuerFormat": "https://{0}.contoso.com",
  "AssertionConsumerServicesUri": "https://{0}.contoso.com/sso"
}Indique si plusieurs configurations peuvent coexister pour cette application.
"MultiConfigAllowed": true- true – permet la création de plusieurs profils (utilisé pour les scénarios de configuration flexible). 
- false – limite la configuration à un seul profil fixe. 
Spécifie les champs qui seront affichés dans la console UserLock SSO pour cette application SaaS.
"EditableInputs": {
  "EmailDomain": "",
  "MandatoryCertificate": "",
  "OptionalCertificate": ""
}Champs modifiables pris en charge :
- EmailDomain — requis lorsque le type ou l’attribut Email est utilisé comme NameIdType. 
- MandatoryCertificate — pour les applications SaaS qui exigent que la requête SAML soit signée. Dans ce cas, l’utilisateur devra téléverser le certificat de signature approprié. 
- OptionalCertificate — pour les applications SaaS qui acceptent les requêtes signées sans les rendre obligatoires. Le téléversement du certificat reste optionnel. 
Précise comment UserLock génère la valeur issuer incluse dans la requête d’authentification SAML.
Émetteur statique :
"IssuerFormat": "https://contoso.com"Pour rendre votre configuration plus flexible, vous pouvez soit laisser ce champ vide, soit insérer un modèle de texte (placeholder entre accolades).
Dans les deux cas, la valeur réelle sera définie plus tard dans la console UserLock SSO lors de la création du profil d’application.
Émetteur flexible :
"IssuerFormat": "https://{0}.contoso.com"Indique le point de terminaison vers lequel UserLock envoie la réponse SAML.
Point de terminaison statique :
"AssertionConsumerServicesUri": "https://contoso.com/sso"Pour une configuration flexible, le même principe s’applique — vous pouvez laisser ce champ vide ou utiliser un modèle de texte (placeholder entre accolades).
Point de terminaison flexible :
"AssertionConsumerServicesUri": "https://{0}.contoso.com/sso"Après avoir terminé votre configuration JSON :
- Ouvrez la console UserLock et accédez à ⚙️ Paramètres du serveur ▸ Single Sign-On. 
- Dans la liste des applications, sélectionnez votre application SaaS personnalisée. 
- Complétez les champs modifiables (par exemple : domaine e-mail, téléversement de certificats). 
- Enregistrez la configuration, puis testez le processus d’authentification avec l’application SaaS.