Strategi för utvecklingssäkerhet
Utvecklingssäkerhet är ett brett tekniskt område med flera olika element. Bästa praxis återspeglar detta faktum.
Utvecklingssäkerhet kräver skydd av själva programmet eller koden samt den underliggande infrastrukturen, plattformen eller enheten.
Integrerade säkerhetsrutiner
För att skydda koden krävs integrerade säkerhetsrutiner i utvecklingsprocessen. Den här metoden minskar säkerhetsriskerna i både designen och implementeringen av koden som utvecklas.
Utvecklingen kan ta många former, bland annat:
- Programkod som ska köras på en server som ett program eller API.
- Publicera ett API.
- Skript.
- Automation, till exempel:
- Infrastrukturdistribution, till exempel automatisera en Terraform-distribution.
- Infrastrukturkonfiguration, till exempel användning av en Azure Resource Manager-mall eller Bicep för att distribuera en Azure-nätverkssäkerhetsgrupp och skapa regler för säkerhetsgrupper.
- Operativa uppgifter, till exempel att använda Azure Functions för att köra schemalagda aktiviteter genom att köra kod på fördefinierade tidsintervall.
- Kod som ska distribueras till inbyggd programvara.
- Mobilappar, en aggregering av kod på programnivå med plattformstjänster, distribuerade som ett system.
- Fullständiga system, inklusive infrastrukturkomponenter, operativsystem, PaaS-lösningar (plattform som en tjänst) och kod som du kan distribuera med hjälp av infrastruktur som kod (IaC).
Förutom bredden i vad som kan betraktas som utveckling har framsteg inom processer och tekniker gjort det möjligt att påskynda tiden till produktion, inklusive snabbare CI/CD-pipelines (Kontinuerlig integrering/kontinuerlig utveckling), DevOps och DevSecOps.
Dessa framsteg kräver att organisationer tar ett steg tillbaka och utvärderar. De måste avgöra vilka processer och tekniker som ger utveckling smidighet och snabbhet för att uppfylla företagens krav på ett säkert och kompatibelt sätt.
Från början måste en bra utvecklingsstrategi ta hänsyn till dina affärs- och säkerhetsbehov och organisationens ekosystem för utvecklare. Målet är att ha en inbyggd säkerhet i utvecklingsprocesser. Säkerhetsteamet bör vara mer av en möjliggörare än en blockerare eller hinder för att nå produktion.
En annan del av en framgångsrik säkerhetsstrategi för utveckling är att möta utvecklarna där de befinner sig och försöka göra ändringar i sitt arbete så litet och friktionsfritt som möjligt. Små steg och automatisering är bäst. Visa utvecklingspersonalen hur säkerhet som ingår i utvecklingsprocesser kan påskynda och ta bort friktion från deras arbete.