Okta SSO- ja SCIM-integraatio yritysten terveys- ja hyvinvointialustalle
Yritysten terveys- ja hyvinvointi-SaaS-alusta tarvitsi tukea suurille organisaatioasiakkaille, jotka vaativat Single Sign-On (SSO) -kirjautumista työntekijöiden saumattomaan käyttöön ja automaattista käyttäjien provisionointia/deprovisionointia SCIMin kautta – ehdoton vaatimus yritysmyynnissä.
Keskustele Projektistasi
Haaste
Yritysasiakkaat kieltäytyivät ottamasta alustaa käyttöön ilman identiteetin federaatiota ja automaattista elinkaarihallintaa:
- SSO-vaatimus — IT-osastot vaativat, että työntekijät kirjautuvat sisään yrityksen identity providerin kautta, eivät erillisillä tunnuksilla
- Manuaalinen käyttöönoton lisätyö — Sadojen työntekijöiden manuaalinen lisääminen uuden organisaation liittyessä vei päiviä järjestelmänvalvojan työtä
- Poistumisen riski — Kun työntekijät poistuivat organisaatiosta, heidän alustatunnuksensa pysyivät aktiivisina viikkoja, mikä aiheutti vaatimustenmukaisuus- ja tietojen käyttöön liittyviä huolenaiheita
- Ryhmäkohtainen pääsy — Eri työntekijäryhmät tarvitsivat erilaisia ominaisuustasoja ja ohjelmapääsyä
- Moniasiakkuuskompleksisuus — Jokaisella yritysasiakkaalla oli oma identity provider -tenanttinsa eri konfiguraatioilla, attribuuttikartoituksilla ja ryhmärakenteilla
- Olemassa olevan todennuksen rinnakkaiselo — Alustalla oli jo sähköposti/salasana- ja OAuth-pohjainen todennus; SSO:n täytyi olla rinnakkain rikkomatta olemassa olevia työnkulkuja
Meidän Ratkaisumme
Toteutimme Okta SSO:n SAML 2.0/OIDC:n kautta todennukseen ja SCIM 2.0:n automaattiseen käyttäjien provisionointiin, deprovisionointiin ja ryhmäsynkronointiin – integroituna olemassa olevaan moniasiakas-backendiin.
Arkkitehtuuri
- Identity Provider: Okta (asiakkaan hallinnoimat tenantit)
- SSO-protokolla: SAML 2.0 (ensisijainen) + OIDC (vaihtoehtoinen)
- Provisionointi: SCIM 2.0 -palvelin, joka on rakennettu alustan backendiin
- Backend: NestJS PostgreSQL:llä ja Redisillä
- Todennuskerros: JWT-pohjaiset istunnot SSO-tietoisella tokenin myöntämisellä
- Järjestelmänvalvojan hallintapaneeli: React-pohjainen tenant-konfiguraatio SSO-asetuksia varten
- Olemassa oleva todennus: Sähköposti/salasana + Google OAuth säilytetty SSO:n rinnalla
---
SSO-toteutus (SAML 2.0 / OIDC)
SAML 2.0 -työnkulku
SP-aloitettu SAML-työnkulku toimii seuraavasti: käyttäjä vierailee kirjautumissivulla ja valitsee SSO:n, syöttää yrityksensä sähköpostidomainin, alusta tunnistaa tenantin Okta-konfiguraation domainista, lähettää AuthnRequest-pyynnön Oktaan, käyttäjä tunnistautuu, Okta palauttaa allekirjoitetun SAML assertionin, alusta validoi assertionin ja luo istunnon JWT-tokeneilla.
Tenanttikohtainen konfiguraatio
Kunkin tenantin SSO on konfiguroitu heidän identity providerinsä SSO URL:llä, entity ID:llä, X.509-sertifikaatilla allekirjoituksen validointiin, sekä alustan SP entity ID:llä, assertion consumer service URL:llä ja attribuuttikartoituksilla identity providerin profiilikentistä alustan käyttäjäkenttiin.
OIDC-vaihtoehto
Asiakkaiden, jotka suosivat OIDC:tä SAMLin sijaan, alusta tukee Authorization Code -työnkulkua PKCE:n kanssa, käyttäen samaa attribuuttikartoitusta OIDC claimien kautta ja ID token -validointia JWKS:n kanssa.
Moniasiakas-SSO-reititys
Alusta reitittää käyttäjät oikealle identity providerille heidän sähköpostidomaininsa perusteella. Kun käyttäjä syöttää sähköpostinsa, alusta tarkistaa domainin tenantin SSO-konfiguraatioita vastaan. Jos SSO on konfiguroitu, käyttäjä ohjataan organisaationsa Okta-tenanttiin. Jos ei, he palaavat sähköposti/salasana- tai Google OAuth -kirjautumiseen. Vanity URL:t ovat myös tuettuja suoraan SSO-käyttöön. ---
SCIM 2.0 -toteutus
SCIM-palvelin
Alusta tarjoaa SCIM 2.0 -yhteensopivan API:n, jota Okta kutsuu käyttäjien ja ryhmien hallintaan. API tukee täydellisiä käyttäjän elinkaaren toimintoja (luo, lue, päivitä, poista käytöstä, poista), ryhmän CRUD-toimintoja jäsenyyden hallinnalla ja standardeja SCIM-löytöpisteitä ominaisuuksille, skeemoille ja resurssityypeille.
Käyttäjän elinkaari SCIMin kautta
Provisionointi:Kun järjestelmänvalvoja määrittää käyttäjän alustan sovellukseen Oktanissa, Okta lähettää luomispyynnön SCIM API:lle. Alusta luo käyttäjätilin tenant-yhteyden kanssa, merkitsee heidät aktiivisiksi ja SSO-provisionoiduiksi, ja käyttäjä voi välittömästi kirjautua sisään SSO:n kautta.
Profiilipäivitykset:Kun järjestelmänvalvoja päivittää käyttäjän profiilia Oktanissa, muutokset välitetään alustalle SCIMin kautta. Jos osastomuutoksia tapahtuu, ryhmäjäsenyys arvioidaan uudelleen automaattisesti.
Deprovisionointi:Kun käyttäjä poistetaan sovelluksesta Oktanissa, alusta deaktivoi tilin – peruuttaen kaikki aktiiviset istunnot välittömästi, estäen lisäkirjautumiset, säilyttäen tiedot säilytyskäytännön mukaisesti ja vapauttaen lisenssipaikan.
Uudelleenaktivointi:Käyttäjän uudelleenmääritys Oktanissa aktivoi hänen tilinsä uudelleen kaikki historialliset tiedot säilyttäen.
Ryhmäsynkronointi
Okta-ryhmät vastaavat alustan rooleja ja ohjelmatasoja – halliten pääsyä eri ominaisuustasoille, järjestelmänvalvojan ominaisuuksiin, erikoistuneisiin hallintapaneeleihin ja eksklusiivisiin ohjelmiin. Ryhmäjäsenyyden muutokset Oktanissa välitetään SCIMin kautta ja ne näkyvät reaaliaikaisesti ilman uudelleenkirjautumista. ---
Turvallisuus ja todennus
Tokenin myöntäminen SSO:n jälkeen
SAML assertionin validointi jälkeen alusta myöntää tenant-kohtaisia JWT:tä, jotka sisältävät käyttäjän identiteetin, organisaation, roolit (jotka on johdettu SCIM-ryhmäjäsenyydestä), todennusmenetelmän ja identity providerin – mahdollistaen tarkasteluerottelun SSO:n ja muiden todennusmenetelmien välillä.
Istunnonhallinta
- SSO-istunnot noudattavat Oktan istunnon elinkaarta
- Single Logout (SLO) tuettu istunnon päättymiseen, kun käyttäjä kirjautuu ulos Oktanista
- Back-channel logout webhook välitöntä istunnon peruutusta varten
- SCIM-deaktivointi peruuttaa kaikki aktiiviset istunnot 60 sekunnin kuluessa
Turvallisuusvalvonnat
- SAML-vastaussignatuurin validointi tenantin X.509-sertifikaattia vastaan
- Assertionin uusintatoiston estäminen kertakäyttöisen seurannan avulla
- Kellon virheen sieto assertionin aikaleiman validointiin
- Yleisörajoituksen validointi
- Salatut assertionit tuettuja arkaluonteisissa käyttöönotoissa
- SCIM-rajapään todennus tenanttikohtaisilla Bearer tokeneilla
- Rate limiting SCIM-rajapinnassa
---
Järjestelmänvalvojan konfigurointipaneeli
Tenantin SSO-asetukset
Järjestelmänvalvojan hallintapaneeli tarjoaa itsepalveluasetusvirran:
- Protokollan valinta — Valitse SAML 2.0 tai OIDC
- Metadatan lataus — Lataa IdP-metadatan XML (täyttää konfiguraation automaattisesti)
- Attribuuttikartoitus — Kartoita identity providerin profiilikentät alustan käyttäjäkenttiin
- Domainin vahvistus — Vahvista sähköpostidomainin/domainien omistus SSO-reititystä varten
- Testiyhteys — Aloita SSO-testikirjautuminen ennen kaikkien käyttäjien aktivointia
- SCIM-asetukset — Luo Bearer token SCIM-provisionoinnin konfiguraatiota varten
- Ryhmäkartoitus — Kartoita identity providerin ryhmät alustan rooleihin ja tasoihin
Hallintapaneeli tarjoaa myös ladattavan SP-metadatan helppoa identity provider -sovelluksen konfiguraatiota varten. ---
Tärkeimmät ominaisuudet
- SAML 2.0 + OIDC-tuki — Joustava protokollan valinta per tenantti
- SCIM 2.0 -provisionointi — Automaattinen käyttäjien luominen, päivitykset ja deaktivointi
- Ryhmä-rooli-kartoitus — Identity providerin ryhmät hallitsevat alustan pääsytasoja ja ohjelmia
- Välitön deprovisionointi — SCIM-deaktivointi peruuttaa pääsyn 60 sekunnin kuluessa
- Moniasiakas-SSO-reititys — Sähköpostidomainiin perustuva IdP-löytäminen eri tenanttien välillä
- Rinnakkaiset todennusmenetelmät — SSO sähköposti/salasanan ja Google OAuthin rinnalla
- Itsepalveluasetukset — Järjestelmänvalvojan hallintapaneeli SSO-konfigurointiin ilman teknistä tukea
- Single Logout — Alustan istunto päättyy, kun käyttäjä kirjautuu ulos identity providerista
- Tarkastusjälki — Jokainen SCIM-toiminto ja SSO-tapahtuma kirjataan vaatimustenmukaisuuden vuoksi
- SCIM-ryhmäsynkronointi — Reaaliaikaiset rooli- ja ohjelmamuutokset identity providerin ryhmäjäsenyydestä
Tulokset
Teknologiapino
caseStudyDetail.more Tapaustutkimukset
Tutustu lisää teknisiin toteutuksiimme
AI-pohjainen laskujen käsittely OCR:n ja QuickBooks-integraation avulla
Keskisuuri yritys, joka käsitteli satoja toimittajalaskuja kuukausittain, halusi poistaa manuaalisen tiedonsyötön poimimalla laskutiedot automaattisesti AI/OCR:n avulla ja synkronoimalla ne suoraan QuickBooks-järjestelmään kirjanpitoa ja maksujen seurantaa varten.
Asiakaspuolen mainosten upotus (CSAI) SCTE-35-merkkien jäsennyksellä ja monialustaisen soittimen integroinnilla
Videoiden suoratoistoalustan piti toteuttaa Client-Side Ad Insertion (CSAI) verkko-, mobiili- ja Connected TV -sovellusten yli — mahdollistaen personoidut, laitekohtaiset mainoskokemukset täydellä mainosinteraktion tuella (klikkaavat peittokuvat, kumppanibannerit, ohituspainikkeet), joita server-side insertion ei voi tarjota.
Valmis Muuttamaan Liiketoimintaasi?
Keskustellaan siitä, miten voimme soveltaa vastaavia ratkaisuja haasteisiisi.