This is the Trace Id: 0cdef736cd229387eba6b5f650d34d7a
Preskoči na glavni sadržaj
Microsoft Security

Što je to OIDC?

Saznajte više o OpenID Connect (OIDC) protokolu za provjeru autentičnosti koji provjerava identitete korisnika prilikom prijave radi pristupa digitalnim resursima.

Definiranje protokola OpenID Connect (OIDC)

OpenID Connect (OIDC) protokol je za provjeru autentičnosti identiteta koji predstavlja proširenje otvorene autorizacije (OAuth) 2.0 radi standardizacije postupka provjere autentičnosti i autorizacije korisnika prilikom prijave radi pristupa digitalnim servisima. OIDC pruža provjeru autentičnosti, što znači provjeru jesu li korisnici oni za koje se predstavljaju. OAuth 2.0 autorizira kojim sustavima je tim korisnicima dopušten pristup. OAuth 2.0 obično se koristi za omogućavanje dvjema nepovezanim aplikacijama dijeljenje informacija bez ugrožavanja korisničkih podataka. Mnogi, primjerice, umjesto stvaranja novog korisničkog imena i lozinke koriste svoje račune za e-poštu ili račune društvenih mreža za prijavu na web-mjesto treće strane. OIDC se koristi i za pružanje jedinstvene prijave. Tvrtke ili ustanove mogu koristiti siguran sustav upravljanja identitetima i pristupom (IAM) kao što je Microsoft Entra ID (nekadašnji Azure Active Directory) kao primarni alat za provjeru autentičnosti identiteta, a zatim koristiti OIDC da bi tu provjeru autentičnosti proslijedile drugim aplikacijama. Na taj se način korisnici moraju prijaviti samo jedanput pomoću jednog korisničkog imena i lozinke da bi pristupili većem broju aplikacija.

 

 

Ključne komponente OIDC protokola

U OIDC-u postoji šest primarnih komponenti:

  • Provjera autentičnosti je postupak provjere je li korisnik ono za što se predstavlja.

  • Klijent je softver poput web-mjesta ili aplikacije koji traži tokene koji se koriste za provjeru autentičnosti korisnika ili pristup resursu.

  • Korisničke strane su aplikacije koje koriste davatelje OpenID-a za provjeru autentičnosti korisnika.  

  • Tokeni identiteta sadrže podatke o identitetu, uključujući ishod postupka provjere autentičnosti, identifikator za korisnika te informacije o načinu i vremenu provjere autentičnosti korisnika. 

  • Davatelji OpenID-a aplikacije su za koje korisnik već ima račun. Njihova je uloga u OIDC-u provjera autentičnosti korisnika i prosljeđivanje te informacije korisničkoj strani.

  • Korisnici su osobe ili servisi koji žele pristupiti aplikaciji bez stvaranja novog računa ili navođenja korisničkog imena i lozinke. 

 

Kako funkcionira OIDC provjera autentičnosti?

OIDC provjera autentičnosti funkcionira tako da dopušta korisnicima da se prijave na jednu aplikaciju i dobiju pristup drugoj. Ako, primjerice, korisnik želi otvoriti račun na stranici s vijestima, možda će imati opciju koristiti Facebook za stvaranje svog računa umjesto stvaranja novog računa. Ako odaberu Facebook, koriste OIDC provjeru autentičnosti. Facebook, koji se naziva davatelj OpenID-a, upravlja postupkom provjere autentičnosti i pribavlja korisnikov pristanak za davanje određenih informacija poput korisničkog profila web-mjestu vijesti, koje se smatra korisničkom stranom. 

ID tokeni 

Davatelj OpenID-a koristi ID tokene za prijenos rezultata provjere autentičnosti i svih relevantnih informacija korisničkoj strani. Primjeri vrste podataka koji se šalju obuhvaćaju ID, adresu e-pošte i ime.

Opsezi

Opsezi definiraju što korisnik može učiniti sa svojim pristupom. OIDC nudi standardne opsege koji definiraju stavke poput korisničke strane za koju je token generiran, kada je token generiran, kada će token isteći i jačina šifriranja koja se koristi za provjeru autentičnosti korisnika. 

