Applica un profilo predefinito di mappatura degli attributi

POST /v1/connections/{connection_id}/attribute-mappings:apply-profile · autorizzazione connections:write

Sostituisce le regole a destinazione fissa (email, nomi, gruppi…) di una connessione enterprise con le regole di un profilo predefinito: entra, okta, google, ping, jumpcloud o keycloak per SAML, generic per OIDC. Le regole user_metadata.<key> memorizzate vengono mantenute. L'attributo soggetto SAML non viene modificato: il soggetto è configurato separatamente e cambiarlo lascerebbe orfane le identità collegate. If-Match è obbligatorio come per la sostituzione della lista. Applicare un profilo già applicato non scrive nulla. La scrittura viene registrata nel log di audit come connection.attribute_mappings_replaced con il nome del profilo.

Richiesta

Campo Tipo Obbligatorio Descrizione
connection_id path sì ID della connessione enterprise (conn_…).
If-Match header sì L'ETag dell'ultima lettura. Se manca: 428; se obsoleto: 412.
profile string sì entra, okta, google, ping, jumpcloud, keycloak (SAML) o generic (OIDC).

Risposta

200 OK con la lista memorizzata (vedi Ottieni le mappature degli attributi) e il nuovo ETag.

Errori

HTTP code Quando
404 not_found La connessione non esiste in questo ambiente o non è una connessione enterprise.
409 conflict Il protocollo della connessione non prevede mappature degli attributi (LDAP).
412 precondition_failed If-Match non corrisponde alla versione attuale, oppure la lista è stata modificata nel frattempo.
422 validation_failed profile manca, è sconosciuto o non è un profilo predefinito del protocollo della connessione (/profile), oppure una regola user_metadata mantenuta legge un attributo del profilo con un altro NameFormat (/profile, conflicts_with_stored_mappings).
428 precondition_required L'header If-Match manca.
401 unauthenticated La credenziale manca, non è valida o è stata revocata.
403 insufficient_permissions La credenziale non ha l'autorizzazione richiesta.
429 rate_limited È stato superato il limite di frequenza; riprova dopo il periodo indicato in Retry-After.
503 service_unavailable Una dipendenza è temporaneamente non disponibile; riprova dopo il periodo indicato in Retry-After.

Esempio

curl -X POST "https://api.eu.keenauth.com/v1/connections/conn_01j9xp6q0r1s5t7v9w1x3y5z7b/attribute-mappings:apply-profile" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -H 'If-Match: "6f1c…"' \
  -d '{"profile":"entra"}'
keenauth connections attribute-mappings apply-profile conn_01j9xp6q0r1s5t7v9w1x3y5z7b --profile entra --if-match '"6f1c…"'