Aufgabentrennung

Die Aufgabentrennung ist ein Konzept, mit dem verhindert werden soll, dass eine Person allein über alle Berechtigungen verfügt, die notwendig sind, um bösartige Aktionen ausführen zu können. Im Cloud Key Management Service könnte eine solche Aktion z. B. darin bestehen, dass ein Nutzer mit einem Schlüssel auf Daten zugreift und sie entschlüsselt, obwohl er eigentlich keinen Zugriff haben sollte.

Die Aufgabentrennung ist eine Form der Unternehmenssteuerung, die in der Regel in größeren Organisationen umgesetzt wird. Sie dient dazu, Sicherheits- und Datenschutzvorfälle sowie Fehler zu vermeiden und gilt als Best Practice.

Weitere Informationen finden Sie in unserer Dokumentation zur sicheren Verwendung von Cloud Identity and Access Management.

Cloud KMS in einem separaten Projekt einrichten

Cloud KMS kann in einem bereits vorhandenen Projekt ausgeführt werden, z. B. your-project. Dies ist sinnvoll, wenn die mit Cloud KMS-Schlüsseln verschlüsselten Daten im selben Projekt gespeichert sind.

Jeder Nutzer mit owner-Zugriff auf das Projekt kann dann jedoch in diesem Projekt ebenfalls Schlüssel in Cloud KMS verwalten und kryptografische Vorgänge ausführen. Das liegt daran, dass die Schlüssel zu dem Projekt gehören, dessen owner der Nutzer ist.

Um hier eine Aufgabentrennung zu ermöglichen, können Sie Cloud KMS in einem eigenen Projekt ausführen, beispielsweise your-key-project. Je nachdem, wie strikt die Aufgabentrennung durchgesetzt werden muss, können Sie so vorgehen:

  • (Empfohlen) Erstellen Sie your-key-project ohne owner auf Projektebene. Richten Sie stattdessen einen Organisationsadministrator auf Organisationsebene ein. Der Organisationsadministrator kann im Gegensatz zum owner keine Schlüssel verwalten oder verwenden. Er hat jedoch die Berechtigung, Cloud IAM-Richtlinien festzulegen, mit denen Berechtigungen für die Verwaltung und Verwendung von Schlüsseln eingeschränkt werden können. Mit einem Knoten auf Organisationsebene können Sie Berechtigungen für Projekte in Ihrer Organisation weiter einschränken. Im nächsten Abschnitt lernen Sie Alternativen zur Rolle owner für Cloud KMS kennen.
  • (Nicht empfohlen) Weisen Sie die Rolle owner für your-key-project einem anderen Nutzer als dem des Projekts your-project zu, in dem die Cloud KMS-Schlüssel verwendet werden. Dieser Nutzer hat dann allerdings Zugriff auf alle Schlüsselvorgänge.

Die richtigen Cloud IAM-Rollen auswählen

In kleineren Organisationen bieten die einfachen Rollen owner, editor und viewer einen ausreichenden Detaillierungsgrad für die Schlüsselverwaltung. In größeren Organisationen, in denen eine Aufgabentrennung erforderlich ist, gewährt die Rolle owner einen uneingeschränkten Zugriff auf vertrauliche Sicherheitsvorgänge und ist deshalb möglicherweise nicht ideal. In diesem Fall werden stattdessen vordefinierte Rollen empfohlen:

  • Für Geschäftsinhaber mit Verschlüsselungsbedarf auf Anwendungsebene: Verwenden Sie die Organisationsadministrator-Rolle auf Organisationsebene.

  • Für Nutzer, die Cloud KMS verwalten, z. B. ein Mitglied des IT-Sicherheitsteams der Organisation: Die beiden Rollen mit den erforderlichen Mindestberechtigungen für die Verwaltung von Cloud KMS über die Cloud Console sind die vordefinierte Rolle des Projektbearbeiters (editor) oder eine benutzerdefinierte Rolle basierend auf der Cloud KMS-Administratorrolle (cloudkms.admin) verbunden mit den folgenden Berechtigungen:

    • serviceusage.quotas.get
    • serviceusage.services.get
    • resourcemanager.projects.get

    Informationen zum Erstellen einer benutzerdefinierten Rolle finden Sie unter Benutzerdefinierte Rolle erstellen. Wenn der Nutzer Cloud KMS nur mit dem gcloud-Tool und der Cloud KMS API verwaltet, verfügt die vordefinierte Cloud KMS-Administratorrolle über ausreichende Berechtigungen. Die Berechtigungen serviceusage.quotas.get, serviceusage.services.get und resourcemanager.projects.get sind dann nicht erforderlich.

  • Für Nutzer oder Dienste, die Schlüssel für Verschlüsselungs- oder Entschlüsselungsvorgänge verwenden: Verwenden Sie ein Dienstkonto für Cloud KMS auf Projektebene mit der Rolle "Verschlüsseler/Entschlüsseler" (cloudkms.cryptoKeyEncrypterDecrypter). Wenn der Dienst entweder nur Daten schreiben oder nur Daten lesen muss, können Sie die Nutzung weiter beschränken. Dazu weisen Sie nur die Verschlüsseler-Rolle (cloudkms.cryptoKeyEncrypter) oder nur die Entschlüsseler-Rolle (cloudkms.cryptoKeyDecrypter) zu.

Wenn Sie ein separates Projekt für Cloud KMS und die oben empfohlenen Rollen erstellen, können Sie mehrere Sicherheitsbedenken hinsichtlich der Aufgabentrennung ausräumen:

  • Nutzer, die für die Verwendung eines anderen Google Cloud-Dienstes eine primäre Rolle auf Projektebene benötigen, können mit dieser Berechtigung nicht auf Cloud KMS zugreifen.
  • Kein Nutzer benötigt die Rolle owner, deren Berechtigungen einen allzu umfassenden Zugriff auf Schlüssel ermöglichen. Ohne owner kann kein Nutzer Schlüssel verwalten oder verwenden, um Daten standardmäßig direkt zu verschlüsseln oder zu entschlüsseln. Wenn keine Datenzugriffslogs aktiviert sind, kann ein owner möglicherweise ungeprüft auf Schlüsselmaterial zugreifen.