oidc

OIDC znamená OpenID Connect, čo je moderný protokol pre autentifikáciu a autorizáciu používateľov v aplikáciách. OIDC je postavený na štandarde OAuth 2.0 a rozširuje ho o možnosti bezpečnej autentifikácie používateľov, pričom poskytuje používateľské informácie prostredníctvom štandardizovaného formátu.

Ako funguje OIDC:

1.Základ na OAuth 2.0:

•OIDC pridáva autentifikáciu do existujúceho protokolu OAuth 2.0, ktorý sa primárne používa na autorizáciu prístupu k zdrojom.

2.ID Token:

•Pri autentifikácii server vydáva špeciálny token nazývaný ID Token, ktorý obsahuje informácie o používateľovi (napr. meno, e-mail) v kódovanom formáte (JSON Web Token – JWT).

3.Princípy prístupu:

•Používatelia sa autentifikujú prostredníctvom OIDC poskytovateľa (napr. Google, Microsoft Azure AD).

•Po úspešnej autentifikácii aplikácia dostane overený token, ktorý môže použiť na správu relácie používateľa.

Komponenty OIDC:

1.Relying Party (RP):

•Aplikácia alebo služba, ktorá používa OIDC na autentifikáciu používateľov (napr. webová alebo mobilná aplikácia).

2.OpenID Provider (OP):

•Poskytovateľ identity, ktorý spravuje autentifikáciu a vydáva ID Token (napr. Google, Okta, Auth0).

3.ID Token:

•Obsahuje informácie o autentifikovanom používateľovi, ktoré sú podpísané poskytovateľom identity.

4.Scopes:

•OIDC používa scopes, aby určil, aké informácie o používateľovi môže aplikácia požadovať (napr. openid, email, profile).

Výhody OIDC:

1.Jednoduchosť:

•OIDC ponúka jednoduchý spôsob autentifikácie bez potreby spravovať používateľské heslá.

2.Bezpečnosť:

•Používa moderné bezpečnostné štandardy, ako je šifrovanie a podpisovanie tokenov (JWT), aby sa zabezpečila integrita údajov.

3.Interoperabilita:

•Podporuje širokú škálu platforiem a zariadení vrátane webových, mobilných a desktopových aplikácií.

4.Flexibilita:

•Možnosť využívať rôznych poskytovateľov identity (napr. Google, Facebook, alebo vlastný OIDC server).

Nevýhody OIDC:

1.Zložitosť implementácie:

•Nastavenie a integrácia OIDC môže byť zložité, najmä ak aplikácia vyžaduje pokročilé nastavenia.

2.Závislosť na poskytovateľovi:

•Aplikácia je závislá od dostupnosti a spoľahlivosti poskytovateľa identity.

3.Bezpečnostné riziká:

•Nesprávna implementácia môže viesť k bezpečnostným problémom, ako je odcudzenie tokenov.

Typické použitie OIDC:

1.Jednotné prihlásenie (SSO):

•Používateľ sa autentifikuje raz a získa prístup k viacerým aplikáciám alebo službám.

2.Mobilné aplikácie:

•Použitie OIDC na jednoduchú a bezpečnú autentifikáciu v mobilných aplikáciách.

3.Webové aplikácie:

•Autentifikácia používateľov pomocou externých poskytovateľov identity (napr. prihlásenie cez Google alebo Facebook).

Porovnanie OIDC a OAuth 2.0:

Funkcia OAuth 2.0 OIDC

Primárne použitie Autorizácia (prístup k zdrojom) | Autentifikácia a autorizácia

Tokeny Access Token | Access Token + ID Token

Informácie o používateľovi Nie je štandardizované | Poskytuje ID Token s používateľskými údajmi

Štandardizácia údajov Chýba | Používa špecifikáciu na získanie informácií o používateľovi

Príklad toku OIDC (Authorization Code Flow):

1.Používateľ navštívi aplikáciu a zvolí možnosť prihlásenia cez OIDC poskytovateľa.

2.Aplikácia presmeruje používateľa na stránku poskytovateľa identity.

3.Používateľ sa autentifikuje u poskytovateľa.

4.Poskytovateľ vydá Authorization Code, ktorý aplikácia vymení za ID Token a Access Token.

5.Aplikácia overí tokeny a poskytne používateľovi prístup.

OIDC je dnes jedným z najpoužívanejších protokolov pre bezpečnú autentifikáciu používateľov, vďaka čomu sa stal základom mnohých moderných aplikácií a služieb.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top