Zugriff gewähren und widerrufen

Jedes Subjekt – ein Nutzer oder eine Gruppe – durchläuft einen zweistufigen Prozess, um Zugriff auf den globalen API-Server zu erhalten. Gewähren Sie einem Subjekt mit Berechtigungen auf dem globalen API Server mithilfe von IAMRoleBinding Zugriff auf eine vordefinierte IAMRole. Alle Rollen und Rollenbindungen sind global.

Diese Seite richtet sich an Zielgruppen in der Gruppe der Plattformadministratoren, die Berechtigungen in ihrer Organisation verwalten. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.

Hinweis

Bevor Sie Rollenbindungen verwalten oder den Zugriff widerrufen, müssen Sie die erforderlichen Berechtigungen anfordern und Ihre Umgebung vorbereiten. Die erforderlichen Rollen hängen davon ab, ob Sie Rollenbindungen verwalten oder den Nutzerzugriff widerrufen.

IAM-Rollen anfordern

Wenden Sie sich an Ihren IAM-Administrator der Organisation, um die Rollen basierend auf den Aufgaben anzufordern, die Sie ausführen müssen:

  • IAM-Administrator der Organisation (organization-iam-admin): Rollenbindungen auf Organisations- und Projektebene erstellen, aktualisieren und löschen.
  • Sitzungsadministrator der Organisation (org-session-admin): Aktive Sitzungen und den Zugriff eines Nutzers in einer bestimmten Zone widerrufen.

Umgebung vorbereiten

Führen Sie die folgenden Schritte aus, um die Befehlszeilentools zum Verwalten von Rollenbindungen oder zum Widerrufen des Zugriffs zu verwenden.

Rollenbindungen einrichten

Sie können Rollenbindungen einrichten, die Teammitgliedern Zugriff auf Ressourcen auf Organisations- oder Projektebene gewähren.

Weisen Sie einem autorisierten Mitglied eine Rolle zu:

Console

  1. Melden Sie sich in der GDC-Konsole an.
  2. Wählen Sie in der Bereichsauswahl eine Organisation oder ein Projekt aus.
    • Wenn Sie Rollenbindungen für eine Organisation einrichten möchten, wählen Sie eine Organisation aus.
    • Wenn Sie Rollenbindungen für ein Projekt einrichten möchten, wählen Sie ein Projekt aus.
  3. Klicken Sie im Navigationsmenü auf Identität und Zugriff > Zugriff.
  4. Klicken Sie auf Mitglied hinzufügen.
  5. Wählen Sie aus, ob Sie einzelne Nutzer oder Gruppen hinzufügen möchten.
  6. Wählen Sie in der Liste Identitätsanbieter einen Identitätsanbieter aus.
  7. Geben Sie im Feld Nutzername oder Gruppenalias den Nutzernamen, die E-Mail-Adresse oder den Alias ein.
  8. Wählen Sie in der Liste Rolle die Rolle aus, die Sie dem Nutzer oder der Gruppe zuweisen möchten, z. B. Organisationsbetrachter auf Organisationsebene oder Projektersteller auf Projektebene.
  9. Klicken Sie auf Hinzufügen.

Das Mitglied wird in der Liste Autorisiertes Mitglied angezeigt.

gdcloud

  1. Prüfen Sie, ob die gdcloud CLI installiert ist.

  2. Melden Sie sich mit dem Befehl gdcloud auth login an, um sich bei Ihrem Identitätsanbieter zu authentifizieren. Weitere Informationen finden Sie unter gdcloud CLI-Authentifizierung.

  3. Rollenbindungen einrichten.

    • Rollenbindungen für eine Organisation einrichten:

      gdcloud organizations add-iam-policy-binding ORGANIZATION \
        --member=USER_ACCOUNT \
        --role=ROLE
      

      Ersetzen Sie die folgenden Variablen:

      • ORGANIZATION: Der Name der Organisation, für die Sie die Rollenbindung einrichten.
      • USER_ACCOUNT: Das Nutzerkonto, dem Sie die Rolle zuweisen möchten. Für dieses Flag kann entweder eine E-Mail-Adresse des Nutzers mit dem Präfix des Identitätsanbieters (user:idpprefix-user@example.com) oder ein Dienstkontoname mit dem Dienstkontoprojekt (serviceAccount:projectName:serviceAccountName) verwendet werden.
      • ROLE: Der Name der vordefinierten oder benutzerdefinierten Rolle, die Sie dem Nutzer zuweisen möchten.
    • Rollenbindungen für ein Projekt einrichten:

      gdcloud projects add-iam-policy-binding PROJECT \
        --member=USER_ACCOUNT \
        --role=ROLE
      

      Ersetzen Sie die folgenden Variablen:

      • PROJECT: Der Name des Projekts, für das Sie die Rollenbindung einrichten.
      • USER_ACCOUNT: Das Nutzerkonto, dem Sie die Rolle zuweisen möchten. Für dieses Flag kann entweder eine E-Mail-Adresse des Nutzers mit dem Präfix des Identitätsanbieters (user:idpprefix-user@example.com) oder ein Dienstkontoname mit dem Dienstkontoprojekt (serviceAccount:projectName:serviceAccountName) verwendet werden.
      • ROLE: Der Name der vordefinierten oder benutzerdefinierten Rolle, die Sie dem Nutzer zuweisen möchten.

