Kada: Test og produksjon
Det settes alltid opp to instanser av Kada per institusjon. En testinstans som integrerer med FS-demo og TP-test, samt en produksjonsinstans som integererer med FS-prod og TP-prod.
Meldingskøer
Opprett to applikasjoner for Kada (test og prod) i selvbetjeningsportalen for RabbitMQ. Gi disse navnet "kada", så legger selvbetjeningsportalen på "system-test" og "system-production". Når man har gjort dette, skal man ha følgende køer:
- system-test-kada
- skal abonnere på notifikasjoner fra FS-demo (system-test-fs) og TP-test (system-test-tp)
- system-production-kada
- skal abonnere på notifikasjoner fra FS-prod (system-production-fs) og TP-prod (system-production-tp)
Under fanen Applikasjonsinfo finner man knappen Vis brukernavn og passord. Brukernavn og passord til disse to applikasjonene overleveres til IT-avdelingen på UiO.
FS
KADA trenger lesetilgang til mange ulike endepunkter i FS-API, samt notifikasjoner om endringer i disse dataene.
Se Sikt sin dokumentasjon om FS-API og notifikasjoner fra FS.
Her er man i mål når:
- FS-API for FS-prod og FS-test er tilgjengelig i API-katalogen i Gravitee
- notifikasjoner fra FS-prod og FS-test er tilgjengelig i selvbetjeningsportalen for RabbitMQ
- Kada-test og Kada-prod abonnerer på notifikasjoner fra henholdsvis FS-prod og FS-test i RabbitMQ
IT-avdelingen på UiO sørger for å:
- opprette applikasjoner i Gravitee som representerer KADA-test og KADA-prod
- søke om tilgang til en passende plan mot FS-API-ene i Gravitee
Tilganger i FS-API
Systembrukeren som opprettes i FS og brukes av Gravitee til å autentisere mot FS-API bør konfigureres til å ha alle rettigheter, slik at den endelige tilgangskontrollen gjøres i Gravitee.
Kada trenger enten lesetilgang til alle data, eller en plan som åpner opp for å gjøre GET-requests mot følgende endepunkt, der context-path er stien som er satt for det relevante API-et:
- /context-path/studentundervisningsaktiviteter**/**
- /context-path/studentundervisning**/**
- /context-path/undervisningsaktiviteter**/**
- /context-path/undervisning**/**
- /context-path/emner**/**
- /context-path/personer**/**
- /context-path/studentvurderinger**/**
- /context-path/vurderingstider**/**
- /context-path/vurderingsenheter**/**
- /context-path/evukurs**/**
- /context-path/evukursinfoer**/**
- /context-path/evukursdeltakelser**/**
- /context-path/deltakere**/**
- /context-path/studieretter**/**
- /context-path/kullklassestudenter**/**
- /context-path/studieprogrammer**/**
- /context-path/kull**/**
- /context-path/kullklasser**/**
- /context-path/semesterregistreringer**/**
- /context-path/semestre**/**
TP
Kada trenger lesetilgang til de fleste endepunktene i TP-API, samt notifikasjoner om endringer i disse dataene.
Se veiledning for konfigurasjon av TP-API i Gravitee og veiledning om oppsett av meldingsutsending i TP.
Om de ikke finnes allerede, opprett to applikasjoner for TP (test og prod) i selvbetjeningsportalen for RabbitMQ, slik at man har:
- system-test-tp
- system-production-tp
(Merk! Selvbetjeningsportalen legger selv på "system-test-" og "system-production-". Man trenger kun å fylle inn "tp" for navnet.)
Registrer disse to applikasjonene som notifikasjonskilder under fanen Publisering i selvbetjeningsportalen for RabbitMQ. Under Tilkoblingsdetaljer finner man det man trenger for å konfigurere TP:
- La port være 5671 og huk av for SSL.
- Routing key bør settes til TPtest eller TPprod.
- I Gateway entrypoint skriver man base-URL til sin egen institusjons TP-API, f.eks. https://gw-inst.intark-uh-it.no/tp-test/.
- Virtual host vil typisk være system-test-tp eller system-production-tp.
- Aktiver meldingsutsending for alle endringstyper.
- Sørg for at meldingsutsending er aktivert for inneværende semester.
Her er man i mål når:
- TP-API for produksjon og test er tilgjengelig i API-katalogen i Gravitee
- notifikasjoner fra TP-prod og TP-test er tilgjengelig i selvbetjeningsportalen for RabbitMQ
- Kada-test og Kada-prod abonnerer på notifikasjoner fra henholdsvis TP-prod og TP-test i RabbitMQ
IT-avdelingen på UiO sørger for å:
- opprette applikasjoner i Gravitee som representerer Kada-test og Kada-prod
- søke om tilgang til en passende plan mot TP-API-ene i Gravitee
Exchange
Kada trenger tilgang til Microsoft Graph for å vedlikeholde kalenderhendelser i personlige mailbokser.
Opprette applikasjoner i Azure
Kada trenger vanligvis to applikasjoner i Azure, hvor den ene benyttes til testing og den andre har tilgang til produksjonsmiljøet. Om det ikke er behov for å ha test-mailbokser, kan test-applikasjonen droppes.
Se Microsofts veiledning til registrering av applikasjoner.
- Opprett applikasjonen
- Name: Kada (prod) eller Kada (test)
- Supported account types: Accounts in this organizational directory only
- Redirect URI: La stå tom
- Under applikasjonen, naviger til Manage → Certificates and secrets
- Velg New client secret
- Velg varighet for nøkkelen. Om den skal ha utløpsdato, bør UiO og institusjonen sammen bli enige om en rutine som unngår at den løper ut uventet.
- Naviger til Manage → API permissions
- Naviger videre til Add a permission → Microsoft Graph → Application
permissions - Gi tilgangen Calendar.ReadWrite med Grant admin consent
- Naviger videre til Add a permission → Microsoft Graph → Application
- Kun for testapplikasjonen:
- Se Limiting application permissions to specific Exchange Online mailboxes
- Konfigurer en ApplicationAccessPolicy som kun tillater applikasjonen å administrere den/de mailboksene som er satt opp for testing.
- Test ved hjelp av Test-ApplicationAccessPolicy at applikasjonen ikke får tilgang til andre mailbokser i katalogen.
- Videreformidle følgende til UiO på en sikker måte:
- Application/client ID
- Directory/tenant ID
- Client secret