Authorization Service

From EgeeWiki

(Redirected from Athorization Service)

Tento dokument popisuje autorizacni sluzbu v prostredi METACentra.

Contents

Uvod

Faze nasazeni

Nasazeni autorizacni sluzby jsme rozdelili do dvou fazi.

1. faze: Autorizacni sluzba je rozdelena do nekolika podsluzeb. Autorizacni rozhodnuti se delaji na koncovych sluzbach, autorizacni sluzba zajistuje spravu skupin, distribuci definic skupin na koncove sluzby a online rozhrani pro dotazy na skupiny. Ziskame tak jednotnou spravu uzivatelskych skupin, pri zachovani rozumne uzivatelske privetivosti pro administratory. Tato faze take umozni snadnejsi zapojeni do existujicich sluzeb, ktere maji vlastni prostredky pro rizeni pristupu, casto zalozene na vyuziti skupin (uzivatelskych identit).

2. faze: Rozsireni o moznost spravovat autorizacni rozhodnuti pro nektere sluzby centralne. Vyuziti nastroju pro definici politik, napr. XACML. Podpora obligaci. Vyzaduje uzkou integraci se stavajicimi sluzbami a zmenu pristupu v administrovani (pristupova pravidla se nastavuji mimo koncovou sluzbu).

Struktura autorizacni sluzby

Sluzba sprava skupin

Sluzba spravuje skupiny: vytvareni, editace, ruseni, umoznuje take vytvareni skupiny skupin (vnorovani). Seznam uzivatelu bere z Peruna, uzivatele, tj. vsichni uzivatele musi byt zavedeni. Tato sluzba take eviduje kam a ktere sluzby budou propagovany pomoci Peruna, tento pristup byl zvolen kvuli tomu, aby se na kazdou sluzbu nemusely propagovat vsechny skupiny. Zaroven poskytuje prehled, kde vsude je skupina pouzivana, tato informace je dulezita pri ruseni skupiny.

Informace o skupinach a clenstvi v nich je dostupna online nebo ji lze propagovat na jednotlive sluzby (tak, jak dnes funguje sprava uzivatelu pres Peruna). Je take vyhledove mozne podporovat "push model", kdy si uzivatel autorizacni atributy prinese s sebou pri zadosti o sluzbu (tento pristup umoznuje prepinani roli uzivatelu).

Propagace skupin

Zajistuje komunikaci s Perunem, kteremu predava informace o skupinach, ktere maji byt distribuovany na koncove sluzby. Tato sluzba vi, ktere skupiny maji byt na konkretni sluzby distribuovany. Pokud neni uvedeno jinak, Perun je chapan jen jako sluzba, ktera distribuuje seznamy skupin na cilove sluzby a monitoruje stav distribuce techto informaci. Skupiny jsou expandovany na seznam uzivatelu, ktery lze snadno vyhodnotit. Typ expanze se bude lisit podle typu sluzby, nektere vyzaduji identitu uzivatele ve formatu DN, jine ve formatu kerberovskeho principala ci pouze loginu. Podrobneji je to popsano u jednotlivych use case nize.

Online rozhrani

Sprava skupin bude dostupna i online, nejpravdepodobneji pres LDAP.

Push model

Atributy ulozene v X.509 certifikatu nebo Kerberovskem listku. Zajimave pro vyuziti SAML assertions. Tento pristup zatim neni prioritni. Bude vyzadovat syntaxi politiky, ktera umoznuji zapis atributu (ne jen zalozany na uzivatelske identite).

Poskytovane sluzby autorizacni sluzbou

1. Tvorba skupin uzivatelu

2. Blokace uzivatele

Use cases

Vzdaleny pristup pomoci ssh, rsh, telnet, ...

Rizeni pristupu pomoci sluzby k5login, ktera bude sirena Perunem. Primarne pristup na rootovske ucty. Z tohoto pohledu je Perun cilova sluzba pro autorizacni sluzbu a misto, kde je zapsana pristupova politika. V autorizacni sluzbe se nadefinuji skupiny uzivatelu, v Perunovi se pote priradi jednotlive skupiny konkretnim uctum na konkretnich strojich. V pripade potreby by sly timto zpusobem resit i genericke ucty user001, user002, atp.

Virtualni klastry