API

  1. Exportieren Sie die Anmeldedaten des Nutzers, die Sie verwenden:

    export GLOBAL_API_SERVER_KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIG
    
  2. Exportieren Sie das Nutzerkonto, dem Sie die Rolle zuweisen möchten, einschließlich des Präfixes des Identitätsanbieters (z. B. idpprefix-paul@example.com):

    export USERNAME=IDP_PREFIX-USER_EMAIL
    
  3. Exportieren Sie den Namen der Rolle, die der Nutzer benötigt, z. B. project-creator. Die entsprechende Rolle finden Sie unter Rollendefinitionen.

    export ROLE_NAME=ROLE_NAME
    
  4. Exportieren Sie den Namespace, in dem die Bindung erstellt werden muss:

    export BINDING_NAMESPACE=BINDING_NAMESPACE
    

    Ersetzen Sie BINDING_NAMESPACE durch platform für Rollen auf Organisationsebene oder durch den Namen des Namespace des Zielprojekts für Rollen auf Projektebene.

    Eine Liste der Rollen und ihres Bereichs finden Sie unter Rollendefinitionen.

  5. Erstellen und wenden Sie eine benutzerdefinierte IAMRoleBinding-Ressource an:

    cat <<EOF | kubectl --kubeconfig ${GLOBAL_API_SERVER_KUBECONFIG} apply -f -
    apiVersion: iam.global.gdc.goog/v1
    kind: IAMRoleBinding
    metadata:
      name: ${USERNAME}-${ROLE_NAME}-binding
      namespace: ${BINDING_NAMESPACE}
    spec:
      roleRef:
        apiGroup: iam.global.gdc.goog
        kind: IAMRole
        name: ${ROLE_NAME}
      subjects:
      - apiGroup: rbac.authorization.k8s.io
        kind: User
        name: ${USERNAME}
    EOF
    

Rollenbindungen entfernen

Wenn kein Zugriff mehr erforderlich ist, entfernen Sie ein Mitglied und die zugehörigen Rollen, Berechtigungen und Zugriffsrechte.

So entfernen Sie Mitglieder:

Console

  1. Melden Sie sich in der GDC-Konsole an.
  2. Klicken Sie im Navigationsmenü auf Identität und Zugriff > Zugriff.
  3. Wählen Sie in der Liste Autorisierte Mitglieder ein Mitglied aus.
  4. Klicken Sie auf Mitglied entfernen.
  5. Wenn Sie dazu aufgefordert werden, klicken Sie zur Bestätigung auf Mitglied entfernen.

gdcloud

  1. Prüfen Sie, ob die gdcloud CLI installiert ist.

  2. Melden Sie sich mit dem Befehl gdcloud auth login an, um sich bei Ihrem Identitätsanbieter zu authentifizieren. Weitere Informationen finden Sie unter gdcloud CLI-Authentifizierung.

  3. Rollenbindungen entfernen.

    • Rollenbindungen für eine Organisation entfernen:

      gdcloud organizations remove-iam-policy-binding ORGANIZATION \
        --member=USER_ACCOUNT \
        --role=ROLE
      

      Ersetzen Sie die folgenden Variablen:

      • ORGANIZATION: Der Name der Organisation, aus der Sie die Rollenbindung entfernen.
      • USER_ACCOUNT: Das Nutzerkonto, aus dem Sie die Rolle entfernen möchten. Für dieses Flag kann entweder eine E-Mail-Adresse des Nutzers mit dem Präfix des Identitätsanbieters (user:idpprefix-user@example.com) oder ein Dienstkontoname mit dem Dienstkontoprojekt (serviceAccount:projectName:serviceAccountName) verwendet werden.
      • ROLE: Der Name der vordefinierten oder benutzerdefinierten Rolle, die Sie aus dem Nutzerkonto entfernen möchten.
    • Rollenbindungen für ein Projekt entfernen:

      gdcloud projects remove-iam-policy-binding PROJECT \
        --member=USER_ACCOUNT \
        --role=ROLE
      

      Ersetzen Sie die folgenden Variablen:

      • PROJECT: Der Name des Projekts, aus dem Sie die Rollenbindung entfernen.
      • USER_ACCOUNT: Das Nutzerkonto, aus dem Sie die Rolle entfernen möchten. Für dieses Flag kann entweder eine E-Mail-Adresse des Nutzers mit dem Präfix des Identitätsanbieters (user:idpprefix-user@example.com) oder ein Dienstkontoname mit dem Dienstkontoprojekt (serviceAccount:projectName:serviceAccountName) verwendet werden.
      • ROLE: Der Name der vordefinierten oder benutzerdefinierten Rolle, die Sie aus dem Nutzerkonto entfernen möchten.