Uobičajeni proces OIDC provjere autentičnosti obuhvaća sljedeće korake:

  1. Korisnik ide na aplikaciju kojoj želi pristupiti (korisnička strana).
  2. Korisnik upisuje korisničko ime i lozinku.
  3. Korisnička strana šalje zahtjev davatelju OpenID-a.
  4. Davatelj OpenID-a provjerava valjanost korisničkih vjerodajnica i dobiva autorizaciju.
  5. Davatelj OpenID-a šalje token identiteta i često token za pristup korisničkoj strani.
  6. Korisnička strana šalje pristupni token na korisnikov uređaj.
  7. Korisnik dobiva pristup na temelju informacija navedenih u pristupnom tokenu i korisničkoj strani. 

Što su tokovi OIDC-a?

Tokovi OIDC-a definiraju način na koji se tokeni traže i isporučuju korisničkoj strani. Nekoliko primjera:

  • Tijekovi autorizacije protokola OIDC: Davatelj standarda OpenID šalje jedinstven kod pouzdanoj strani. Pouzdana strana zatim šalje jedinstven kod natrag davatelju standarda OpenID u zamjenu za token. Ta se metoda koristi tako da davatelj OpenID-a može provjeriti korisničku stranu prije slanja tokena. Preglednik ne vidi token u ovoj metodi, što pridonosi njegovoj sigurnosti.

  • Tijekovi autorizacije protokola OIDC s proširenjem PKCE: Ovaj je tijek isti kao i tijek autorizacije protokola OIDC, osim što upotrebljava javni ključ za proširenje za razmjenu koda (PKCE) za slanje komunikacije u obliku raspršivanja. Time se smanjuje vjerojatnost presretanja tokena.

  • Vjerodajnice klijenta: Ovaj tijek omogućuje pristup API-jima za web upotrebom identiteta same aplikacije. Obično se upotrebljava za komunikaciju između poslužitelja i dohvaćanje automatiziranih skripti za koje nije potrebna interakcija korisnika.

  • Kod uređaja: Ovaj tijek omogućuje korisnicima prijavu i pristup API-jima utemeljenim na webu na uređajima povezanim s internetom koji nemaju preglednike ili imaju loše iskustvo tipkovnice kao što je pametni TV. 

Ne preporučuju se dodatni tijekovi kao što je OIDC implicitni tijek, koji je namijenjen aplikacijama utemeljenim na pregledniku jer predstavljaju sigurnosni rizik.

OIDC u odnosu na OAuth 2.0

OIDC je izgrađen na temelju protokola OAuth 2.0 za dodavanje provjere autentičnosti. Najprije je razvijen protokol OAuth 2.0, a zatim je dodan OIDC da bi se poboljšale njegove mogućnosti. Razlika između ova dva je u tome što OAuth 2.0 pruža autorizaciju, dok OIDC pruža provjeru autentičnosti. OAuth 2.0 korisnicima omogućuje pristup korisničkoj strani pomoću računa kod davatelja OpenID-a, a OIDC davatelju OpenID-a omogućuje da proslijedi korisnički profil korisničkoj strani. OIDC također omogućuje organizacijama da svojim korisnicima ponude jedinstvenu prijavu.

 

 

Prednosti OIDC provjere autentičnosti

Smanjenjem broja računa koje korisnici trebaju za pristup aplikacijama, OIDC nudi nekoliko pogodnosti pojedincima i organizacijama:

Smanjuje rizik od krađe lozinki

Kada korisnici moraju koristiti više lozinki za pristup aplikacijama koje su im potrebne za posao i osobni život, često odabiru lozinke koje se lako pamte, kao što je lozinka1234!, i koriste istu na nekoliko računa. Time se povećava rizik da će zlonamjeran akter pogoditi lozinku. A kada znaju lozinku za jedan račun, možda će moći pristupiti i drugim računima. Smanjenjem broja lozinki koje netko mora zapamtiti, povećava se vjerojatnost da će koristiti jaču i sigurniju lozinku.

Poboljšava sigurnosne kontrole

Centraliziranjem provjere autentičnosti u jednoj aplikaciji, organizacije također mogu zaštititi pristup u više aplikacija uz jake kontrole pristupa. OIDC podržava dvostruku i višestruku provjeru autentičnosti, koje zahtijevaju od korisnika da potvrde svoj identitet pomoću barem dvoje od sljedećeg

  • Nešto što korisnik zna, obično lozinka.

  • Nešto što korisnik ima, primjerice pouzdani uređaj ili token koji se ne može jednostavno duplicirati. 

  • Nešto što obilježava korisnika, npr. otisak prsta ili skeniranje lica.

