The Java Authentication and Authorization Service (JAAS)
description
Transcript of The Java Authentication and Authorization Service (JAAS)
![Page 1: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/1.jpg)
The Java Authentication and Authorization Service (JAAS)
Priit Salumaa
Tartu 2003
![Page 2: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/2.jpg)
Sissejuhatuseks
• JavaTM 2 Platform Security Architecture+ JAAS ehk(koodipõhine + kasutajapõhine kontroll)
JAAS - Priit Salumaa
![Page 3: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/3.jpg)
Java 2 platvormi turvamudel (1)
JAAS - Priit Salumaa
• Liivakastist välja
![Page 4: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/4.jpg)
Java 2 platvormi turvamudel (2)
JAAS - Priit Salumaa
• Turvapoliitikad + lokaalse koodi kontroll
AccessController
![Page 5: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/5.jpg)
Mõisted
JAAS - Priit Salumaa
• Kasutajapõhine tuvastamine (Authentication) ja juurdepääsukontroll (Authorization)
• Isik (subject) - suvalise teenuse kasutaja
• Kasutajatunnus (principal) - isikuga seotud nimi, võib olla mitmeid (nimi, avalik võti)
• Volitus (credential) - isiku salajased ja avalikud voliatribuudid (parool, salajane võti, Kerberose pilet, avalik võti jne.)
![Page 6: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/6.jpg)
PAM ja pinu laadne tuvastus
JAAS - Priit Salumaa
• PAM (Pluggable Authentication Module)– sõltumatus kasutajatuvastusteenustest– LoginContext klass ja LoginModule
• Logimismoodulite pinu– tuvastuse katse– tuvastuse teostus– katkestamine
• Võrk ja üksikrakendus
![Page 7: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/7.jpg)
Volituste põhine pääsukontroll
JAAS - Priit Salumaa
• JAAS + Java 2 vaikimisi turvapoliitika:
grantCodebase "http://bar.com,Signedby "bar",Principal bar.Principal "duke" {permission java.io.FilePermission "/cdrom/duke/-", "read";
}
![Page 8: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/8.jpg)
Grupid, rollid hierarhia
JAAS - Priit Salumaa
• Rollid ja grupid kui volitused
grantPrincipal foo.Role "administrator"{permission java.io.FilePermission "/passwords/-", "read, write";
}
• PrincipalComparator liides
![Page 9: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/9.jpg)
Juurdepääsukontrolli realisatsioon
JAAS - Priit Salumaa
• java.lang.SequrityManager• java.sequrity.AccessControlle• + Subject.doAs() (JAAS)
• = Kasutaja ja koodi põhine pääsukontroll
• Dünaamiliselt seostatakse accsess control context ja isik. – java.sequrity.DomainCombiner liides
![Page 10: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/10.jpg)
Virtuaalmasin ja JAAS
JAAS - Priit Salumaa
• JAAS pakub VM laiendust tuvastusfunktsioonide osas
• Mitme kasutaja keskkond VM sees
• Igale kasutajale shell
• Lisaks kasutaja identiteedile on võimalik koodile anda mingi kindla kasutaja õigused - UserPermissions
![Page 11: The Java Authentication and Authorization Service (JAAS)](https://reader036.fdocuments.us/reader036/viewer/2022082414/56813fae550346895daa94fe/html5/thumbnails/11.jpg)
Mõned puudused ja tulevik
JAAS - Priit Salumaa
• Skaleeritavus – sertifitseeritud kolmas osapool
• Hajususe toetus (RMI turvalisus)
• Jini – teenuse registreerimine ja lokaliseerimine