Tunnistautumis- ja autorisointipalvelun toteuttaminen dokumenttien hallintasovellukselle
Lammassaari, Tuomas (2025)
Lammassaari, Tuomas
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025052315417
https://urn.fi/URN:NBN:fi:amk-2025052315417
Tiivistelmä
Opinnäytetyö suoritettiin tilitoimistoyritykselle, joka kehittää kirjanpito-, laskutus- sekä arkistointisovelluksia kirjanpitäjille ja tilitoimistoille. Kirjanpidon prosesseissa dokumenttien hallinta tapahtuu yleensä yhden asiakkaan kontekstissa. Opinnäytetyön tavoitteena on kehittää tietoturvallinen malli, joka toimii pohjana pääkäyttäjäsovellukselle dokumenttien hallintaan ilman asiakaskohtaisia rajoituksia. Sovelluksen tarkoituksena on parantaa tehokkuutta ja mahdollistaa dokumenttien hallinta sekä haku läpi kaikkien asiakkaiden sekä varmistaa tietoturvallisen dokumenttien käsittely.
Työssä kehitettiin kaksi erillistä taustapalvelua: tunnistautumispalvelu ja dokumenttienhallintapalvelu. Autentikointi toteutettiin OAuth 2.0 -protokollaa mukaillen ja pääsynhallinta perustui JSON Web Tokenien käyttöön. Sovelluksien arkkitehtuuri noudatti REST-periaatteita, toteutus tehtiin ASP.NET Core -teknologialla ja ohjelmointikielenä käytettiin C#, joka on yleisin kieli .NET alustoille.
Lopputuloksena rakennettiin demotyyppinen ratkaisu, joka osoitti, että JSON Web Token -tunnisteisiin perustuva pääsynhallinta on tietoturvallinen ratkaisu rajaamaan dokumenttienhallintapalvelun rajapintoihin pääsyä. Ratkaisussa roolitietojen avulla rajoitettiin pääsyä asiakaskohtaisiin tietoihin ja sallittiin ylläpitäjille pääsy yli asiakasrajoituksien. Jatkokehityksenä on rakentaa todellista käyttötarkoitusta vastaava sovellus, joka käyttää oikeaa OAuth-palvelua, kuten Microsoft Entra ID:tä sekä rakentaa ylläpitäjille oma käyttöliittymä käyttäjien oikeuksien ja dokumenttien hallintaan.
Työssä kehitettiin kaksi erillistä taustapalvelua: tunnistautumispalvelu ja dokumenttienhallintapalvelu. Autentikointi toteutettiin OAuth 2.0 -protokollaa mukaillen ja pääsynhallinta perustui JSON Web Tokenien käyttöön. Sovelluksien arkkitehtuuri noudatti REST-periaatteita, toteutus tehtiin ASP.NET Core -teknologialla ja ohjelmointikielenä käytettiin C#, joka on yleisin kieli .NET alustoille.
Lopputuloksena rakennettiin demotyyppinen ratkaisu, joka osoitti, että JSON Web Token -tunnisteisiin perustuva pääsynhallinta on tietoturvallinen ratkaisu rajaamaan dokumenttienhallintapalvelun rajapintoihin pääsyä. Ratkaisussa roolitietojen avulla rajoitettiin pääsyä asiakaskohtaisiin tietoihin ja sallittiin ylläpitäjille pääsy yli asiakasrajoituksien. Jatkokehityksenä on rakentaa todellista käyttötarkoitusta vastaava sovellus, joka käyttää oikeaa OAuth-palvelua, kuten Microsoft Entra ID:tä sekä rakentaa ylläpitäjille oma käyttöliittymä käyttäjien oikeuksien ja dokumenttien hallintaan.