SSO-konfigurációs referencia
Az egyszeri bejelentkezés minden beállítható eleme egy helyen. Az értékek a
global.db sso_connections soraiban élnek (tervezés szerint szerver
szintűek), és a Beállítások → Szerver → Egyszeri bejelentkezés felületen
vagy az sso.* RPC-műveletekkel szerkeszthetők. A mentett sor az egyetlen
igazságforrás — nincs CC_SAML_* / CC_OIDC_* környezeti útvonal (egy
kapcsolat, amely két helyről érkezhetne, olyan, amellyel a beállítások
képernyő ellentmondhat).
Kapcsolat mezői
Szekció neve “Kapcsolat mezői”| Mező | Érvényes erre | Alapértelmezés | Jelentés |
|---|---|---|---|
enabled |
mindkettő | ki | a bejelentkezések használhatják ezt a kapcsolatot |
idpMetadataXml |
SAML | — | az IdP EntityDescriptor XML-je (az engedélyezéshez kötelező) |
spEntityId |
SAML | <origin>/saml |
a saját entitásazonosítónk, rögzítve, amikor az origin változik |
emailAttribute |
SAML | email |
az e-mail-címet hordozó attribútum; e-mail alakú NameID a tartalék |
displayNameAttribute |
SAML | displayName |
a megjelenítendő nevet hordozó attribútum |
groupsAttribute |
SAML | groups |
a csoportneveket hordozó attribútum |
clockSkewSeconds |
SAML | 90 | az élettartam-ellenőrzés megengedett óraeltérése |
allowIdpInitiated |
SAML | ki | kéretlen válaszok elfogadása (nincs InResponseTo) |
wantResponseSigned |
SAML | ki | a válasz gyökérelemének aláírásának megkövetelése (az állítás aláírása mindig kötelező) |
issuer |
OIDC | — | a kibocsátó alap URL-je (az engedélyezéshez kötelező) |
clientId |
OIDC | — | nyilvános kliens azonosítója (az engedélyezéshez kötelező) |
clientSecret |
OIDC | — | csak bizalmas kliensekhez; a 0600 jogosultságú titkosfájlban tárolva, soha nem az adatbázisban — RPC-n keresztül csak írható (sso.getConfig a clientSecretPresent értéket jelenti) |
groupsClaim |
OIDC | groups |
a csoportneveket hordozó claim |
defaultRole |
mindkettő | member |
a szerep, ha egyetlen csoport sem képeződik le — soha nem owner |
groupRoleMap |
mindkettő | {} |
csoport → szerep; a tulajdonosi leképezéseket mentéskor elutasítjuk |
autoMember |
mindkettő | be | a felhasználók automatikus hozzáadása minden munkaterülethez az első bejelentkezéskor |
allowJit |
mindkettő | be | ismeretlen felhasználók provisionálása bejelentkezéskor |
Folyamatkonfiguráció
Szekció neve “Folyamatkonfiguráció”Az SSO-kapcsolatok nem a környezetből töltődnek fel. Egy megmaradt folyamatkapcsoló a böngészős átadásról szól, nem a kapcsolatsorról:
| Változó / kapcsoló | Jelentés |
|---|---|
--web-client-url / CC_SERVER_WEB_CLIENT_URL |
az az origin, amelyre az SSO-visszahívások visszairányítják a böngészőt (a hitelesítő adat az URL-fragmentumban utazik). Beállítatlanul az átadás azonos originen marad. |
Magának a kibocsátó URL-jének https-nek kell lennie (http csak
visszacsatolási (loopback) kibocsátókhoz, a localhost, 127.0.0.1 és ::1
esetében fogadható el).
HTTP-végpontok
Szekció neve “HTTP-végpontok”| Végpont | Hitelesítés | Cél |
|---|---|---|
GET /saml/login?relay=… |
nincs (átirányítás) | SP által indított bejelentkezés indítása; a relay=desktop átadja az alkalmazásnak, a relay=web-popup postMessage-t küld a várakozó csatlakozási lapnak (amely megadja a saját client_origin értékét; ezt csak akkor vesszük figyelembe, ha az origin-engedélylista megbízik benne) |
POST /saml/acs |
nincs (IdP POST) | az állításfeldolgozó — ellenőriz, provisionál, kiállít |
GET /saml/metadata |
nincs | a saját SP EntityDescriptor-ünk |
GET /oidc/login?relay=… / GET /oidc/callback |
nincs | az OIDC-körforduló; a relay=desktop átadja az alkalmazásnak, a relay=web-popup a várakozó csatlakozási lapnak (ugyanaz a client_origin konvenció) |
GET /auth/providers |
nincs, CORS * |
a csatlakozási képernyő próbája: a felkínált SSO-kapcsolatok (id/kind/label) + pairingEnabled |
/scim/v2/Users… |
Bearer (SCIM-token) | Users létrehozás/lekérés/lista+szűrés/PUT/PATCH/DELETE |
/scim/v2/Groups |
Bearer | csak olvasható; a csoportpush tervezés szerint 501-gyel válaszol |
/scim/v2/ServiceProviderConfig |
Bearer | képességdokumentum |
RPC-műveletek
Szekció neve “RPC-műveletek”Minden sso.* művelet szerverhatókörű, és a szerver tulajdonosa (a
telepítés operátora, ServerAuthority.serverOwner) számára engedélyezett. A
munkaterület tulajdonlása nem elég; a puszta párosítás soha nem adja meg
ezeket.
| Művelet | Cél |
|---|---|
sso.getConfig |
egy adott fajtához mentett kapcsolat |
sso.saveConfig |
érvényesítés, mentés és élő alkalmazás |
sso.status |
engedélyezett/beállított jelzők, a SCIM-token megléte, a kanonikus origin |
sso.testConnection |
kapcsolat tesztelése a böngészős körforduló nélkül (SAML: metaadat-feldolgozás + AuthnRequest felépítése; OIDC: kibocsátófelfedezés), opcionális, még nem mentett képernyőértékekkel |
sso.spMetadata |
az SP EntityDescriptor kibocsátása egy originhez |
sso.setPairingEnabled |
a kézi párosítás engedélyezése/tiltása (meghívókódok, párosítási kulcsok); a letiltás megtagadása, amíg nem létezik működő SSO-kapcsolat, a kizárás ellen véd |
sso.sessionPolicy |
a telepítés eszközhitelesítő adatának maximális élettartamának és tétlenségi időtúllépésének beolvasása (percben; 0 = nincs beállítva) |
sso.setSessionPolicy |
e korlátok beállítása; az eszközellenőrzésnél érvényesülnek, a klienseknek nem hirdetjük őket |
sso.scimRegenerateToken |
a SCIM bearer token előállítása + visszaadása (egyszer) |
Érvényesítési hibakódok
Szekció neve “Érvényesítési hibakódok”A cc_saml_verify_response hibái stabil kódot hordoznak:
| Kód | Jelentés |
|---|---|
signature |
hiányzó/nem megbízható/módosított aláírás, vagy nem engedélyezett algoritmus/transzformáció |
expired |
a NotBefore/NotOnOrAfter tartományon kívül (az eltérésen túl) |
audience |
a célközönség-korlátozás nem minket nevez meg |
destination |
a válasz célállomása nem a mi ACS-ünk |
request_match |
az InResponseTo nem egyezik egy függőben lévő kéréssel, vagy kéretlen, miközben tilos |
issuer |
a kibocsátó nem a beállított IdP |
recipient |
az alany-megerősítés címzettje nem a mi ACS-ünk |
malformed |
XML-/sémaszintű hiba |
status |
az IdP által jelentett állapot nem Success volt |
invalid / internal |
minden más / illesztési hiba |
Adatbázis-felületek
Szekció neve “Adatbázis-felületek”sso_connections(global.db) — fajtánként egy sor, TERVEZÉS SZERINT MUNKATERÜLETEKEN ÁTNYÚLÓ.users.sso_subject+users.sso_issuer— a szolgáltatói alany rögzítése,(issuer, subject)szerint egyedi, részleges indexszel.users.deactivated_at— a SCIM-deaktiválás bélyegzője.- A SCIM bearer token és az OIDC kliens titkos kulcsa a 0600 jogosultságú titkosfájlban él, soha nem az adatbázisban.