Rujukan konfigurasi SSO
Semua yang boleh dikonfigurasikan tentang daftar masuk tunggal, di satu tempat.
Nilai disimpan dalam baris sso_connections bagi global.db (berskop pelayan
mengikut reka bentuk), diedit melalui Tetapan → Pelayan → Daftar masuk
tunggal atau operasi RPC sso.*. Baris yang disimpan ialah satu-satunya
sumber kebenaran — tiada laluan persekitaran CC_SAML_* / CC_OIDC_*
(sambungan yang boleh tiba dari dua tempat ialah sambungan yang skrin tetapan
boleh bercanggah dengannya).
Medan sambungan
Bahagian bertajuk “Medan sambungan”| Medan | Terpakai pada | Lalai | Maksud |
|---|---|---|---|
enabled |
kedua-duanya | mati | log masuk boleh menggunakan sambungan ini |
idpMetadataXml |
SAML | — | XML EntityDescriptor IdP (diperlukan untuk mendayakan) |
spEntityId |
SAML | <origin>/saml |
ID entiti kami, disematkan apabila asalan berbeza |
emailAttribute |
SAML | email |
atribut yang membawa e-mel; NameID berbentuk e-mel ialah sandaran |
displayNameAttribute |
SAML | displayName |
atribut nama paparan |
groupsAttribute |
SAML | groups |
atribut nama kumpulan |
clockSkewSeconds |
SAML | 90 | elaun sisihan pengesahan jangka hayat |
allowIdpInitiated |
SAML | mati | terima Jawapan tidak diminta (tiada InResponseTo) |
wantResponseSigned |
SAML | mati | wajibkan tandatangan pada akar Jawapan (tandatangan penegasan sentiasa diperlukan) |
issuer |
OIDC | — | URL asas penerbit (diperlukan untuk mendayakan) |
clientId |
OIDC | — | id klien awam (diperlukan untuk mendayakan) |
clientSecret |
OIDC | — | klien sulit sahaja; disimpan dalam fail rahsia 0600, tidak pernah dalam pangkalan data — tulis sahaja melalui RPC (sso.getConfig melaporkan clientSecretPresent) |
groupsClaim |
OIDC | groups |
tuntutan yang membawa nama kumpulan |
defaultRole |
kedua-duanya | member |
peranan apabila tiada kumpulan dipetakan — tidak pernah owner |
groupRoleMap |
kedua-duanya | {} |
kumpulan → peranan; pemetaan pemilik ditolak semasa menyimpan |
autoMember |
kedua-duanya | hidup | tambah pengguna secara automatik ke setiap ruang kerja pada log masuk pertama |
allowJit |
kedua-duanya | hidup | peruntukkan pengguna tidak diketahui semasa log masuk |
Konfigurasi proses
Bahagian bertajuk “Konfigurasi proses”Sambungan SSO tidak disemai daripada persekitaran. Satu baki flag proses adalah tentang penyerahan penyemak imbas, bukan baris sambungan:
| Pemboleh ubah / flag | Maksud |
|---|---|
--web-client-url / CC_SERVER_WEB_CLIENT_URL |
asalan panggil balik SSO memantulkan penyemak imbas ke (kelayakan menunggang dalam serpihan URL). Tidak ditetapkan mengekalkan penyerahan pada asalan yang sama. |
URL penerbit itu sendiri mestilah https (http diterima untuk penerbit
loopback localhost, 127.0.0.1 dan ::1 sahaja).
Titik akhir HTTP
Bahagian bertajuk “Titik akhir HTTP”| Titik akhir | Pengesahan | Tujuan |
|---|---|---|
GET /saml/login?relay=… |
tiada (ubah hala) | mulakan log masuk yang dimulakan SP; relay=desktop menyerahkan kepada apl, relay=web-popup postMessage kepada tab sambungan yang menunggu (yang mengisytiharkan client_originnya, dihormati hanya apabila senarai asalan yang dibenarkan mempercayainya) |
POST /saml/acs |
tiada (POST IdP) | konsumer penegasan — mengesahkan, memperuntukkan, menjana |
GET /saml/metadata |
tiada | EntityDescriptor SP kami |
GET /oidc/login?relay=… / GET /oidc/callback |
tiada | perjalanan pergi-balik OIDC; relay=desktop menyerahkan kepada apl, relay=web-popup kepada tab sambungan yang menunggu (konvensyen client_origin yang sama) |
GET /auth/providers |
tiada, CORS * |
kuar skrin sambungan: sambungan SSO yang ditawarkan (id/kind/label) + pairingEnabled |
/scim/v2/Users… |
Bearer (token SCIM) | Pengguna: cipta/dapat/senarai+tapis/PUT/PATCH/DELETE |
/scim/v2/Groups |
Bearer | baca sahaja; tolakan kumpulan menjawab 501 mengikut reka bentuk |
/scim/v2/ServiceProviderConfig |
Bearer | dokumen keupayaan |
Operasi RPC
Bahagian bertajuk “Operasi RPC”Semua operasi sso.* berskop pelayan dan digerbangkan kepada pemilik
pelayan (operator pemasangan itu, ServerAuthority.serverOwner). Memiliki
ruang kerja tidak cukup; pasangan sahaja tidak pernah memberikan operasi itu.
| Operasi | Tujuan |
|---|---|
sso.getConfig |
sambungan yang disimpan bagi sesuatu jenis |
sso.saveConfig |
sahkan, kekalkan dan gunakan secara langsung |
sso.status |
flag didayakan/dikonfigurasikan, kehadiran token SCIM, asalan kanonik |
sso.testConnection |
uji sambungan tanpa perjalanan pergi-balik penyemak imbas (SAML: penghuraian metadata + binaan AuthnRequest; OIDC: penemuan penerbit), dengan nilai pada skrin yang belum disimpan secara pilihan |
sso.spMetadata |
keluarkan EntityDescriptor SP untuk sesuatu asalan |
sso.setPairingEnabled |
benarkan/larang pasangan manual (kod jemputan, kunci pasangan); enggan mematikannya selagi tiada sambungan SSO yang berfungsi melindungi daripada terkunci di luar |
sso.sessionPolicy |
baca umur maksimum kelayakan peranti dan tamat masa melahu pemasangan itu (minit; 0 = tidak ditetapkan) |
sso.setSessionPolicy |
tetapkan had tersebut; dikuatkuasakan pada semakan peranti, tidak dihebahkan kepada klien |
sso.scimRegenerateToken |
jana + kembalikan token pembawa SCIM (sekali) |
Kod ralat pengesahan
Bahagian bertajuk “Kod ralat pengesahan”Kegagalan cc_saml_verify_response membawa kod yang stabil:
| Kod | Maksud |
|---|---|
signature |
tandatangan hilang/tidak dipercayai/diubah suai, atau algoritma/transformasi yang tidak dibenarkan |
expired |
di luar NotBefore/NotOnOrAfter (melebihi sisihan) |
audience |
sekatan audiens tidak menamakan kami |
destination |
destinasi jawapan bukan ACS kami |
request_match |
InResponseTo tidak sepadan dengan permintaan yang belum selesai, atau tidak diminta semasa dilarang |
issuer |
penerbit bukan IdP yang dikonfigurasikan |
recipient |
penerima pengesahan subjek bukan ACS kami |
malformed |
kegagalan pada aras XML/skema |
status |
status yang dilaporkan IdP bukan Success |
invalid / internal |
apa-apa yang lain / kegagalan sempadan |
Permukaan pangkalan data
Bahagian bertajuk “Permukaan pangkalan data”sso_connections(global.db) — satu baris bagi setiap jenis, MERENTAS RUANG KERJA MENGIKUT REKA BENTUK.users.sso_subject+users.sso_issuer— sematan subjek penyedia, unik bagi setiap(issuer, subject)melalui indeks separa.users.deactivated_at— cap nyahaktifan SCIM.- Token pembawa SCIM dan rahsia klien OIDC disimpan dalam fail rahsia 0600, tidak pernah dalam pangkalan data.