Sigurnost

Microsoft Entra - Zajednički naziv za sve sustave za identitete i kontrolu pristupa

Igor Pavleković utorak, 27. rujna 2022. u 08:45

Identitet označava individualnu karakteristiku ili osobinu po kojoj smo prepoznatljivi, a koja nam omogućuje pristup određenim resursima, poput pristupa knjižnici putem iskaznice ili dokazivanje sposobnosti vožnje automobila vozačkom dozvolom. U digitalnom svijetu stvari su kompleksnije, obzirom da imamo nekoliko desetaka različitih identiteta za niz servisa koje svakodnevno koristimo. Sigurnost osobnog identiteta je Ahilova peta sigurnosti računalnih sustava pa zaštitom identiteta podižemo i sigurnost cjelokupnog sustava

U interakciji uživo navikli smo na različite oblike dokazivanja identiteta, kao što su osobna iskaznica putovnica, OIB ili članske iskaznice. Taj fizički komad informacije, najčešće u obliku kartice, nedvojbeno je povezan s točno određenom osobom te se vjerodostojnost utvrđuje dodatnom verifikacijom, često usporedbom fotografije i osobe. Nakon uspješne provjere i verifikacije identificirali smo osobu i potvrdili ispravnost prezentiranog dokumenta te možemo nastaviti s provjerom pristupa (što osoba može, odnosno smije), poput prelaska granice, vožnje automobilom i slično. Navedena radnja se može i ne mora zabilježiti u zapis, kao što je, na primjer, pečat u putovnici prilikom prelaska granice.

U digitalnom svijetu navedeni proces poznat je kao AAA, odnosno Authentication, Authorisation and Accounting. Autentikacija je utvrđivanje identiteta i provjera njegove ispravnosti, autorizacija je provjera prava na radnju koja se pokušava napraviti, dok je accounting zapisivanje u log neke aktivnosti koju je taj identitet poduzeo. Proces autentikacije se dešava rjeđe, primjerice prilikom prijave na računalo ili otključavanjem mobilnog telefona. Autorizacija se dešava prilikom svake radnje na tom računalu ili datotečnom sustavu, dok accounting ovisi o tome koliko se informacija želi upisivati u neki oblik audit loga. Osnova autentikacijskog procesa je identitet kojem se prvo utvrđuje ispravnost.

U današnje vrijeme se utvrđivanje identiteta, odnosno provjera autentičnosti, zamjenjuje naprednijim oblicima od jednostavne provjere korisničkog imena i lozinke, kao što su dodavanje dodatnih faktora provjere (npr. jednokratne lozinke ili biometrijske karakteristike osobe) ili posebni sigurnosni uređaji. Dodatno, upotrebom cloud tehnologija, korištenjem strojnog učenja i umjetne inteligencije utvrđivanje identiteta postaje jednostavnije, ali i sigurnije. Naime, u realnom se vremenu utvrđuju fizička lokacija korisnika, zdravlje uređaja, uzorak korištenja računalnih resursa i slično, a svako detektirano odstupanje izaziva definiranu akciju.

Promjenom paradigme pristupa računalnim sustavima, dostupnosti cloud tehnologija, korištenjem različitih vrsta uređaja za pristup (pa čak i vlastitih), kompanije su počele primjenjivati novi sigurnosni model naziva Zero Trust. - tri su osnovna principa na kojima je on zasnovan: eksplicitno provjeri, koristi najnižu razinu privilegiranog pristupa te uvijek pretpostavi provalu u sustav.

Time se postiže visoka razina računalne sigurnosti, zato što se identiteti i njihova prava kontinuirano provjeravaju, dodjeljuju se minimalna prava i privilegije, te se rade mali radijusi napada, odnosno kontinuirano se provjerava, minimizira i ograđuje područje primjene. No, problem je i dalje na identitetu, odnosno njegovoj provjeri, jer su identiteti uvijek bili najslabija karika u lancu sigurnosti. Preuzimanje nečijeg digitalnog identiteta ruši sve privilegije i prava koja taj identitet nosi, a u današnjem svijetu svatko od nas ima nekoliko identiteta – od poslovnih i onih za pristup privatnim e-mailovima, do društvenih mreža, web trgovina ili članstva u digitalnim knjižnicama.