Višestruka provjera autentičnosti dokazana je metoda za smanjenje kompromitiranja računa. Tvrtke ili ustanove mogu koristiti i OIDC za primjenu drugih sigurnosnih mjera, poput upravljanja povlaštenim pristupom, zaštite lozinkom, sigurnosne prijave ili zaštite identiteta na više aplikacija. 

Pojednostavnjuje korisničko sučelje

Prijava na više računa tijekom dana može oduzimati mnogo vremena i frustrirati korisnike. Osim toga, ako izgube ili zaborave lozinku, njezino ponovno postavljanje može dodatno poremetiti produktivnost. Tvrtke koje koriste OIDC za pružanje jedinstvene prijave svojim zaposlenicima osiguravaju da njihova radna snaga troši više vremena na produktivan rad umjesto da pokušava dobiti pristup aplikacijama. Tvrtke i ustanove također povećavaju vjerojatnost da će se korisnici prijaviti i koristiti njihove usluge ako dopuste pojedincima da koriste svoj Microsoft, Facebook ili Google račun za prijavu. 

Standardizira provjeru autentičnosti

Zaklada OpenID Foundation koja obuhvaća tvrtke visokog profila kao što su Microsoft i Google, izgradila je OIDC. Osmišljen je tako da bude interoperabilan i podržava mnoge platforme i biblioteke, uključujući iOS, Android, Microsoft Windows i glavne pružatelje usluga oblaka i identiteta.

Pojednostavljuje upravljanje identitetom

Tvrtke ili ustanove koje koriste OIDC za pružanje jedinstvene prijave zaposlenicima i partnerima mogu smanjiti broj rješenja za upravljanje identitetima kojima moraju upravljati. To pojednostavnjuje praćenje promjena dozvola i administratorima omogućuje korištenje jednog sučelja za primjenu pravilnika o pristupu i pravila u više aplikacija. Tvrtke koje koriste OIDC da bi korisnicima omogućile prijavu u svoje aplikacije pomoću davatelja OpenID-a smanjuju broj identiteta kojima moraju upravljati. 

Primjeri i slučajevi korištenja OIDC-a

Mnoge tvrtke ili ustanove koriste OIDC da bi omogućile sigurnu provjeru autentičnosti u svim web i mobilnim aplikacijama. Evo nekoliko primjera:

  • Kada se korisnik registrira za račun za Spotify, ponuđene su mu tri mogućnosti: registracija uz Facebook, registracija uz Google, registracija pomoću adrese e-pošte. Korisnici koji se registriraju putem servisa Facebook ili Google upotrebljavaju OIDC za stvaranje računa. Bit će preusmjereni na davatelja OpenID-a kojeg su odabrali (Google ili Facebook), a zatim će nakon prijave davatelj OpenID-a poslati usluzi Spotify osnovne pojedinosti o profilu. Korisnik ne mora stvoriti novi račun za Spotify, a njegove lozinke ostaju zaštićene.

  • LinkedIn korisnicima omogućuje i stvaranje računa pomoću Google računa umjesto stvaranja zasebnog računa za LinkedIn. 

  • Tvrtka želi omogućiti jedinstvenu prijavu zaposlenicima kojima je potreban pristup sustavima Microsoft Office 365, Salesforce, Box i Workday da bi obavljali svoj posao. Umjesto da zaposlenici moraju stvoriti zaseban račun za svaku od tih aplikacija, tvrtka koristi OIDC da bi omogućila pristup za sve četiri aplikacije. Zaposlenici stvaraju jedan račun i svaki put kada se prijave, dobit će pristup svim aplikacijama koje su im potrebne za rad.  

Implementiranje OIDC-a za sigurnu provjeru autentičnosti

OIDC nudi protokol za provjeru autentičnosti za pojednostavnjivanje iskustva prijave za korisnike i poboljšanje sigurnosti. To je odlično rješenje za tvrtke koje žele potaknuti korisnike da se registriraju za njihove svoje servise bez potrebe za upravljanjem računima. Također tvrtkama i ustanovama omogućuje da svojim zaposlenicima i drugim korisnicima ponude sigurnu jedinstvenu prijavu na više aplikacija. Tvrtke ili ustanove mogu koristiti rješenja za identitet i pristup koja podržavaju OIDC, kao što je Microsoft Entra, za upravljanje svim identitetima i sigurnosnim pravilnicima za provjeru autentičnosti na jednom mjestu.

   

 