kubectl

Löschen Sie IAMRoleBinding, um die dem PA-Konto gewährte Berechtigung zu widerrufen:

kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG \
delete iamrolebinding USERNAME-ROLE_NAME-binding -n BINDING_NAMESPACE

Ersetzen Sie Folgendes:

  • GLOBAL_API_SERVER_KUBECONFIG: Der Pfad zur kubeconfig-Datei für den Zugriff auf den globalen API-Server.
  • USERNAME: Das Nutzerkonto, für das Sie die Rolle entfernen möchten, einschließlich des Präfixes des Identitätsanbieters (z. B. idpprefix-paul@example.com).
  • ROLE_NAME: Der Name der Rolle, die Sie entfernen möchten, z. B. project-creator.
  • BINDING_NAMESPACE: Ersetzen Sie durch platform für Rollen auf Organisationsebene oder durch den Namen des Namespace des Zielprojekts für Rollen auf Projektebene.

Nutzerzugriff widerrufen

Wenn ein Mitglied Ihre Organisation oder Ihr Team verlässt, können Sie den Zugriff auf Google Distributed Cloud (GDC) mit Air Gap widerrufen. Wenn Sie den Zugriff eines Nutzers widerrufen, wird er aus Distributed Cloud abgemeldet und seine Rollen und Berechtigungen werden entfernt. Sie können auch die Aktivitäten und Sitzungen des Nutzers anhand der Start- und Endzeit auflisten.

Wenn Sie den Zugriff eines Nutzers in einem GDC-Universum widerrufen möchten, müssen Sie den Zugriff für jede einzelne Zone separat widerrufen. Führen Sie die folgenden Schritte für jede Zone aus:

  1. Prüfen Sie, ob Sie in der Zone angemeldet sind, für die Sie den Zugriff widerrufen möchten. Legen Sie beispielsweise die zonale URL-Konfiguration für die gdcloud CLI fest und melden Sie sich dann an:

    gdcloud config set organization_console_url ZONE_URL
    gdcloud auth login
    

    Ersetzen Sie ZONE_URL durch die GDC-Konsolen-URL für die Zone, für die Sie den Nutzerzugriff widerrufen möchten. Sie ähnelt https://console.ORG_NAME.ZONE_NAME.ORG_SUFFIX.

    Weitere Informationen zum Wechseln von Zonenkontexten finden Sie unter Mit Ihren Tools auf Zonen zugreifen.

  2. Widerrufen Sie den Zugriff des Nutzers für die Zone:

    gdcloud admin auth revoke --accounts USER_EMAIL
    

    Ersetzen Sie USER_EMAIL durch die E-Mail-Adresse des Nutzers, für den Sie den Zugriff widerrufen möchten.

    Nach dem Ausführen des Befehls wird eine Ausgabe ähnlich der folgenden angezeigt. In diesem Beispiel wird der Zugriff für den Nutzer ariel@example.com widerrufen:

    Success: NUMBER of sessions revoked for user ariel@example.com
    

    In diesem Beispiel bezieht sich die Variable NUMBER auf die Anzahl der aktiven Sitzungen des Nutzers.

  3. Bestätigen Sie, dass Sie den Zugriff des Nutzers widerrufen haben, indem Sie den Befehl gdcloud admin auth revoke noch einmal ausführen. Wenn der Vorgang erfolgreich war, wird Folgendes angezeigt:

    No sessions found for account: ariel@example.com
    
  4. Wiederholen Sie die vorherigen Schritte für jede Zone in Ihrem Universum.