Use a secure software development method in order to reduce vulnerabilities in the software. This includes: a) Adequate planning, including the organisation’s needs, legal conditions, ICT security considerations and the need to train personnel. b) Analysis of user needs, including ICT security requirements. c) Design of the software according to requirements. d) Development of the software, including secure coding and testing (see 2.1.6 and 2.1.7). e) Deployment of the software. f) Secure management of the software, including i) planning for performing and distributing security updates, and ii) planning support for newer and more recent security functionality.
Organisaation on luotava toimintamallit, joiden avulla tietoturvallisuus ja turvallisuusvaatimusten huomiointi on oletusarviosesti mukana uusien järjestelmien, digipalvelujen tai toimintaproessien suunnittelussa ja kehittämisessä niiden ensihetkistä alkaen.
Tätä kutsutaan sisäänrakennetun ja oletusarvoisen tietoturvan periatteeksi (security by design). Tämän toimintatavan yhtenä tuloksena suunnitteluun liittyvästä dokumentaatiosta tulisi käydä selkeästi ilmi, millä toimenpiteillä tietoturvallisuudesta huolehditaan.
Organisaation on määriteltävä ja otettava käyttöön Secure Software Development Life Cycle (SSDLC, ohjelmistokehityksen elinkaari) -prosessi ohjelmistokehityksessä.
SSDLC-prosessin ensimmäisen vaiheen tulee olla tietoturvavaatimusten määrittely, joka varmistaa tietoturvanäkökulmien tulevan integroiduksi kehitettäviin palveluihin heti luomisvaiheesta lähtien.
SSDLC-prosessin on suositeltavaa sisältää vähintään seuraavat vaiheet:
Organisaation on määritettävä keinot turvalliseen ohjelmiston käyttöönottostrategiaan. Keinot on automatisoitava, jos mahdollista.
Kehitystyötä koskevat yleiset pelisäännöt on laadittu ja ne on hyväksytty kehitystyön johtohenkilöiden toimesta. Sääntöjen toteutumista valvotaan kaikessa organisaatiossa tehtävässä kehityksessä ja ne katselmoidaan vähintään vuosittain.
Turvallisen kehittämisen politiikka voi sisältää mm. seuraavia asioita:
Turvallisen kehittämisen sääntöjen noudattamista voidaan vaatia myös avainkumppaneilta.
Ohjelmistopäivityksiä varten olisi toteutettava hallintaprosessi, jotta voidaan varmistaa, että viimeisimmät hyväksytyt korjaustiedostot ja sovelluspäivitykset on asennettu kaikkiin hyväksyttyihin ohjelmistoihin. Ohjelmistojen aikaisemmat versiot olisi säilytettävä varotoimenpiteenä.
Määrittelyä turvallisuuden kannalta kriittisestä koodista eri palvelujen suhteen pidetään yllä. Uusia kriittisen koodin osasia pyritään jatkuvasti tunnistamaan ja uudet päivitykset tarkistetaan erityisen tarkasti kriittistä koodia koskevien muutosten suhteen. Tavoitteena on pitää turvallisuusheikkouksien todennäköisyys mahdollisimman pienenä.
Digiturvamallissa kaikki vaatimuskehikkojen vaatimukset kohdistetaan universaaleihin tietoturvatehtäviin, jotta voitte muodostaa yksittäisen suunnitelman, joka täyttää ison kasan vaatimuksia.