API-kutsujen tietoturvatestaus ja testauksien automatisointi web-sovelluksissa
Pöllänen, Tommi (2025)
Pöllänen, Tommi
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-202504116237
https://urn.fi/URN:NBN:fi:amk-202504116237
Tiivistelmä
Nykyaikaisissa web-sovelluksissa käytetään entistä enemmän kolmansien osapuolien API-kutsuja, koska ne tarjoavat helpon ja kustannustehokkaan tavan laajentaa sovelluksen toiminnallisuuksia ilman tarvetta rakentaa kaikkea itse alusta alkaen. Vaikka tällaiset ulkopuoliset palvelut säästävät kehityskustannuksia ja nopeuttavat sovelluksen julkaisua, samalla ne lisäävät sovelluksen riippuvuutta palveluntarjoajasta. Siksi on tärkeää varmistua sekä kolmannen osapuolen API-rajapintojen jatkuvuudesta että niiden tietoturvasta. Tietoturva on noussut esille uutisissa erityisesti suurten tietovuotojen ja näkyvien palvelunestohyökkäysten seurauksena, jotka ovat kohdistuneet niin julkishallintoon kuin yksityisen sektorin palveluihinkin. Julkisuudessa on keskusteltu runsaasti myös kiristyshaittaohjelmista, joiden kohteena ovat olleet kriittiset järjestelmät. Samalla API-turvallisuus on noussut keskeiseksi huolenaiheeksi, sillä sovellusrajapinnat ovat yhä useammin hyökkäysten kohteena. Heikosti suojatut API:t voivat mahdollistaa tietovuodot, luvattoman pääsyn järjestelmiin sekä palvelunestohyökkäykset. Monet organisaatiot käyttävät rajapintoja kriittisten palveluiden integrointiin, joten niiden haavoittuvuudet voivat vaarantaa niin liiketoiminnan jatkuvuuden kuin asiakastietojen turvallisuudenkin. API-avainten hallinta, pääsynvalvonta, tietoliikenteen salaus sekä tietoturvatestaus ovat keskeisiä keinoja sovellusrajapintojen suojaamisessa ja mahdollisten tietoturvauhkien estämisessä. Tässä opinnäytetyössä keskityttiin ensisijaisesti API-kutsujen tietoturvaan sekä niiden automaattiseen testaamiseen osana CI/CD-putkea. Opinnäytteessä käytiin myös läpi web-sovelluksen arkkitehtuuria, joka tukee API-kutsuja sekä auttaa ymmärtämään niiden tietoturvaa. Kehittämiskohteena oli web-sovellus, joka on tarkoitettu erään yrityksen käyttöön laskutuksen ja datan seurannan tarpeisiin. Sovelluksen API-kutsut ohjataan IBM COS -palvelimelle, jonne asiakasdata tallennetaan. Tämän ansiosta datan käsittelyä ja seurantaa voidaan hallita käyttöliittymän kautta.