Integration mit Rancher RBAC

Beginnend mit SUSE® Security 5.4 wurde die vollständige Kompatibilität und Integration von SUSE® Security mit Rancher RBAC aufgenommen. Dies bietet den Benutzern die Möglichkeit, spezifische Berechtigungen basierend auf dem Profil des Benutzers oder der Gruppe, die auf SUSE® Security zugreifen soll, anzupassen.

In der Rancher-Konsole, Benutzer & AuthentifizierungRollenvorlagen Seite können Kunden globale, Cluster-, Projekt- und Namespace-Rollen mit spezifischen SUSE® Security Verben, Ressourcen und API-Gruppen erstellen. Wenn eine solche Rancher-Rolle einem Rancher-Benutzer zugewiesen wird, wird der SUSE® Security SSO-Sitzung des Benutzers entsprechend unterschiedlichen SUSE® Security Berechtigungen zugewiesen. Dies dient dazu, SSO-Benutzern benutzerdefinierte Rollen (das heißt, Rollen, die von den reservierten Rollen admin, reader, fedAdmin und fedReader abweichen) bereitzustellen.

Unterstützte benutzerdefinierte SUSE® Security Rollenabbildungen in Rancher SSO

Im Folgenden sind unterstützte Rollenabbildungen für SUSE® Security Verben, Ressourcen und API-Gruppen aufgeführt, die in der Rancher-Benutzeroberfläche unter Benutzer & AuthentifizierungRollenvorlagenGlobale, Cluster- oder Projektrollen-Vorlage erstellen verwendet werden.

  • APIGruppe: permission.neuvector.com

  • Verben:

    • get → nur-lesend (anzeigen)

    • * → Lese/Schreib- (modifizieren)

  • Ressourcen (cluster-spezifisch):

    • AdmissionControl

    • Authentifizierung

    • CI-Scan

    • Cluster

    • Zusammenschluss

    • Vulnerability

  • Ressourcen (namespaced):

    • AuditEvents

    • Autorisierung

    • Compliance

    • Ereignisse

    • Namespace

    • RegistryScan

    • RuntimePolicy

    • RuntimeScan

    • SecurityEvents

    • SystemConfig

Ressourcendarstellung und logische Namenszuordnung

Die folgende Tabelle veranschaulicht die logischen Namen der Ressourcen.

Ressourcendarstellung Logischer Name

Alle Berechtigungen

nv-perm.all-permissions

Zulassungssteuerung

nv-perm.admctrl

Audit für Ereignisse durchführen

nv-perm.audit-events

Authentifizierung

nv-perm.authentication

Autorisierung

nv-perm.authorization

CI-Scan

nv-perm.ci-scan

Compliance

nv-perm.compliance

Ereignisse

nv-perm.events

Zusammenschluss

nv-perm.fed

Registry-Scan

nv-perm.reg-scan

Laufzeitrichtlinie

nv-perm.rt-policy

Laufzeitscan

nv-perm.rt-scan

Sicherheitsereignisse

nv-perm.security-events

Systemkonfiguration

nv-perm.config

Schwachstellenprofil

nv-perm.vulnerability

Diese Integration unterstützt Rollen auf globaler, Cluster-, Projekt- und Namespace-Ebene. Benutzer müssen Regeln anpassen und erstellen, basierend auf ihren Anforderungen und Berechtigungen für SSO.

Definitionen und Erwartungen mit globalen, Cluster- und Projekt/Namespace-Rollen

  • Cluster-Ressource mit * Verb auf einer globalen Rancher-Rolle:

    • Zugeordnet zur SUSE® Security fedAdmin Rolle im SUSE® Security Föderations-Master-Cluster (Benutzer können eine globale Rancher-Rolle nicht einer SUSE® Security admin Rolle zuordnen, wenn SUSE® Security auf einem Föderations-Master-Cluster bereitgestellt wird.)

    • Zugeordnet zur SUSE® Security admin Rolle auf SUSE® Security föderationsverwalteten Clustern

  • Cluster-Ressource mit * Verb auf Rancher Cluster-Rollen:

    • Immer zugeordnet zur SUSE® Security cluster-admin Rolle

  • Namespace-Ressource mit * Verb auf Rancher Projekt-Rollen:

    • Immer zugeordnet zur SUSE® Security namespace-admin Rolle

Anwendungsfälle und Beispiele

Anwendungsfall 1

  • Verwenden Sie eine globale Rolle, um Laufzeitscans aus einer SUSE® Security SSO-Sitzung auf allen von Rancher Manager verwalteten Clustern außer dem lokalen Cluster durchzuführen. Benutzer müssen Clusterrollen erstellen, um die globale Rolle auf alle Downstream-Cluster zu propagieren.

    • Erstellen Sie eine Cluster-Rollenvorlage mit den folgenden Parametern:

      Verb: *
      Resource: RuntimeScan
      API: permission.neuvector.com
    • Erstellen Sie eine Projekt- oder Namespace-Rolle, um den UI-Zugriff zu ermöglichen und SSO zu aktivieren. Sie müssen diese Rolle dem Projekt hinzufügen, damit es korrekt funktioniert:

      Verb: get, patch, create
      Resource: services/proxy
      API: neuvector.com
    • Erstellen Sie eine globale Rolle, um die Cluster-Rolle über Downstream-Cluster zu erben:

      apiVersion: management.cattle.io/v3
      kind: GlobalRole
      displayName: All Downstream NV RT scan
      metadata:
        name: all-downstream-nvrtscan
      inheritedClusterRoles:
      - rt-gpmbs
    • Erstellen Sie einen Standardbenutzer und weisen Sie die globale Rolle zu.

    • Erstellen Sie eine Projektrollenbindung für alle Downstream-Cluster für das Projekt, das den cattle-neuvector-system Namespace enthält.

    • Melden Sie sich bei Rancher Manager an und starten Sie SUSE® Security von einem beliebigen Downstream-Cluster. Der Benutzer kann Laufzeitscan-Aufgaben wie Container-Scans, Knoten-Scans und das Durchsuchen von Schwachstellen durchführen. Dies gilt auch für neu hinzugefügte Cluster.

Anwendungsfall 2

  • Erstellen Sie einen FedAdmin-Benutzer. Melden Sie sich immer als FedAdmin über den Föderations-Master-Cluster an. Wenn die Umgebung nicht föderiert ist, werden die Rollen auf Leser oder Administrator herabgestuft.

    • Erstellen Sie eine globale Rolle:

      Verb: *
      Resource: All permissions
      API: nv-perm.all-permissions
    • Erstellen Sie eine Projekt- oder Namespace-Rolle, um den UI-Zugriff zu ermöglichen und SSO zu aktivieren:

      Verb: get, patch, create
      Resource: services/proxy
      API: neuvector.com
    • Erstellen Sie einen Standardbenutzer und weisen Sie die globale Rolle zu.

    • Gehen Sie in der Rancher UI zu Master ClusterCluster- und ProjektmitgliederProjektmitgliedschaftHinzufügen. Fügen Sie den Benutzer hinzu und weisen Sie die UI-Proxy-Projektrolle zu.

    • Melden Sie sich bei Rancher Manager an und starten Sie SUSE® Security von einem Downstream-Cluster. SUSE® Security liest die globale Rancher-Rolle und weist die entsprechende Berechtigung zu (FedAdmin).

Um zwischen FedAdmin und FedReader zu wechseln, ändern Sie das Verb von * zu get. Das get Verb bietet nur Lesezugriff.

Anwendungsfall 3

Ein Benutzer kann eine begrenzte Anzahl von Leseaufgaben ausführen und eine begrenzte Anzahl von Aufgaben in einem Cluster ändern.

Anwendungsfall 4

Ein Benutzer kann Leseaufgaben in ausgewählten Domänen ausführen und Aufgaben in anderen Domänen innerhalb eines Clusters ändern.

Anwendungsfall 5

Ein Benutzer erhält Berechtigungen, indem er globale, Cluster- und Projektrollen kombiniert.

Zusätzliche Überlegungen

  • Verwenden Sie diese Dokumentation und Parameter als Referenz, wenn Sie SSO- und RBAC-Regeln erstellen.

  • Bei Fehlern oder erweiterten Anwendungsfällen wenden Sie sich an den SUSE-Support über SCC.

  • SUSE® Security 5.4 ist rückwärtskompatibel mit SSO-Rollenabbildungen vor 5.4. Für die vorherige Struktur siehe https://github.com/horantj/rancher-nv-rbac.

Beginnend mit SUSE® Security 5.4 wurde die vollständige Kompatibilität und Integration von SUSE® Security mit Rancher RBAC aufgenommen. Dies bietet den Benutzern die Möglichkeit, spezifische Berechtigungen basierend auf dem Profil des Benutzers oder der Gruppe, die auf SUSE® Security zugreifen soll, anzupassen.

In der Rancher-Konsole, Benutzer & AuthentifizierungRollenvorlagen Seite können Kunden globale, Cluster-, Projekt- und Namespace-Rollen mit spezifischen SUSE® Security Verben, Ressourcen und API-Gruppen erstellen. Wenn eine solche Rancher-Rolle einem Rancher-Benutzer zugewiesen wird, wird der SUSE® Security SSO-Sitzung des Benutzers entsprechend unterschiedlichen SUSE® Security Berechtigungen zugewiesen. Dies dient dazu, SSO-Benutzern benutzerdefinierte Rollen (das heißt, Rollen, die von den reservierten Rollen admin, reader, fedAdmin und fedReader abweichen) bereitzustellen.