Sustavi pohrane identiteta te sustavi autorizacije pristupa u Microsoftu su se počeli razvijati pojavom poslužiteljskih operacijskih sustava. Active Directory kakvog danas poznajemo pojavio se 1999. godine izdanjem Microsoft Windows 2000 Server operativnog sustava i od tad je tržišni lider u segmentu. Pojavom računalstva u cloudu bilo je nužno modernizirati pristup tom imeničkom sustavu te je predstavljen Azure Active Directory (AAD), koji je današnja okosnica usluga poput Microsoft Azure, Microsoft 365 i ostalih Microsoft servisa, kao i standard identiteta u poslovnom okruženju.

Microsoft Entra

Današnji digitalni svijet se svakodnevno širi dodavanjem novih usluga, aplikacija i sustava. Sve su češći napadi na računalne sustave sve sofisticiranijim tehnologijama i sve su brojniji identiteti koji se međusobno preklapaju i time kompliciraju zaštitu sustava. Kao odgovor na sve navedeno, Microsoft je predstavio Entru.

Radi se o zajedničkom nazivu za sve sustave Microsofta za identitete i kontrolu pristupa. Svrha Entre temelji se na četiri principa. Prvi je osiguravanje pristupa svim resursima koje korisnik može koristiti na siguran način unutar organizacije. Drugi princip vezan je uz pouzdano osiguranje svakog identiteta (zaposlenika, korisnika, partnera, aplikacija, uređaja i ostalih workloada) u svakom poslovnom okruženju na siguran način. Treći princip govori o otkrivanju i dodjeli točno potrebne razine prava pristupa, upravljanja životnim ciklusom prava pristupa, te implementacije najniže privilegije pristupa za svaki identitet. Četvrti princip je pojednostavljenje iskustva korištenja uz osiguravanje visoke razine produktivnosti korisnika pomoću jednostavnije prijave, odnosno provjere autentičnosti identiteta, korištenjem inteligentne sigurnosti i unificirane administracije.

Microsoft Entra nije preimenovani Azure Active Directory, već AAD postaje dio Microsoft Entre kao jedna od njene tri komponente.

Azure Active Directory

Pojavom cloud usluga Microsofta, u samim počecima Business Productivity Online Suitea (BPOS) koji je preteča današnjeg seta servisa Microsoft 365, odnosno Microsoft Azure platforme, pojavila se potreba za skalabilnim sustavom upravljanja identitetima u cloudu – tako je nastao Azure Active Directory.

Prema analitičkim kompanijama, danas je AAD lider u segmentu upravljanja identitetima i pristupom (eng. Identity and Access Management – IAM). Njegova ključna prednost je što osigurava kompanijama svih veličina potpuno upravljanje identitetima, bilo da su bazirani na on-prem Active Directory sustavu, u cloudu ili je riječ o identitetima otvorenih standarda ili društvenih mreža. AAD osigurava pristup resursima i podacima korištenjem jakih oblika autentikacije te definiranjem pristupnih politika temeljenih na procjeni rizika, bez kompromitiranja korisničkog iskustva pristupa. Jednostavnim sustavom provjere identiteta na siguran način omogućen je pristup u multicloud okruženja, bez degradacije produktivnosti korisnika.  Također, važna komponenta sustava je centralizirano upravljanje svim identitetima, ali i aplikacijama (bez obzira jesu li smještene u cloudu  u vidu neke SaaS aplikacije ili na on-prem sustavu kao neka stara aplikacija koja nije namijenjena radu u cloudu). Upravljanje identitetima, odnosno Identity Governance, osigurava automatsko upravljanje kako bi isključivo autorizirani korisnici imali pristup do potrebnih resursa.

Način rada AAD uvjetovanog pristupa
Način rada AAD uvjetovanog pristupa

Integralan segment AAD-a je sustav multifaktorske autentikacije koja može biti jednostavna (npr. SMS poruka s jednokratnom lozinkom) ili kompleksna, poput korištenja softverskih ili hardverskih tokena za jednokratne lozinke. Multifaktorska autentikacija utire put sustavu bez korištenja lozinki implementacijom Microsoft Authenticator aplikacije, Windows Hello tehnologije ili korištenjem FIDO2 sigurnosnih ključeva i uređaja koji su projekt najvećih tehnoloških kompanija okupljenih u FIDO udruženje i World Wide Web konzorcija (W3C). Implementacija čak i najjednostavnijeg sustava multifaktorske autentikacije uklanja čak 99% uspješnosti napada na računalne identitete. Uvjetovani pristup (eng. Conditional Access) je osnova Zero Trust sigurnosnog modela, pošto sustav osigurava kontinuiranu provjeru identiteta, akcija, uređaja, računalne mreže, konkretnih radnji, aplikacija i slično, kako bi se temeljem pravila, ali i umjetne inteligencije, definirala potreba za nekim dodatnim provjerama ili radnjama – poput dodatne provjere identiteta, blokade pristupa, zahtjeva za promjenom lozinke i slično.

