Effektive Passwortverwaltung im Quellcode: Sichere Lösung mit sops und AWS KMS

Über den Kunden:

Unser Kunde, spezialisiert auf die Entwicklung von Anwendungen zur Verarbeitung sensibler Daten, legt größten Wert auf Sicherheit, insbesondere bei der Verwaltung von Passwörtern in ihren Quellcodes. Der Kunde suchte nach effizienten und zuverlässigen Lösungen, um sicherzustellen, dass sensible Informationen geschützt sind und gleichzeitig eine reibungslose Arbeitsweise gewährleistet ist. 

Herausforderung:

Die neue Lösung wird mit Schwerpunkt auf AWS Serverless Services entwickelt. Die Benutzer erhalten Zugang zum Web-Frontend über eine zentrale Benutzerverwaltung, die von AWS Cognito in Kombination mit SSO und Azure AD bereitgestellt wird. Die Bereitstellung erfolgt über ECS Fargate und NEXT JS, die Inhalte werden in S3 gespeichert. Lambda-Funktionen dienen als Schnittstelle zu externen Datenquellen, S3 und der Aurora Serverless RDS Datenbank.

Lösung:

Um diese Herausforderung anzugehen, entschied sich unser Kunde für die Implementierung von sops (Secrets Operator) in Kombination mit AWS Key Management Service (KMS). Sops ist ein Open-Source-Tool, das die Verschlüsselung von Dateien vereinfacht,1 während KMS von AWS eine sichere Verwaltung von Verschlüsselungsschlüsseln ermöglicht. 

Der Prozess begann mit der Erstellung eines IAM-Benutzers und eines KMS-Schlüssels im vorhandenen AWS-Konto des Kunden. Anschließend wurde sops installiert und konfiguriert, um mit dem KMS-Schlüssel zu arbeiten. 

Nachdem Benutzer und Schlüssel eingerichtet waren, konnte unser Kunde Passwortdateien ver- und entschlüsseln. Die Dateien, die Umgebungsvariablen enthielten (.yaml, .env, .json usw.), wurden verschlüsselt, wobei der KMS-Schlüssel und das AWS-Profil angegeben wurden, um eine nahtlose Integration mit verschiedenen Umgebungen und Arbeitsprofilen zu ermöglichen. 

Ein Beispielbefehl zum Verschlüsseln einer Datei lautet: 

Sops -k $SOPS_KMS_ARN –aws-profile myProfile -e -i myFile.env 

Durch diese Vorgehensweise blieben die Schlüssel weiterhin lesbar, während die Passwörter sicher verschlüsselt wurden. Dies ermöglichte es dem Team, sensible Daten sicher im Quellcode zu speichern, ohne die Sicherheit zu gefährden.  

Vorteile für unseren Kunden:

Die Implementierung von sops in Verbindung mit AWS KMS brachte unserem Kunden mehrere Vorteile: 

Verbesserte Sicherheit

Sensible Informationen wie Passwörter werden sicher verschlüsselt, wodurch das Risiko unbefugten Zugriffs erheblich reduziert wird. 

Reibungsloser Arbeitsablauf

Durch die nahtlose Integration mit AWS und die benutzerfreundliche Handhabung von sops wurde der Entwicklungsprozess nicht beeinträchtigt. Das Team konnte effizient arbeiten, ohne sich um Sicherheitsbedenken kümmern zu müssen.  

Flexibilität und Skalierbarkeit

Die Lösung kann problemlos an verschiedene Anwendungsfälle und Umgebungen angepasst werden und wächst mit den Anforderungen des Unternehmens. 

Fazit: 

Insgesamt hat die erfolgreiche Implementierung von sops in Verbindung mit AWS KMS unserem Kunden ermöglicht, sensible Passwortdateien sicher im Quellcode zu verwalten. Diese Lösung steigerte nicht nur die Sicherheit, sondern ermöglichte auch einen reibungslosen Arbeitsablauf und bot eine bemerkenswerte Flexibilität für verschiedene Anwendungsfälle und Umgebungen. Die erfolgreiche Umsetzung dieser Maßnahmen verdeutlicht die Effektivität und den strategischen Wert, den innovative Sicherheitsinitiativen in der Softwareentwicklung mit sich bringen.

Sie haben Fragen zu diesem Projekt oder möchten Ihre eigene Cloud-Infrastruktur modernisieren?

Schreiben Sie unserem Cloudexperten Robert Hackenfort.

Quelle Icons: Graphic’s Art, Haka Studio, Freepik

  1. https://github.com/getsops/sops ↩︎