Saznajte više o rješenju Microsoft Security

Najčešća pitanja

  • OIDC je protokol za provjeru autentičnosti identiteta koji funkcionira s protokolom OAuth 2.0 radi standardizacije postupka provjere autentičnosti i autorizacije korisnika prilikom prijave radi pristupa digitalnim servisima. OIDC pruža provjeru autentičnosti, što znači provjeru jesu li korisnici oni za koje se predstavljaju. OAuth 2.0 autorizira kojim sustavima je tim korisnicima dopušten pristup. OIDC i OAuth 2.0 obično se koriste kako bi dvije nepovezane aplikacije mogle dijeliti informacije bez ugrožavanja korisničkih podataka. 

  • OIDC i jezik za označavanje sigurnosnih tvrdnji (SAML) protokoli su za provjeru autentičnosti identiteta koji korisnicima omogućuju da se jednom prijave i sigurno pristupaju više aplikacija. SAML je stariji protokol koji je široko prihvaćen za jedinstvenu prijavu. Prenosi podatke u XML obliku. OIDC je noviji protokol koji koristi oblik JSON za prijenos korisničkih podataka. OIDC dobiva na popularnosti jer ga je lakše implementirati od SAML-a i bolje radi s mobilnim aplikacijama.

  • OIDC je kratica za OpenID Connect Protocol, odnosno protokol za provjeru autentičnosti identiteta koji se koristi za omogućavanje dvjema nepovezanim aplikacijama da dijele podatke o korisničkom profilu bez ugrožavanja korisničkih vjerodajnica.

  • OIDC je izgrađen na temelju protokola OAuth 2.0 za dodavanje provjere autentičnosti. Najprije je razvijen protokol OAuth 2.0, a zatim je dodan OIDC da bi se poboljšale njegove mogućnosti. Razlika između ova dva je u tome što OAuth 2.0 pruža autorizaciju, dok OIDC pruža provjeru autentičnosti. OAuth 2.0 korisnicima omogućuje pristup korisničkoj strani pomoću računa kod davatelja OpenID-a, a OIDC davatelju OpenID-a omogućuje da proslijedi korisnički profil korisničkoj strani. Ta funkcija tvrtkama i ustanovama omogućuje i jedinstvenu prijavu svojih korisnika. OAuth 2.0 i OIDC tijekovi slični su osim što koriste malo drukčiju terminologiju. 

    Uobičajeni OAuth 2.0 tijek ima sljedeće korake:

    1. Korisnik prelazi u aplikaciju kojoj želi pristupiti (poslužitelj resursa).
    2. Poslužitelj resursa preusmjerava korisnika na aplikaciju u kojoj ima račun (klijent).
    3. Korisnik se prijavljuje pomoću vjerodajnica za klijenta.
    4. Klijent provjerava valjanost korisnikova pristupa.
    5. Klijent šalje pristupni token poslužitelju resursa.
    6. Poslužitelj resursa daje korisniku pristup.

    Uobičajeni OIDC tijek ima sljedeće korake:

    1. Korisnik ide na aplikaciju kojoj želi pristupiti (korisnička strana).
    2. Korisnik upisuje korisničko ime i lozinku.
    3. Korisnička strana šalje zahtjev davatelju OpenID-a.
    4. Davatelj OpenID-a provjerava valjanost korisničkih vjerodajnica i dobiva autorizaciju.
    5. Davatelj OpenID-a šalje token identiteta i često token za pristup korisničkoj strani.
    6. Korisnička strana šalje pristupni token na korisnikov uređaj.
    7. Korisnik dobiva pristup na temelju informacija navedenih u pristupnom tokenu i korisničkoj strani. 
  • Davatelj OpenID-a koristi ID tokene za prijenos rezultata provjere autentičnosti i svih relevantnih podataka u aplikaciju korisničke strane. Primjeri vrste podataka koji se šalju obuhvaćaju ID, adresu e-pošte i ime.

Pratite Microsoft Security