Designdokument for AD MicroService

AD MicroService er en mikrotjeneste som besørger oppdatering av objekter i Active Directory ved endring i kildesystemer.

1 Innledning

AD MicroService besørger oppdatering av bruker- og gruppeinformasjon i Active Directory.

Bruker- og gruppeinformasjonen stammer fra Cerebrum, og benyttes av mange forskjellige systemer til autentisering og autorisasjon.

Tjenesten eies av KIA og utvikles av USITINT.

1.1 Brukerroller

2 Redegjørelse

Det har tidligere vært utviklet to forskjellige AD-synkroniseringer. Felles for disse er en høy innbinding til Cerebrum gjennom bruk av Cerebrums Python API. Følgelig tar det tid å få implementert endringer i synkroniseringen da det kreves kjennskap til både Cerebrums interne API og Python.

Ny synkroniseringsmetode er implementert som en mikrotjeneste i tråd med UiOs integrasjonsarkitektur, og belager seg på uttrekk av data fra kildesystem via Web Services på bakgrunn av meldinger om endringer. Mikrotjenesten kan utvides ved å skrive program snutter i PowerShell, noe som gjør utvidelse tilgjengelig for Windows-driftere. Dette er også et steg videre i rendyrking av Cerebrum som BAS, da forettningslogikk skilles ut.

De forskjellige komponentene som AD MicroService er bygget opp av, kan i fremtiden skilles ut og fra hverandre slik at man får et gjennbrukbart rammeverk for fremtidige integrasjoner på Windows-plattformen. Se punkt  3.3 for systemets deler.

Fleksibiliteten som følger med den nye synkroniseringsmetode medfører at man raskt kan tilpasse integrasjoner. Skulle det eksempelvis være behov for å benytte data fra et nytt kildesystem (f.eks. SAP), kan man enkelt og raskt tilpasse seg uten å måtte utføre en dyp inngripen i støttesystemer.

3 Detaljebeskrivelse

3.1 Teknisk formål

Det refereres til innledningen.

3.2 Plassering i systemlandskapet

Følgende illustrasjon beskriver endringsflyten i ADMicroService, og dens posisjon i integrasjonsarkitekturen.

Melding om endring flyter fra kildesystemet Cerebrum til AD MicroService via meldingstjenesten. AD MicroService er deretter ansvarlig for å uthente datagrunnlag fra kildesystemet, og provisjonere passende i Active Directory.

3.3 Lavnivådesign

ADMicroService består i hovedsak av tre komponenter:

  • Kjernetjenesten
    Ansvarlig for å registrere AD MicroService som en Service i Windows, samt hente meldinger fra meldingstjenesten
  • Håndteringsvelger
    Velger hvilke PowerShell Cmdlets som skal kjøres for meldingen, på bakgrunn av en konfigurasjon som angir meldingens egenskaper (handler meldingen om en konto, vil man nødvendigvis kjøre cmdlets relatert til kontoer)
  • Håndteringsfunksjoner
    Besørger den faktisk håndteringen av meldingen. Dette kan innebære at det hentes ut informasjon fra aktuelle kildesystem, og ytføres endringer i Active Directory

Pilene i følgende illustrasjon indikerer kall-rekkefølge innad i AD MicroService og mot utenforstående systemer:

4 Avhengigheter

4.1 Systemet avhenger av

  • Cerebrum for stammdata
  • Meldingskø for meldinger om hendelser
  • Active Directory for utførelse av endringer i Active Directory

4.2 Andre systemer er avhengige av systemet

  • Active Directory for provisjonering av data

Andre systemer kan også bli avhengige i fremtiden, da AD MicroService selv skal bli en produsent av meldinger.

Publisert 18. sep. 2017 21:30 - Sist endret 9. juli 2020 09:48