Jedna od najčešćih zabluda vezanih uz AAD je da se on koristi samo za pristup putem Microsoft Azure platforme, odnosno SaaS aplikacija. No to nije točno jer se AAD identiteti mogu koristiti za pristup do više od 3000 aplikacija koje su već unaprijed dodane za korištenje (poput Adobe, SAP, Box i sličnih aplikacija). Integracija ostalih, pa čak i onih koje su posebno razvijene za određenu tvrtku, je izuzetno jednostavna jer je razvojnim inženjerima dostupno korištenje raznih alata integracije, pa čak i starijih aplikacija.  Dodatno, u B2B i B2C scenarijima se otvara široka mogućnost integracije partnerskih kompanija, ali i građana, u aplikacije koje tvrtka razvija – primjer je upravljanje identitetima korisnika društvenih mreža za pristup web trgovinama. Svim ovim sustavima se osigurava korištenje jednog identiteta za pristup svima poslovnim resursima, odnosno, u slučaju potrebe, jednostavno uklanjanje pristupa na svim aplikacijama do kojih određeni korisnik ima pristup.

Posljednja bitna komponenta AAD-a je sustav upravljanja kompletnim životnim ciklusom identiteta, od kreiranja, koje može biti automatizirano integracijom s aplikacijama za upravljanje ljudskim resursima, upravljanja razinama pristupa (bilo paketiranim razinama pristupa ili elevacijom razine privilegija po potrebi) do automatiziranog uklanjanja identiteta sustava.

Upravljanje ovlastima

Kako je rasla upotreba cloud platformi, upravljanje ovlastima (eng. Permission Management) je postalo kompleksnije. Naime, s vremenom se količina dodijeljenih ovlasti povećava, no korištenje tih ovlasti se ne konzumira, čime se kreira razlika koja, naravno, predstavlja sigurnosni rizik. Implementacijom novih i dinamičnih pristupa upravljanja pristupom u multicloud okruženjima, osigurava se dodjela korisničkih prava temeljem povijesnog korištenja i aktivnosti, dodjelom privremenog pristupa visokorizičnim resursima na zahtjev te kontinuirani nadzor i dodjela točno potrebnih razina pristupa. Navedene funkcionalnosti spadaju u novu kategoriju proizvoda pod nazivom Cloud Infrastructure Entitlement Management (CIEM). Microsoft je u srpnju 2021. objavio akviziciju tvrtke CloudKnox Security, čime je njihov proizvod CloudKnox Permission Management uspješno integriran u Microsoft Entra grupu proizvoda.

Grafikon Heatmap Permission Creep Indexa
Grafikon Heatmap Permission Creep Indexa

Proizvod generira metriku koja se naziva Permission Creep Index (PCI) i predstavlja razliku između dodijeljenih i korištenih ovlasti pristupa. Kreiranjem jednostavne vizualne heat mape kompanije jednostavno mogu vidjeti poziciju, odnosno rizik svih identiteta, resursa i dodijeljenih ovlasti u cloud platformama, bilo da je u pitanju Microsoft Azure, Google Cloud Platform ili Amazon Web Services usluga. Izvještaji i analitike su granularni i moguće je prikazivati informacije do razina pojedinačnih prava pristupa – npr. pravo čitanja datoteke pohranjene na sustavu pohrane.

Problem gomilanja ovlasti protekom vremena
Problem gomilanja ovlasti protekom vremena

Sustav podržava detaljne opcije automatizacije, bilo za uklanjanje nepotrebnih ili pretjeranih razina pristupa, bilo korištenjem predložaka za Just-in-time model pristupa. Također, sustav podržava dodjelu ovlasti na zahtjev i u definiranom vremenskom trajanju, odnosno po principu „ukoliko je potrebno“. Koristi strojno učenje, odnosno umjetnu inteligenciju, te s vremenom proaktivno uči korisničko okruženje, korisničke navike i slično, i na temelju toga proaktivno omogućava još jednostavnije upravljanje sustavom i detekciju anomalija. Osim mogućnosti kreiranja detaljnih izvještaja i izrade tzv. Cyber Kill Chain analiza, sustav ima napredne mogućnosti uzbunjivanja i integracije s ostalim sigurnosnim sustavima.