VM a virtualni klastry jsou spravovany sluzbou pro spravu virtualnich klastru, kde se bude definovat, ktere skupiny uzivatelu maji prava na vytvoreni, zruseni, pristup, resetovani a vypnuti. Teto sluzbe bude autorizacni sluzba dodavat seznam skupin pres Peruna. Magrathea ridici VM na konkretni HW se bude bud dotazovat sluzby pro spravu virtualnich klastru primo a nebo bude napr. vytvaret dotazy XACML proti lokalne ulozene politice generovane sluzbou pro spravu virtualnich klastru.

Apache

Na server s Apachem budou tlaceny pres Perun skupiny uzivatelu. Kdo ma k cemu pristup se bude definovat primo v konfiguraci Apache, pomoci stavajiciho modulu pro group-based access control. Administrator Apache se musi zaregistrovat pro "odber" pozadovanych skupin, resp. pouzit on-line dotaz do LDAPu. Apache je prikladem sluzby, ktera bude moci prijimat skupiny uzivatelu, kteri maji identitu zapsanou bude jako kerberovsky principal a nebo DN certifikatu.

OpenVPN

Bude existovat sluzba na spravu VPN koncentratoru, kde se budou definovat konkretni VPN "oblacky" a skupiny uzivatelu, kteri k nim maji pristup. VPN sluzba vyzaduje jako identifikaci DN certifikatu uzivatele. Autorizacni sluzba bude jednotlivym koncentratorum poskytovat seznamy skupin.

Eduroam

Resit se bude pristup do lokalniho nebo celosvetoveho eduroamu a blokace uzivatele. Freeradius je vybaven konektorem pro LDAP, proto bude komunikovat s autorizacni sluzbou jednak online, ale take bude prijimat seznamy uzivatelu s identitami ve formatu DN certifikatu.

CVS

Perun bude na stroj s CVS tlacit definice skupin do /etc/group na zaklade informaci o skupinach z autorizacni sluzby. Na CVS serveru se pak bude pristup k jednotlivym modulum nastavovat pomoci pristupovych prav skupin.

Kerberos KDC

Na KDC serveru bude bud aplikace, ktera bude nacitat autorizacni politiky a seznam skupin tlacenych Perunem od autorizacni sluzby a bude vytvaret ACL pro KDC server. Nebo se upravi Heimdal KDC, aby v konfiguraci ACL rozponal skupinu a tu expandoval na konkretni uzivatele.

File systemy

Pro NFS budou k dispozici skupiny nadefinovane v autorizacni sluzbe a ty lze vyuzit k nastavovani prav pro jednotlive soubory/adresare na filesystemu. NFS vyuziva group-nfs4 pro ziskavani informaci o skupinach, proto lze vyuzit podobny mechanismus jako pro CVS, s tim rozdilem, ze v definici skupiny jsou identity uzivatele zapsany jako plne kerberovske principaly.

Budeme resit i AFS?

PBS

Perun natlaci skupiny od autorizacni sluzby na PBS server, kde se budou mapovat fronty PBS na skupiny opravnenych uzivatelu.

VOMS

Autorizacni sluzba bude spravovat skupiny a ty bude "tlacit" (pres Peruna?) do VOMS serveru. VOMS server bude jen prekladova sluzba mezi autorizacni sluzbou a atributovymi certifikaty nebude samostatne spravovat skupiny. Problem muze vzniknout s rolemi...

Postupy

Pridani nove sluzby

1. V autorizacni sluzbe se vytvori skupiny uzivatelu, pokud jeste neexistuji 2. Zaregistruje se do autorizacni sluzby nova sluzba a seznam skupin, ktere na ni maji byt dopravovany 3. Dojde k propagaci skupin na koncovou sluzbu 3. Nastaveni prav na koncove sluzbe

Komentare

Nastaveni skupin na koncovy sluzbach bude vice mene staticka vec, dynamika bude probihat v clenstvi ve skupinach. Proto operace nastaveni, ktere skupiny se maji propagovat na konkretni koncovou sluzbu neni nijak obtezujici, jelikoz se bude provadet vyjimecne.

Pripominky

Co s uzivateli, ktere nemame a nechceme mit v META? Napr. uzivatele diskovych kapacit z MU? Mozne reseni by byla self-registrace pres federaci.

Ostatni

Schema jednotlivych komponent

Image:Diagram2.png

Schema komunikace pri propagaci Image:Diagram.png

Použití

Správa skupin https://mizar.ics.muni.cz/grouper

Správa ACL https://mizar.ics.muni.cz/acl

Skript pro vyvolani propagace na Perunovi pri zmene clenstvi ve skupine mizar:/opt/grouper/bin/perun_update.sh

Grouper

Instalace: