Beispiele für Sicherheits-Policys

Erfahren Sie, wie Sie mit Policys Service-Level-Administratoren für die geringste Berechtigung erstellen, die Möglichkeit von Administratoren einschränken, die Gruppenmitgliedschaft von Mandantenadministratoren zu ändern, und wie Sie verhindern, dass Administratoren Sicherheits-Policys löschen oder aktualisieren, und wie Sie verhindern, dass sie auf Benutzerzugangsdaten zugreifen oder diese ändern.

Allgemeine Beispiele für IAM-Sicherheits-Policys finden Sie unter Allgemeine Policys. In allen folgenden Beispielen sind die Policys einem Mandanten zugeordnet. Wenn Sie jedoch einen Compartment-Namen angeben, können Sie die Policys auf bestimmte Compartments in einem Mandanten begrenzen.

Administratoren auf Serviceebene für die geringste Berechtigung erstellen

Um das Least-Privilege-Sicherheitsprinzip zu implementieren, können Sie Administratoren auf Serviceebene im Mandanten erstellen, um den Administrationszugriff weiter einzuschränken. Dies bedeutet, dass Administratoren auf Serviceebene nur Ressourcen eines bestimmten Service verwalten können. Beispiel: Netzwerkadministratoren benötigen nur Administratorzugriff (manage) auf VCN-Ressourcen, nicht aber auf andere Ressourcen. Das folgende Beispiel zeigt, wie Administratorgruppen für Block Storage (VolumeAdmins), VCN (NetworkAdmins), Database (DBAdmins) und Object Storage (StorageAdmins) erstellt werden.

Allow group TenancyAdmins to manage all-resources in tenancy
Allow group VolumeAdmins to manage volume-family in tenancy
Allow group NetworkAdmins to manage virtual-network-family in tenancy
Allow group StorageAdmins to manage object-family in tenancy
Allow group DBAdmins to manage database-family in tenancy

Sie können die Sicherheits-Policys weiter auf ein bestimmtes Compartment beschränken. Beispiel: Die HR-Abteilung in einem Unternehmen kann die Gruppe HRAdmins erstellen, um Ressourcen innerhalb des Compartments HR-compartment zu verwalten. Die Gruppe HRNetworkAdmins hat nur administrativen Zugriff auf VCN-Ressourcen im Compartment HR-compartment.

Allow group HRAdmins to manage all-resources in compartment HR-compartment
Allow group HRNetworkAdmins to manage virtual-network-family in compartment HR-compartment

Complianceauditoren müssen Cloud-Ressourcen prüfen und Policy-Verletzungen verifizieren. Mit der folgenden Policy kann die Gruppe InternalAuditors alle Ressourcen in einem Mandanten prüfen (list).

Allow group InternalAuditors to inspect all-resources in tenancy

Wenn Sie möchten, dass Auditoren nur Benutzer und Gruppen in einem Mandanten prüfen können, können Sie die Gruppe UserAuditors mit der folgenden Policy erstellen:

Allow group UserAuditors to inspect users in tenancy
Allow group UserAuditors to inspect groups in tenancy

Wenn Sie eine Auditorengruppe erstellen möchten, die nur VCN-Firewalls im Mandanten prüfen kann, verwenden Sie die folgende Policy:

Allow group FirewallAuditors to inspect security-lists in tenancy

In allen Policy-Beispielen können Sie die Policys auf ein Compartment beschränken, indem Sie Compartment <name> angeben (wobei <name> der Compartment-Name ist).

Möglichkeit zum Ändern der Mitgliedschaft bei der Mandantenadministratorgruppe einschränken

Mitglieder der Gruppe Administrators können alle Ressourcen in einem Mandanten verwalten. Die Mitgliedschaft bei der Gruppe Administrators wird von Benutzern in der Gruppe kontrolliert. In der Regel empfiehlt es sich, eine Gruppe zu haben, die Benutzer im Mandanten erstellt und hinzufügt, die jedoch keine Änderungen an der Mitgliedschaft bei der Gruppe Administrators vornehmen darf. Im folgenden Beispiel wird zu diesem Zweck die Gruppe UserAdmins erstellt.

Allow group UserAdmins to inspect users in tenancy
Allow group UserAdmins to inspect groups in tenancy
Allow group UserAdmins to use users in tenancy
 where target.group.name!='Administrators'
Allow group UserAdmins to use groups in tenancy
 where target.group.name!='Administrators'

Die Verwendung des Verbs mit Bedingungen (dritte und vierte Policy-Anweisung) ermöglicht es UserAdmins, Benutzer und Gruppen mit APIs (UpdateUser, UpdateGroup) zu allen Gruppen im Mandanten hinzuzufügen, mit Ausnahme der Gruppe Administrators. Da target.group.name!='Administrators jedoch nicht mit den APIs list und get verknüpft ist (ListUsers, GetUser, ListGroups und GetGroup), werden diese APIs nicht erfolgreich sein. Sie müssen also explizit das Verb inspect (erste und zweite Policy-Anweisung) hinzufügen, damit UserAdmins Benutzer- und Gruppenmitgliedschaftsinformationen abrufen kann.

Löschen oder Aktualisieren von Sicherheits-Policys verhindern

Im folgenden Beispiel wird die Gruppe PolicyAdmins erstellt, die Sicherheits-Policys erstellen und von Mandantenadministratoren erstellte Sicherheits-Policys auflisten, aber nicht löschen oder aktualisieren kann.

Allow group PolicyAdmins to use policies in tenancy
Allow group PolicyAdmins to manage policies in tenancy
 where request.permission='POLICY_CREATE'

Diese Sicherheits-Policy-Anweisung lässt explizit nur die Berechtigung POLICY_CREATE zu, nicht jedoch POLICY_DELETE und POLICY_UPDATE.

Administratoren daran hindern, Benutzerzugangsdaten abzurufen oder zu ändern

Einige Complianceanforderungen verlangen die Trennung von Aufgaben, insbesondere wenn Benutzerzugangsdaten und Mandant getrennt verwaltet werden. In diesem Fall können Sie zwei Administrationsgruppen erstellen, TenancyAdmins und CredentialAdmins. Die Gruppe TenancyAdmins kann alle Mandantenverwaltungsfunktionen mit Ausnahme der Verwaltung von Benutzerzugangsdaten ausführen, die Gruppe CredentialAdmins kann dagegen Benutzerzugangsdaten verwalten. TenancyAdmins kann auf alle APIs zugreifen, mit Ausnahme der APIs, die Benutzerzugangsdaten auflisten, aktualisieren oder löschen. CredentialAdmins kann nur die Benutzerzugangsdaten verwalten.

Allow group TenancyAdmins to manage all resources in tenancy
 where all {request.operation!='ListApiKeys',
            request.operation!='ListAuthTokens',
            request.operation!='ListCustomerSecretKeys',
            request.operation!='UploadApiKey',
            request.operation!='DeleteApiKey',
            request.operation!='UpdateAuthToken',
            request.operation!='CreateAuthToken',
            request.operation!='DeleteAuthToken',
            request.operation!='CreateSecretKey',
            request.operation!='UpdateCustomerSecretKey',
            request.operation!='DeleteCustomerSecretKey'}
Allow group CredentialAdmins to manage users in tenancy
 where any {request.operation='ListApiKeys',
            request.operation='ListAuthTokens',
            request.operation='ListCustomerSecretKeys',
            request.operation='UploadApiKey',
            request.operation='DeleteApiKey',
            request.operation='UpdateAuthToken',
            request.operation='CreateAuthToken',
            request.operation='DeleteAuthToken',
            request.operation='CreateSecretKey',
            request.operation='UpdateCustomerSecretKey',
            request.operation='DeleteCustomerSecretKey'}