Microsoft Entra Verified ID

U današnjem svijetu pojedinci ne posjeduju svoje digitalne identitete i vrlo često niti ne razumiju kako se koriste njihovi podaci. Ti osobni podaci su razbacani u nebojenim entitetima i računima, stvarajući time rizik prijevara ili curenja podataka. Također, zakonska regulativa se kreira i postrožuje, što uzrokuje da se sve više kompanija pita žele li uopće zadržavati i upravljati osobnim podacima. S druge strane, osviještenost korisnika se povećava te se pitaju posjeduju li zaista svoje podatke i kako sami mogu njima upravljati. Navedeni izazovi su rezultirali time da se pojavila potreba za decentraliziranim identitetima, odnosno mogućnošću da pojedinci upravljaju svojim podacima, osiguravajući mogućnost provjere digitalnog identiteta bez otkrivanja osobnih podataka.

Tripartitni sustav je sastavljen od izdavača, korisnika i provjeritelja, između kojih je potrebno povjerenje kako bi sustav mogao funkcionirati. Izdavač korisniku nakon uspješne provjere izdaje digitalno potpisane vjerodajnice. Kad provjeritelj od korisnika zahtjeva vjerodajnice, on daje dobivene vjerodajnice na provjeru te provjeritelj nakon provjere s izdavačem izdaje pristup određenim resursima izdajući vjerodajnice za pristup. U analognom svijetu taj sustav izgleda ovako: student upisom na fakultet u referadi dobiva studentsku iskaznicu, nakon provjere identiteta i uspješnog upisa u akademsku godinu. Sa studentskom iskaznicom, student dolazi kod pružatelja usluge javnog prijevoza i dobiva povlaštenu kartu javnog prijevoza, odnosno odlaskom u trgovački lanac dobiva iskaznicu za popuste pri kupovini. U navedenom primjeru studentska referada je izdavač, korisnik je student, dok je pružatelj usluge javnog prijevoza provjeritelj. Između svih njih postoji povjerenje na temelju kojeg ovaj sustav funkcionira.

Tropartitni sustav izdavanja identiteta
Tropartitni sustav izdavanja identiteta

Kako bi riješio ovaj problem, Microsoft je u suradnji s Decentralized Identity Foundation (DIF), odnosno s W3C Credentials Community Group implementirao sustav za decentralizirane identifikatore (eng. Decentralized Identifier – DID). Sustav se sastoji od pet komponenti.

  • Prva komponenta je W3C Decentralized Identifier (DID), odnosno identifikator identiteta koje je stvorio i kontrolira ih korisnik, neovisno o bilo kojoj organizaciji ili vladinoj instituciji. DIDovi su globalni jedinstveni identifikatori povezani u decentraliziranu infrastrukturu javnih ključeva (DPKI), odnosno metadata pohranjena u JSON dokumente koji sadrže javne ključeve, deskriptore autentikacije i servisne krajnje točke.
  • Druga komponenta je sustav povjerenja, odnosno lokacija na kojoj su DIDovi pohranjeni. Microsoft trenutno podržava dva sustava, ION (Identity Overlay Network) mrežu uz podršku Bitcoin blockchain tehnologije, te  DID:Web.
  • Treća komponenta je korisnički novčanik, odnosno DID User Agent/Wallet – koji je već integriran u Microsoft Authenticator App koji se koristi za MFA i passwordless prijave i sustave.
  • Četvrta komponenta sustava je Microsoft Resolver, odnosno API koji ima mogućnost pretrage DIDova, te dohvaćanja DID Document Object (DDO), koji sadrže gore spomenute DPKI podatke.
  • Peta komponenta je Entra Verified ID Service koja omogućava vlasnicima identiteta stvaranje, prezentaciju i provjeru claimsa.

Time je zaokružen potreban sustav za izgradnju decentraliziranih identiteta, koji omogućava razvoj aplikacija i rješenja temeljenih na otvorenim standardima decentraliziranih identiteta.