---
locale: "fr"
updated_at: "2026-03-02T16:30:27.566Z"
canonical: "https://www.isdecisions.com/fr/userlock/docs/guides/sso/configurer-applications/configurer-application-saas-non-supportee"
---

# Configurer une application SaaS non prise en charge

Configuration SAML générique, paramétrage manuel, échange de métadonnées.

## Introduction

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é](/userlock/docs/guides/sso/installer-configurer-sso).

> **Note**
>
> Les configurations personnalisées utilisant le protocole **OpenID Connect** ne sont pas encore prises en charge.

## Étape 1 – Créer le fichier de configuration

Le fichier de configuration doit être au **format JSON** et structuré comme un tableau d’objets de configuration — un pour chaque application SaaS.

```json
[
  {
    "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",
      "AssertionConsumerServicesUriFormat": "https://{0}.contoso.com/sso"
    }
  }
]
```

## Étape 2 – Choisir le type de configuration

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). |

## Étape 3 – Définir l’identifiant unique

Le `ProfileTypeId` sert d’identifiant unique pour la configuration de votre application SaaS dans UserLock.

```json
"ProfileTypeId": "Contoso"
```

Chaque application SaaS doit disposer d’un `ProfileTypeId` distinct afin d’éviter tout conflit de configuration.

## Étape 4 – Configurer l’assertion SAML

Cette étape explique comment UserLock génère l’assertion SAML transmise à l’application SaaS lors du processus d’authentification.

```json
"Assertion": {
  "NameIdFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress",
  "NameIdType": "Email",
  "Attributes": {
    "MyAttribute": [
      "FirstName",
      "LastName"
    ]
  }
}
```

### Définir le NameIdFormat

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 :**

```json
"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"`

### Définir le NameIdType

Ce paramètre détermine quel attribut utilisateur d’Active Directory UserLock utilisera comme **NameID** dans la réponse SAML.

```json
"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.

### Définir les attributs

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 :**

```json
"Attributes": {
  "MyAttribute": [
    "FirstName",
    "LastName"
  ]
}
```

Vous pouvez définir plusieurs attributs :

```json
"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.

## Étape 5 – Définir la section de configuration

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.

```json
"Configuration": {
  "MultiConfigAllowed": true,
  "EditableInputs": {
    "EmailDomain": ""
  },
  "LogoFilePath": "C:\\Images\\logo.png",
  "IssuerFormat": "https://{0}.contoso.com",
  "AssertionConsumerServicesUriFormat": "https://{0}.contoso.com/sso"
}
```

### MultiConfigAllowed

Indique si plusieurs configurations peuvent coexister pour cette application.

```json
"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.

### Champs modifiables

Spécifie les champs qui seront affichés dans la console UserLock SSO pour cette application SaaS.

```json
"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.

### Format de l’émetteur (Issuer Format)

Précise comment UserLock génère la valeur *issuer* incluse dans la requête d’authentification SAML.

**Émetteur statique :**

```json
"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 :**

```json
"IssuerFormat": "https://{0}.contoso.com"
```

### URI du service consommateur d’assertions (Assertion Consumer Service URI)

Indique le point de terminaison vers lequel UserLock envoie la réponse SAML.

**Point de terminaison statique :**

```json
"AssertionConsumerServicesUriFormat": "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 :**

```json
"AssertionConsumerServicesUriFormat": "https://{0}.contoso.com/sso"
```

## Étape 6 – Créer et valider le profil SSO

Après avoir terminé votre configuration JSON :

1. Ouvrez la **console UserLock** et accédez à ⚙** Paramètres du serveur ▸ Single Sign-On**.
2. Dans la liste des applications, sélectionnez **votre application SaaS personnalisée**.
3. Complétez les champs modifiables (par exemple : domaine e-mail, téléversement de certificats).
4. Enregistrez la configuration, puis testez le processus d’authentification avec l’application SaaS.
