290 likes | 403 Views
Brukeradministrasjon 101. Introduksjon til brukeradministrasjon og identitetsforvaltning med Cerebrum Monica Stamnes Gruppe for drift av grunntjenester Universitetets Senter for Informasjonsteknologi Universitetet i Oslo. Agenda. Brukeradministrative systemer og identitetsforvaltning
E N D
Brukeradministrasjon 101 Introduksjon til brukeradministrasjon og identitetsforvaltning med Cerebrum Monica Stamnes Gruppe for drift av grunntjenester Universitetets Senter for Informasjonsteknologi Universitetet i Oslo
Agenda • Brukeradministrative systemer og identitetsforvaltning • Hva er identitetsforvaltning? • Hva er et brukeradministrativt system? • Identitetsforvaltning • Brukeradministrasjon i praksis • Praktisk brukeradministrasjon (BOFH) • Personer, brukere, spreads og affiliations • Grupper • Karantener • Studentautomatikk • Fremtidige endringer • Ny bofh-kommandoer • Passordskiftevarslingstjeneste
Identitetsforvaltning • Forvalte informasjon om personer, deres identiteter og deres roller • Identifisere individer og forvalte deres tilgang til ulike ressurser
Identitetsforvaltning - kildesystemer • Kildesystemer • Kildesystemer: FS, SAP, andre • Import fra kildesystemer - personer • Ansatte (SAP) • Studenter (FS) • ”Offisielle” gjester (SAP) • Andre • Import fra kildesystemer - organisasjonsstruktur • Enheter og stedkoder • Import fra kildesystem – affiliations/tilknytninger (personers tilhørighet til et sted) • Studenters studierett på et studieprogram • Ansattes tilsetting ved en organisatorisk enhet
Brukeradministrative systemer (1 av 2) • Et BAS er et system som • Benyttes til innsamling av informasjon knyttet til personer, brukere, grupper, tilhørigheter, roller osv. • Viderebringer informasjon om personer og brukere til resten av IT-systemet • Et BAS består av • En database • Et sett med programmer som utfører: • Innsamling av data • Automatisk (og manuell) behandling av innsamlede data • Oppdatering av IT-systemet
Brukeradministrative systemer (2 av 2) • Fordeler ved et BAS • Datavask gir forbedret datakvalitet i kildesystemer • Oppdatering av brukerinformasjon skjer på ett sted • Bedre muligheter for automatisering av vanlige oppgaver • Enklere å ta i bruk nye tjenester (mhp. autentisering og autorisasjon) • Synkronisering av data på kryss og tvers
Cerebrum • Brukeradministrativt system: • Python & RDBMS basert programvarepakke • Kan bruke både PostgreSQL og Oracle • XML/RPC basert klient • GPL lisens • Kan hentes fra SourceForge, mer informasjon finnes på http://cerebrum.sourceforge.net/wiki/ • Utviklet og tatt i bruk ved flere institusjoner i forbindelse med FEIDE-prosjektet, se http://www.feide.no/
Praktisk brukeradministrasjon: bofh • Klientverktøyet til Cerebrum • Brukerorganisering for hvermansen (bofh) • Snakker kryptert med Cerebrum-databasen via et pythonbasert API • Krever autentisering og autorisasjon • Alle brukere ved institusjonen har tilgang til bofh • Noen brukere ved institusjonen har mer tilgang til bofh enn andre • Det finnes mange kommandoer i bofh, men du ser bare de kommandoene du får lov til å utføre (på deg selv eller andre)
Ymse tips (bofh) • Hjelp • Kommandogruppen ”help” er en bra start • ”help person” vil f.eks. liste ut en oversikt over alle kommandoer i kommandogruppen ”person” samt en hjelpetekst for disse • ”help glossary” vil gi en ordliste mer forklaringer på Cerebrumspesifikke begreper • <tab> • Bofh støtter tab-completion og korte kommandoformater For eksempel kan man skrive ”u i brukernavn” for å utføre bofh-kommandoen ”user info brukernavn” • <tab> X 2 vil liste ut alle mulige (”person <tab> X 2”) vil gi en oversikt over alle tilgjengelige kommandoer i gruppen person
Ymse tips (bofh) • ? • I alle prompt-funksjoner i bofh kan man trykke ’?’ for å få en beskrivelse av input som kreves, for eksempel: jbofh> user create Person identification >? Identify account owner (person or group) by entering: Birthdate (YYYY-MM-DD) Norwegian fødselsnummer (11 digits) Export-ID (exp:exportid) External ID (idtype:idvalue) Entity ID (entity_id:value) Group name (group:name)
Tips & triks • Dersom man vet hvilke parametere kommandoen forventer, kan man skrive hele kommandoen i en linje: user info <uname> • Paranteser • Hvis man har flere input som parameter til samme kommando, kan man gruppere disse med paranteser: group add (user1 … userN) gruppeX
Ymse tips (bofh) • Gjøre mange ting på en gang • Bofh-kommandoen ”source” jbofh> source minfil • Ctrl-d • Avslutter bofh • Avslutter prompt-funksjoner uten å avslutte bofh
Personer • Registrering av personer • Skal gjøres i kildesystemene • Importeres fra kildesystemene til Cerebrum via importskript • Navneendringer • Skal for personer registrert i et kildesystem gjøres i kildesystemet • For manuelt registrerte personer kan navn oppdateres ved hjelp av bofh
Affiliations • Affiliations (tilknytninger) importeres fra kildesystemene (SAP/FS). Og er bygget opp på formen AFFILIATION/affiliation_status@stedkode • Følgende varianter av affiliation/affiliation_status finnes: • ANSATT • tekadm, vitenskapelig • STUDENT • aktiv, evu, privatist, tilbud • TILKNYTTET • bilag, fagperson, gjest, gjesteforsker, pensjonist, timelønnet • MANUELL • ekstern, gjest, pensjonist
Brukere • Hva er en bruker? • Ordinær bruker (brukernavn + passord) • Utvidet brukerbegrep (AD-bruker, e-postbruker, LDAP-bruker) • Primærbruker • Hvor kommer brukere fra? • Automatikk (studenter) • Manuell brukerbygging (ansatte) • Krav til brukernavn • Begrensning i antall tegn • Skal være unike innenfor BAS • Norske bokstaver (’æøå ÆØÅ’) og bindestrek er ikke tillatt • Spesialtegn er ikke heldig • Ellers kan man velge nesten hva man vil av brukernavn, men ikke alt er like lurt
Spreads • Brukes til å angi hvilke tjenester et gitt objekt skal eksporteres (”spres”) til, for eksempel AD, NIS, imap • Kan tilordnes brukere og grupper ved hjelp av kommandoen spread add i bofh
Eksport av brukere til AD • For at en bruker skal eksporteres til AD, må brukeren: • Ha et spread account@ad_<domene>, som avgjør hvilket AD-domene brukeren havner i • Gyldige domener er: ad_adm, ad_fag, ad_stud • Ha en gyldig affiliation på person og bruker • affiliation og affiliation_status bestemmer OU, home og profile_path for brukeren
Ny funksjonalitet: Endring av AD-attributter • Ny funksjonalitet for oppdatering av AD-attributtene OU, Profile Path og Homedir: • Før synkronisering av brukere til AD, blir verdien for AD-attributtene OU, Profile Path og Homedir for brukeren beregnet • Dersom det allerede finnes verdier for dette for brukeren, sammenlignes resultatet med de eksisterende verdiene • Dersom gamle og nye verdier ikke stemmer overens, sendes det informasjon om dette til HIOF • IT-ansvarlige på HIOF går gjennom listen, og dersom det stemmer at endringene skal gjennomføres, kjører han/hun nye bofh-kommandoer for å oppdatere AD-attributtene
Ny funksjonalitet: Endring av AD-attributter, bofh-kommandoer • Man kan liste opp eksisterende AD-attributter ved hjelp av kommandoen user list_ad_attrs <uname> i bofh, f.eks. test_bofh> user list_ad_attrs camilla Spread AD attribute Value account@ad_fag ad_profile_path \\fag.hiof.no\profile\SF\camilla account@ad_fag ad_account_ou OU=SF,OU=Halden,OU=Ansatte account@ad_fag ad_homedir \\fag.hiof.no\home\SF\camilla • Dersom AD-attributtene skal endres, sletter man dem ved hjelp av kommandoen user delete_ad_attrs <uname> <spread> i bofh, for eksempel: test_bofh> user delete_ad_attrs camilla account@ad_fag OK, removed AD-traits for camilla • Når AD-attributtene har blitt slettet, vil de nye beregnede verdiene for brukeren settes i Cerebrum og oppdateres i AD
Eksport av brukere til LDAP • Person-treet (FEIDE-treet) • For å eksporteres til person-treet i LDAP, må man: • Ha en aktiv bruker, og • Ha en av følgende affiliations på sin person i Cerebrum: • Fra SAP: ANSATT/<tekadm, vitenskapelig> • Fra SAP: TILKNYTTET/<gjesteforsker, pensjonist> • Fra FS: STUDENT/<aktiv, evu, privatist> • Bruker-treet (radius) • For å eksporteres til brukertreet i LDAP, må man: • Ha en aktiv bruker, og • Ha et av følgende spreads på brukeren i Cerebrum: • account@ad_adm, account@ad_fag, account@ad_stud
E-post • Brukere med spread ’account@imap’ er e-postbrukere ved HIOF • E-postadresser er bygget opp på formen <localpart>@<domene>. • Domene er satt til ’hiof.no’ med unntak av Fremmedspråksenteret der domenet er satt til ’fremmedspraksenteret.no’ • Alle e-postbrukere på hiof får to e-postadresser der den ene adressen regnes som primæradressen til brukeren • Den primære e-postadressen har localpart som er basert på fullt navn til personen som eier brukeren • Tilleggsadressen har brukernavnet som localpart • ”Per Person” med brukernavn ’perp’ vil dermed få ’per.person@hiof.no’ som primæradresse, og ’perp@hiof.no’ som en gyldig tilleggsadresse
ABC-eksport • To ganger i døgnet produserer Cerebrum en fil på abc-format, med informasjon om: • Stedkode-struktur • Personer (navn, id-er, brukernavn, e-post) • Kull • Undervisningsenheter • Personer tilknyttet de ulike enhetene (stedkodene, via affiliations på person) • Personer som har betalt semesteravgift • Kriterier for å bli eksportert som person: • Må være registrert med fullt navn i Cerebrum • Må ha et gyldig fødselsnummer • Må ha minst en gyldig affiliation
Grupper • Hva er en gruppe? • Standard gruppe i Cerebrum • Utvidet gruppebegrep (rettighetsgruppe, AD-gruppe) • Hvor kommer grupper fra? • Automatikk • Manuelt opprettede grupper • Hva bruker vi grupper til? • Diverse rettigheter og tilganger i IT-systemet • Rettighetstildeling i bofh • Annet
Karantener (1 av 2) • Karantener benyttes til å stenge et objekt midlertidig ute fra gitte tjenester • Ved HIOF benyttes følgende karantener: • Automatiske karantener: auto_inaktiv, auto_kunepost, autopassord • Disse vedlikeholdes av diverse automatiske rutiner i Cerebrum • Manuelle karantener: generell, teppe, system • Disse vedlikeholdes av lokale IT-ansvarlige
Karantener (2 av 2) • Karantener settes ved hjelp av kommandoen quarantine set account • Karantener kan settes med startdato frem i tid • Man kan se på en karantene på en gitt bruker ved hjelp av kommandoen quarantine show account • Dersom en bruker har karantene, vil dette også være synlig når man kjører user info på brukeren • Man kan disable en karantene ved hjelp av kommandoen quarantine disable account • Man kan slette en karantene ved hjelp av kommandoen quarantine remove • Karantener bør ikke slettes uten videre, sjekk derfor alltid først hvorfor karantenen er satt • Automatiske karantener skal ikke slettes manuelt
Studentautomatikk (1 av 2) • Oppretter og vedlikeholder alle studentbrukere basert på informasjon fra FS og konfigurasjonsfil • Kjøres hver natt, etter import av data fra FS til Cerebrum • Genererer blant annet brev med brukernavn og passord til nye studentbrukere
Studentautomatikk (2 av 2) • Hva gjør automagien med en typisk studentbruker? • Ved påtruffet aktiviseringskriterium skjer følgende i Cerebrum: • Det blir opprettet en bruker til studenten i Cerebrum. Informasjon om denne brukeren blir eksportert til IT-systemet • Det genereres et brev med brukernavn og passord til den nye studenten • Brevene med brukernavn og passord blir overført til et passende område på filutvekslingstjeneren • Institusjonen har ansvaret for å skrive ut og sende/dele ut passordbrevene til nye studenter
Passord • Alle brukere i Cerebrum har et passord som sammen med brukernavnet gir tilgang til de ulike IT-systemene • Passordet må oppfylle visse kriterier for å være gyldig • Passordskifte • Gjøres på passord.hiof.no (kan også gjøres direkte i bofh) • Endringene sprer seg videre til resten av IT-systemet (det gamle passordet fungerer da inntil det nye blir tatt i bruk)
Fremtidig tjeneste: Passordskiftevarsling • USIT arbeider med å utvikle en generell løsning for utsending av varsel om passordskifte • Tjenesten vil settes opp til å kjøre i gitte intervaller, for eksempel ukentlig • Tjenesten kan konfigureres slik at man kan utarbeide sine egne brevmaler, og angi tidspunkt for hvor ofte brukerne må skifte passord • Dersom en bruker ikke har skiftet passord fem uker innen fristen for passordskifte, sendes det ut et varsel per e-post om at brukeren vil bli sperret dersom passordskifte ikke utføres • Dersom en bruker fortsatt ikke har skiftet passord to uker senere, sendes det en påminnelse per e-post om at man må skifte passord • Dersom passordet fortsatt ikke er skiftet innen fristen, settes brukeren i autopassord-karantene og mister således tilgang til IT-tjenestene