Définir la connexion initiée par le fournisseur d'identité pour une connexion SAML

PUT /v1/connections/{connection_id}/idp-initiated · autorisation connections:write

Autorise ou désactive la connexion initiée par le fournisseur d'identité (une réponse SAML non sollicitée envoyée depuis le portail d'applications du fournisseur d'identité) pour une connexion SAML d'entreprise, et définit les applications dans lesquelles l'utilisateur peut arriver. Elle est désactivée par défaut.

Requête

Champ Type Obligatoire Description
connection_id path oui Identifiant de la connexion SAML d'entreprise (conn_…).
If-Match header non L'ETag de la connexion. Une valeur périmée échoue avec 412.
allow_idp_initiated boolean oui Accepter les réponses SAML non sollicitées. true exige idp_initiated_default_application_id.
idp_initiated_default_application_id string | null si activé Application (app_…) utilisée lorsque le RelayState est vide.
idp_initiated_allowed_application_ids array non Applications (app_…) qu'un RelayState peut sélectionner ; valeurs uniques, 20 au maximum.

Réponse

200 OK avec la connexion (voir Obtenir une connexion) et son nouvel ETag. La connexion affiche les valeurs enregistrées dans allow_idp_initiated, idp_initiated_default_application_id et idp_initiated_allowed_application_ids.

Erreurs

HTTP code Quand
404 not_found La connexion n'existe pas dans cet environnement.
412 precondition_failed If-Match ne correspond pas à la version actuelle.
422 validation_failed La connexion n'est pas une connexion SAML d'entreprise, l'application par défaut est absente alors que la fonctionnalité est activée, ou une application ne respecte pas les règles de cible ; errors[] indique le champ concerné.
400 unknown_field Le corps de la requête contient un champ inconnu.
401 unauthenticated L'identifiant est absent, invalide ou révoqué.
403 insufficient_permissions L'identifiant ne dispose pas de l'autorisation requise.
403 step_up_required Un utilisateur du tableau de bord n'a pas effectué d'authentification renforcée récente.
429 rate_limited La limite de débit a été dépassée ; réessayez après la période indiquée par Retry-After.
503 service_unavailable Une dépendance est temporairement indisponible ; réessayez après la période indiquée par Retry-After.

Exemple

curl -X PUT "https://api.eu.keenauth.com/v1/connections/conn_01j9xp6q0r1s5t7v9w1x3y5z7b/idp-initiated" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"allow_idp_initiated":true,"idp_initiated_default_application_id":"app_01j9xp6q0r1s5t7v9w1x3y5z7c","idp_initiated_allowed_application_ids":["app_01j9xp6q0r1s5t7v9w1x3y5z7c"]}'
keenauth connections idp-initiated put conn_01j9xp6q0r1s5t7v9w1x3y5z7b --data '{"allow_idp_initiated":false}'