Sicherheit
Sicher ist sicher
Distributed Denial of Service (DDoS), Cross-Site Scripting, Angriffe auf Passwörter, Einschleusung von Schadsoftware und SQL-Injection sind nur einige der Angriffsformen, mit denen sich Developer auseinandersetzen sollten. Der Microsoft Digital Defense Response Report aus dem Jahr 2022 zeigt, dass diese Angriffe immer mehr zunehmen. Laut Bitkom lag der Gesamtschaden der attackierten Unternehmen in Deutschland 2020/2021 bei über 200 Milliarden Euro. Dabei sind rund neun von zehn Unternehmen von einem Angriff betroffen. Ziel muss es also sein, Sicherheitslücken zu vermeiden, die Angriffsfläche zu verringern und die Cyber-Resilienz zu erhöhen. Auch du als Developer kannst dabei helfen.
Security bzw. sicherheitsrelevante Aspekte sollten bereits in der Planungs- und der Entwicklungsphase einer App oder einer Softwarelösung eine entscheidende Rolle spielen – egal mit welcher Programmiersprache, welchem Framework und für welche Plattform du entwickelst. Wir bei Microsoft unterstützen dich dabei mit verschiedenen Angeboten, Tools, Anleitungen und Best Practices.
Unabhängig von den Maßnahmen während Entwicklung und Betrieb einer Anwendung, kannst du dich an diesen Punkten orientieren:
Trainiere das Team
Stelle sicher, dass alle Teammitglieder die Security-Maßnahmen verstehen.
Definiere die Anforderungen
Lege eine Sicherheits-Baseline fest, die in den DevOps-Prozess und die Pipeline aufgenommen wird.
Definiere Metriken und Compliance-Vorgaben
Lege spezifische Metriken fest, um Maßnahmen voranzutreiben und Compliance-Ziele zu unterstützen.
Verwende Software Composition Analysis (SCA) und Governance
Analysiere und inventarisiere die Komponenten von Drittanbietern und erstelle einen Plan zur Bewertung gemeldeter Schwachstellen.
Führe eine Bedrohungsmodellierung durch
Nutze eine Bedrohungsmodellierung, um Sicherheitsschwachstellen zu identifizieren, das Risiko zu bestimmen und ggf. Abhilfe zu schaffen.
Nutze Tools und Automatisierung
Wähle Tools und intelligente Automatisierung aus, um dein Team zu unterstützen und Konsistenz zu gewährleisten.
Schütze deine Credentials
Vermeide es, „Geheimnisse“ im Code zu verstecken, denn der Anwendungscode kann nicht vor Angreifern geschützt werden.
Setze auf kontinuierliche Überwachung
Überwache deine Anwendungen auf Leistungs- und Sicherheitsprobleme, um die Zeit bis zur Erkennung und Eindämmung von Angriffen zu verkürzen.
DevSecOps – Sicherheit als fester Bestandteil des Entwicklungszyklus
Bei der Entwicklung von Apps und anderen Softwarelösungen solltest du auf einen mehrschichtigen Sicherheitsansatz setzen, der den Code, die Release Pipelines, Runtimes und Datenbanken mit einschließt. Ein Ansatz, der hierfür aktuell genutzt wird, ist DevSecOps, also die Integration von Sicherheitsmethoden und -tools in einen DevOps-Prozess. Dabei solltest du beachten, dass dies kein einmaliger Aufwand ist, sondern ein kontinuierlicher und fortlaufender Prozess, der alle Teammitglieder in der Entwicklung und IT betrifft.
Die Integration der Sicherheit sollte daher Schritt für Schritt erfolgen, am besten beginnend mit den Änderungen, die die größten Auswirkungen auf die Sicherheit haben, aber nur geringe Belastung für den eigentlichen Entwicklungsprozess mit sich bringen. Da sich Entwicklungsprozesse von Team zu Team stark unterscheiden können, musst du individuell entscheiden, welche Maßnahmen für dein Projekt am besten geeignet sind. Unsere gesammelten Ressourcen helfen dir dabei. Grundsätzlich kannst du dich aber an diesen Punkten orientieren, aufgeteilt in fünf Phasen deines Development Lifecycles.
Fünf Phasen deines Development Lifecycles
- Bedrohungsmodellierung
- Hooks vor dem Commit
- IDE Security Plugins
- Sichere Programmierstandards
- Peer Reviews
- Schützen von Pipelines
- Statische Sicherheitstests
- Funktionale und Unit Tests
- Verwaltung von Abhängigkeiten
- Dynamische Sicherheitstests
- Überprüfen von Cloudkonfiguration
- Scannen der Infrastruktur
- Security Acceptance Testing
- Security Smoke Tests
- Check der Konfiguration
- Penetrationstests
- Fortlaufendes Monitoring
- Penetrationstests
- Threat Intelligence
Security-Dienste auf Microsoft Azure
Einer der vielen Pluspunkte von Microsoft Azure sind die zahlreichen Sicherheitstools und -funktionen, die über die Plattform zur Verfügung gestellt werden. Diese ermöglichen dir die Entwicklung sicherer Lösungen auf einer sicheren Plattform. Dabei decken sie auch eine Vielzahl von sicherheitsrelevanten Themenfeldern ab: Zugriffsverwaltung, Schutz von sensiblen Daten, Schutz vor Cyberattacken, Verwaltung von Identitäten und viele mehr.
Einer der wichtigsten Aspekte, auch für die Entwicklung sicherer Softwarelösungen, ist die Identitäts- und Zugriffsverwaltung. Hierfür steht dir mit Azure Active Directory (AAD) ein umfassender Dienst zur Verfügung, mit dem du Punkte wie Single Sign-On, Multi-Faktor-Authentifizierung und Conditional Access umsetzen kannst. Schaue dir beispielsweise diese AAD-Angebote an:
Azure Active Directory
Azure Active Directory ist ein cloudbasiertes Repository für die Authentifizierungsaufgaben, das ein Verzeichnis mit mehreren Mandanten sowie Verwaltungsdienste für mehrere Identitäten auf Azure unterstützt.
Azure Active Directory B2C
Azure Active Directory B2C ist ein Identitätsverwaltungsdienst, mit dem du die Registrierung und Anmeldung von Kunden und deren Verwaltung bei Azure-Anwendungen steuern kannst.
Azure AD Multi-Factor Authentication
Azure AD Multi-Factor Authentication ist ein Sicherheitsmechanismus, der verschiedene Formen der Authentifizierung und Überprüfung anwendet, bevor der Zugriff auf abgesicherte Informationen zugelassen wird.
Azure hat aber noch viele weitere hilfreiche Security-Dienste im Angebot, besonders interessant könnten die folgenden Angebote für dich sein:
Azure DDoS Protection
Schütze deine Azure-Ressourcen vor verteilten Denial-of-Service-Angriffen.
Azure Web Application Firewall
Nutze den cloudnativen Firewall-Dienst für einen leistungsstarken Schutz von Web Apps.
Key Vault
Sichere kryptografische Schlüssel und andere Geheimnisse, die von Cloudanwendungen und -Diensten verwendet werden.
Application Gateway
Erstelle sichere, skalierbare und hochverfügbare Web-Frontends auf Azure.
Microsoft Defender for Cloud
Schütze deine Multi-Cloud- und Hybrid-Umgebungen.
Microsoft Defender for DevOps
Profitiere von einer durchgängigen DevOps-Sicherheitsverwaltung in Multi-Cloud- und Multi-Pipeline-Umgebungen.
Azure Firewall
Schütze deine Azure Virtual Network-Ressourcen auf Basis von cloudnativer Netzwerksicherheit.
Azure Business Continuity Center: Neue Funktionen für das Backup- und Recovery-Management
Die wichtigsten News der Kalenderwoche 47/2024: Die Highlights der Microsoft Ignite 2024
Die wichtigsten News der Kalenderwoche 46/2024: .NET 9, GitHub und mehr
Jetzt verfügbar: Advanced Container Networking Services für Azure Kubernetes Service
Microsoft Azure Tech Week: In 5 Schritten fit für KI
Die wichtigsten News der Kalenderwoche 45/2024: Microsoft Azure, GitHub und mehr
Mobile Application Management (MAM) and BYOD Scenarios
Microsoft 365 Virtual Training Day: Manage Windows and Surface Devices with Intune
Decrease secret leaks with GitHub Advanced Security secret scanning
Microsoft 365 Virtual Training Day: Fundamentals
Microsoft Security Virtual Training Day: Configure Security Operations Using Microsoft Sentinel
Microsoft Security Virtual Training Day: Implement Data Security with Microsoft Purview
Sichere Entwicklung von Anwendungen – passende Ressourcen für jedes Skill-Level
Ganz egal, ob du sichere Anwendungen auf Azure entwickeln willst, deine .NET-Anwendungen besser vor Angriffen schützen möchtest oder dich für DevSecOps interessierst – mit unseren umfangreichen Ressourcen wie E-Books,Tutorials und Kursen kannst du das passende Wissen aufbauen.
Ledger für Azure Managed Instance
Ledger ist eine Funktion von Azure SQL Database und SQL Server, die Blockchain-Kryptotechnologien in das RDBMS einbezieht, um sicherzustellen, dass die in einer Datenbank gespeicherten Daten fälschungssicher sind.
Sichern der Identität mit Zero Trust
Dieser Leitfaden führt dich durch die erforderlichen Schritte, um deine Netzwerke gemäß den Prinzipien eines Zero Trust-Sicherheitsframeworks zu verwalten.
Dokumenation zu Microsoft Entra
Finde auf dieser Seite Inhalte, die dir helfen, sichere Zugriffsanforderungen zu erfüllen, den Zugriff auf jede App oder Ressource für jeden Benutzenden zu schützen und vieles mehr.
Public Preview von Microsoft Entra External ID: Entwickler-zentrierte Plattform
Schau dir die neuen Developer-Features für Kunden- und Partneridentitäten in der CIAM-Lösung Microsoft Entra External ID im Detail an.
Was ist Content Safety von Azure AI?
Content Safety von Azure AI erkennt unangemessene benutzergenerierte und KI-generierte Inhalte in Anwendungen und Diensten. So funktioniert dieser Dienst.
AI-Powered Content Safety
Kostenfreies E-Book rund um den Aufbau einer umfassenden Strategie für die Moderation von Content auf Basis von künstlicher Intelligenz.
Vorgestellt Azure Content Safety
Mit hochmodernen KI-Modellen kann dieser Dienst beleidigende, gewalttätige und andere unangemessene Inhalte in Bildern und Texten erkennen und diesen Schweregrade zuweisen.
Was sind verwaltete Identitäten für Azure-Ressourcen?
Die Verwaltung von Geheimnissen, Anmeldeinformationen, Zertifikaten und Schlüsseln für eine sichere Kommunikation zwischen verschiedenen Diensten stellt für Developer eine Herausforderung dar. Dank verwalteter Identitäten musst du keine Anmeldeinformationen mehr verwalten.
„Ich bin überzeugt, dass Microsoft eine Verantwortung hat, die digitalen Systeme zu schützen, die die Grundlage für das soziale Gefüge unserer Gesellschaft bilden.“
Weiterführende Ressourcen zum Thema Sicherheit
Noch mehr rund um die Entwicklung sicherer Anwendungen gibt es auf diesen Seiten – klick dich durch zahlreiche Blogbeiträge, lass dich von den Erfahrungen renommierter Unternehmen inspirieren und hol dir auf Produkt- und Technologieseiten tiefergehende Informationen.