> ## Documentation Index
> Fetch the complete documentation index at: https://ai-kb.automationanywhere.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Point de terminaison des métadonnées SP

> Référence technique pour le point de terminaison des métadonnées du fournisseur de services EK utilisé lors de la configuration de l'authentification unique SAML.

Le backend EK expose un **point de terminaison public des métadonnées du fournisseur de services SAML (SP)** que les **fournisseurs d'identité (IdP)** peuvent utiliser pour établir automatiquement une relation de confiance avec l'application. Cela élimine le besoin pour les administrateurs d'échanger manuellement les détails de configuration du SP lors de la configuration de l'authentification unique.

## Point de terminaison

```
GET /saml/well-known/sp-metadata
```

| Propriété               | Valeur                                 |
| ----------------------- | -------------------------------------- |
| **Authentification**    | Aucune (accès public)                  |
| **Content-Type**        | `application/samlmetadata+xml`         |
| **Content-Disposition** | `inline; filename=\"sp_metadata.xml\"` |

## Objectif

Lors de la configuration de l'authentification unique SAML entre un IdP (par exemple, Okta, Azure AD, OneLogin) et EK, l'IdP doit connaître plusieurs éléments concernant le SP :

* **Entity ID** — identificateur unique du SP.
* **Assertion Consumer Service (ACS) URL** — l'endroit où l'IdP doit envoyer les réponses SAML.
* **Format NameID pris en charge** — comment l'IdP doit identifier l'utilisateur.
* **Certificat de signature** *(le cas échéant)* — la clé publique que l'IdP peut utiliser pour vérifier les AuthnRequests signées.

Au lieu d'exiger qu'un administrateur copie et colle chacune de ces valeurs individuellement, ce point de terminaison les fournit toutes dans un seul document XML de métadonnées SAML 2.0 conforme aux normes. Les administrateurs peuvent soit pointer leur IdP directement vers cette URL, soit télécharger le XML et le charger sur l'IdP.

Pour des instructions étape par étape sur l'utilisation de ce point de terminaison lors de la configuration, consultez le [Guide de configuration des métadonnées SSO](/super-admin/sso/saml-sso-metadata-setup-guide).

## Format de réponse

Le point de terminaison renvoie un document SAML 2.0 `EntityDescriptor`. Voici un exemple représentatif :

```xml theme={null}
<?xml version="1.0" encoding="UTF-8"?>
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
                     entityID="https://api.example.com/user/generic/sso/saml/acs/admin">
  <md:SPSSODescriptor AuthnRequestsSigned="true"
                      WantAssertionsSigned="true"
                      protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
    <md:KeyDescriptor use="signing">
      <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
        <ds:X509Data>
          <ds:X509Certificate>MIIC...base64-encoded-cert...</ds:X509Certificate>
        </ds:X509Data>
      </ds:KeyInfo>
    </md:KeyDescriptor>
    <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat>
    <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                                Location="https://api.example.com/user/generic/sso/saml/acs/admin"
                                index="0"
                                isDefault="true" />
  </md:SPSSODescriptor>
</md:EntityDescriptor>
```

## Composants garantis et optionnels

### Garantis (toujours présents)

| Élément XML / Attribut                 | Description                                                                                                                                                                                                             |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `<md:EntityDescriptor entityID="...">` | L'ID d'entité du SP. Par défaut, l'URL ACS à moins que `CUSTOM_ENTITY_ID_FOR_GENERIC_SSO` soit défini, auquel cas cette valeur est utilisée à la place.                                                                 |
| `<md:SPSSODescriptor>`                 | Conteneur pour toutes les informations du descripteur SSO du SP. Inclut toujours `WantAssertionsSigned="true"` et `protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"`.                                  |
| Attribut `AuthnRequestsSigned`         | Toujours présent sur `SPSSODescriptor`. Défini à `"true"` lorsqu'un certificat de signature SP est configuré, `"false"` sinon.                                                                                          |
| `<md:NameIDFormat>`                    | Toujours `urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress`. EK s'attend à ce que l'IdP fournisse l'adresse e-mail de l'utilisateur en tant que NameID.                                                           |
| `<md:AssertionConsumerService>`        | Le point de terminaison ACS. Utilise toujours la liaison HTTP-POST, l'index `0` et `isDefault="true"`. L'`emplacement` est dérivé de l'URL racine du backend EK : `{BACKEND_ROOT_URL}/user/generic/sso/saml/acs/admin`. |

### Optionnels (conditionnellement présents)

| Élément XML / Attribut             | Condition                                                                                                                                               | Description                                                                                                                                                                                                  |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `<md:KeyDescriptor use="signing">` | Présent uniquement lorsque le serveur est configuré avec un certificat de signature SP valide et une clé via `SAML_SP_CERT_FILE` et `SAML_SP_KEY_FILE`. | Contient le certificat de signature X.509 du SP pour que l'IdP puisse vérifier les AuthnRequests signées. Lorsqu'absent, les AuthnRequests sont envoyées non signées et `AuthnRequestsSigned` est `"false"`. |

## Variables d'environnement associées

| Variable                           | Effet sur les métadonnées                                                                                                                                                      |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `CUSTOM_ENTITY_ID_FOR_GENERIC_SSO` | Si défini, remplace l'`entityID` par défaut (qui est l'URL ACS).                                                                                                               |
| `SAML_SP_CERT_FILE`                | Chemin vers le certificat X.509 codé en PEM du SP. Lorsqu'il est défini avec `SAML_SP_KEY_FILE`, le bloc `KeyDescriptor` est inclus et `AuthnRequestsSigned` devient `"true"`. |
| `SAML_SP_KEY_FILE`                 | Chemin vers la clé privée codée en PEM du SP. Requis avec `SAML_SP_CERT_FILE` pour que la signature des demandes soit activée.                                                 |
