Aktuelle Nutzung von Dienstkonten und Schlüsseln ansehen

Auf dieser Seite erfahren Sie, wie Sie mithilfe der Aktivitätsanalyse feststellen, wann Ihre Dienstkonten und Schlüssel zuletzt zum Aufrufen einer Google API verwendet wurden. Diese Nutzungen werden als Authentifizierungsaktivitäten bezeichnet.

Anhand der letzten Authentifizierungsaktivität können Sie Dienstkonten und Dienstkontoschlüssel ermitteln, die Sie nicht mehr verwenden. Wir empfehlen, diese nicht verwendeten Dienstkonten und Schlüssel zu deaktivieren oder zu löschen, da sie ein unnötiges Sicherheitsrisiko darstellen.

Hinweise

Erforderliche Rollen

Um die Berechtigungen zu erhalten, die Sie zum Auflisten der neuesten Authentifizierungsaktivitäten für Ihre Dienstkonten und Dienstkontoschlüssel benötigen, bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Betrachter von Aktivitätsanalysen (roles/policyanalyzer.activityAnalysisViewer) für das Projekt zu gewähren. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Auflisten der neuesten Authentifizierungsaktivitäten für Ihre Dienstkonten und Dienstkontoschlüssel erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um die neuesten Authentifizierungsaktivitäten für Ihre Dienstkonten und Dienstkontoschlüssel aufzulisten:

  • policyanalyzer.serviceAccountKeyLastAuthenticationActivities.query
  • policyanalyzer.serviceAccountLastAuthenticationActivities.query

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Letzte Nutzung für alle Dienstkonten oder Schlüssel ansehen

Verwenden Sie die Google Cloud CLI oder die REST API, um die Daten der letzten Authentifizierungsaktivitäten für alle Ihre Dienstkonten oder Dienstkontoschlüssel aufzulisten.

gcloud

Verwenden Sie den Befehl gcloud policy-intelligence query-activity, um die neuesten Authentifizierungsaktivitäten für Ihre Dienstkonten oder Schlüssel aufzulisten:

gcloud policy-intelligence query-activity --activity-type=ACTIVITY_TYPE \
    --project=PROJECT_ID --limit=LIMIT

Ersetzen Sie die folgenden Werte:

  • ACTIVITY_TYPE: Der Aktivitätstyp, den Sie auflisten möchten. Verwenden Sie serviceAccountLastAuthentication, um die neuesten Nutzungszeiten für Ihre Dienstkonten aufzulisten. Verwenden Sie serviceAccountKeyLastAuthentication, um die neuesten Nutzungszeiten für Ihre Dienstkontoschlüssel aufzulisten.
  • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
  • LIMIT: Optional. Maximale Anzahl der Ergebnisse, die zurückgegeben werden sollen. Der Standardwert ist 1000.

Die Antwort ähnelt der folgenden Liste, in der die aktuellen Nutzungszeiten für die Dienstkonten eines Projekts aufgeführt sind:

---
activity:
  lastAuthenticatedTime: '2021-04-27T07:00:00Z'
  serviceAccount:
    fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com
    projectNumber: '123456789012'
    serviceAccountId: '123456789012345678901'
activityType: serviceAccountLastAuthentication
fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com
observationPeriod:
  endTime: '2021-07-06T07:00:00Z'
  startTime: '2020-03-12T07:00:00Z'
---
activity:
  lastAuthenticatedTime: '2021-02-09T08:00:00Z'
  serviceAccount:
    fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-2@my-project.iam.gserviceaccount.com
    projectNumber: '123456789012'
    serviceAccountId: '234567890123456789012'
activityType: serviceAccountLastAuthentication
fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-2@my-project.iam.gserviceaccount.com
observationPeriod:
  endTime: '2021-07-06T07:00:00Z'
  startTime: '2020-09-01T07:00:00Z'

Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

REST

Verwenden Sie die Methode activities.query der Policy Analyzer API, um die neuesten Authentifizierungsaktivitäten für Ihre Dienstkonten oder Schlüssel aufzulisten.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
  • ACTIVITY_TYPE: Der Aktivitätstyp, den Sie auflisten möchten. Verwenden Sie serviceAccountLastAuthentication, um die letzten Nutzungen für alle Ihre Dienstkonten aufzulisten. Verwenden Sie serviceAccountKeyLastAuthentication, um die letzten Nutzungen für alle Ihre Dienstkontoschlüssel aufzulisten.
  • PAGE_SIZE: Optional. Die maximale Anzahl von Ergebnissen, die von dieser Anfrage zurückgegeben werden sollen. Wenn nicht angegeben, bestimmt der Server die Anzahl der zurückzugebenden Ergebnisse. Wenn die Anzahl der Aktivitäten die Seitengröße überschreitet, enthält die Antwort ein Seitenumbruchtoken, mit dem Sie die nächste Ergebnisseite abrufen können.
  • PAGE_TOKEN: Optional. Das Seitenumbruchtoken, das in einer früheren Antwort von dieser Methode zurückgegeben wurde. Wenn dieser Wert angegeben wird, beginnt die Liste der Aktivitäten dort, wo die vorherige Anfrage endet.

HTTP-Methode und URL:

GET https://policyanalyzer.googleapis.com/v1/projects/PROJECT_ID/locations/global/activityTypes/ACTIVITY_TYPE/activities:query?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Die Antwort ähnelt der folgenden, in der die letzten Nutzungszeiten für die Dienstkonten eines Projekts aufgeführt sind:

{
  "activities": [
    {
      "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com",
      "activityType": "serviceAccountLastAuthentication",
      "observationPeriod": {
        "startTime": "2020-04-20T07:00:00Z",
        "endTime": "2021-05-17T07:00:00Z"
      },
      "activity": {
        "lastAuthenticatedTime": "2021-04-28T07:00:00Z",
        "serviceAccount": {
          "projectNumber": "123456789012",
          "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com",
          "serviceAccountId": "123456789012345678901"
        }
      }
    },
    {
      "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-2@my-project.iam.gserviceaccount.com",
      "activityType": "serviceAccountLastAuthentication",
      "observationPeriod": {
        "startTime": "2020-04-20T07:00:00Z",
        "endTime": "2021-05-17T07:00:00Z"
      },
      "activity": {
        "lastAuthenticatedTime": "2021-04-29T07:00:00Z",
        "serviceAccount": {
          "projectNumber": "123456789012",
          "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-2@my-project.iam.gserviceaccount.com",
          "serviceAccountId": "234567890123456789012"
        }
      }
    }
  ],
  "nextPageToken": "AVgRrQV4b5nISN6cGJvTPFJ2v_"
}

Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

Aktuelle Nutzung für bestimmte Dienstkonten ansehen

Mit der Google Cloud Console, der gcloud CLI oder der REST API können Sie das Datum abrufen, an dem bestimmte Dienstkonten zuletzt verwendet wurden.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.

    Policy Analyzer aufrufen

  2. Suchen Sie unter Letzte Aktivitäten analysieren nach dem Bereich Wann wurde dieses Dienstkonto zuletzt verwendet? und klicken Sie dort auf Abfrage erstellen.

  3. Geben Sie im Feld Abfragebereich auswählen den Namen des Projekts ein, dessen Dienstkonten Sie analysieren möchten.

  4. Klicken Sie im Bereich Dienstkonten hinzufügen auf das Feld Dienstkonto. Es wird eine Liste aller Dienstkonten in Ihrem Projekt angezeigt. Die Liste enthält außerdem das Projekt, mit dem jedes Dienstkonto verknüpft ist, und die E-Mail-Adresse für jedes Dienstkonto.

  5. Wählen Sie das Dienstkonto aus, für das Sie die aktuelle Nutzung ansehen möchten.

  6. Optional: Wenn Sie die aktuelle Nutzung für mehrere Dienstkonten aufrufen möchten, klicken Sie auf Konto hinzufügen und wählen Sie ein anderes Dienstkonto aus. Sie können bis zu zehn Dienstkonten gleichzeitig analysieren.

  7. Klicken Sie im Bereich Zugriffsaktivitäten abfragen auf Abfrage ausführen.

Auf der Ergebnisseite wird die letzte Nutzung der Dienstkonten angezeigt. Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

gcloud

Verwenden Sie den Befehl gcloud policy-intelligence query-activity mit einem Filter, um die neueste Authentifizierungsaktivität für bestimmte Dienstkonten abzurufen:

gcloud policy-intelligence query-activity --activity-type=serviceAccountLastAuthentication \
    --project=PROJECT_ID \
    --query-filter='FILTER'

Ersetzen Sie die folgenden Werte:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
  • FILTER: Ein Filter, der die vollständigen Ressourcennamen der Dienstkonten angibt, deren Nutzung Sie sehen möchten. Der vollständige Ressourcenname eines Dienstkontos enthält die Projekt-ID und die E-Mail-Adresse des Dienstkontos.

    Wenn Sie nach einem einzelnen Dienstkonto filtern möchten, verwenden Sie einen Filter im folgenden Format:

    activities.full_resource_name="//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL"

    Wenn Sie nach mehreren Dienstkonten filtern möchten, verwenden Sie OR, um mehrere akzeptable vollständige Ressourcennamen anzugeben:

    activities.full_resource_name="//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_1_EMAIL" OR activities.full_resource_name="//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_2_EMAIL"

    Sie können nach bis zu zehn Dienstkonten filtern.

In der Antwort wird die letzte Nutzung der Dienstkonten beschrieben:

---
activity:
  lastAuthenticatedTime: '2021-04-27T07:00:00Z'
  serviceAccount:
    fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com
    projectNumber: '123456789012'
    serviceAccountId: '123456789012345678901'
activityType: serviceAccountLastAuthentication
fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com
observationPeriod:
  endTime: '2021-07-06T07:00:00Z'
  startTime: '2020-03-12T07:00:00Z'

Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

REST

Verwenden Sie die Methode activities.query der Policy Analyzer API, um die neueste Authentifizierungsaktivität für bestimmte Dienstkonten abzurufen.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
  • FILTER: Ein Filter, der die vollständigen Ressourcennamen der Dienstkonten angibt, deren Nutzung Sie sehen möchten.

    Wenn Sie nach einem einzelnen Dienstkonto filtern möchten, verwenden Sie einen Filter im folgenden Format:

    activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2FPROJECT_ID%2FserviceAccounts%2FSERVICE_ACCOUNT_EMAIL%22

    Wenn Sie nach mehreren Dienstkonten filtern möchten, geben Sie mit %20OR%20 mehrere zulässige vollständige Ressourcennamen an:

    activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2FPROJECT_ID%2FserviceAccounts%2FSERVICE_ACCOUNT_1_EMAIL%22%20OR%20activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2FPROJECT_ID%2FserviceAccounts%2FSERVICE_ACCOUNT_2_EMAIL%22

HTTP-Methode und URL:

GET https://policyanalyzer.googleapis.com/v1/projects/PROJECT_ID/locations/global/activityTypes/serviceAccountLastAuthentication/activities:query?filter=FILTER

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

In der Antwort wird die letzte Nutzung der Dienstkonten beschrieben:

{
  "activities": [
    {
      "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com",
      "activityType": "serviceAccountLastAuthentication",
      "observationPeriod": {
        "startTime": "2020-04-20T07:00:00Z",
        "endTime": "2021-05-17T07:00:00Z"
      },
      "activity": {
        "lastAuthenticatedTime": "2021-04-28T07:00:00Z",
        "serviceAccount": {
          "projectNumber": "123456789012",
          "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com",
          "serviceAccountId": "123456789012345678901"
        }
      }
    }
  ]
}

Aktuelle Nutzung bestimmter Dienstkontoschlüssel ansehen

Um das Datum zu ermitteln, an dem bestimmte Dienstkontoschlüssel verwendet wurden, suchen Sie den Dienstkontoschlüssel, für den Sie die aktuelle Nutzung sehen möchten, und erstellen Sie dann eine Abfrage mit dieser ID.

Wenn Sie die JSON-Schlüsseldatei haben, finden Sie die eindeutige ID des Dienstkontoschlüssels im Feld private_key_id der Datei.

Wenn Sie keine JSON-Schlüsseldatei haben, können Sie die eindeutige ID des Dienstkontoschlüssels so herausfinden:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Richtlinienanalyse auf.

    Policy Analyzer aufrufen

  2. Suchen Sie unter Letzte Aktivitäten analysieren nach dem Bereich Wann wurde dieser Dienstkontoschlüssel zuletzt verwendet? und klicken Sie dort auf Abfrage erstellen.

  3. Geben Sie im Feld Abfragebereich auswählen den Namen des Projekts ein, dessen Dienstkontoschlüssel Sie analysieren möchten.

  4. Klicken Sie im Abschnitt Dienstkontoschlüssel hinzufügen auf das Feld Dienstkontoschlüssel. Es wird eine Liste aller Dienstkontoschlüssel in Ihrem Projekt angezeigt. Die Liste enthält auch das Projekt und das Dienstkonto, mit dem jeder Schlüssel verknüpft ist.

  5. Wählen Sie den Schlüssel aus, für den Sie die letzten Nutzungen sehen möchten.

  6. Optional: Wenn Sie die letzte Nutzung für mehrere Schlüssel ansehen möchten, klicken Sie auf Schlüssel hinzufügen und wählen Sie einen anderen Schlüssel aus. Sie können bis zu 10 Tasten gleichzeitig analysieren.

  7. Klicken Sie im Bereich Zugriffsaktivitäten abfragen auf Abfrage ausführen.

Auf der Ergebnisseite wird die letzte Nutzung der Dienstkontoschlüssel angezeigt. Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

gcloud

Ermitteln Sie zuerst den Dienstkontoschlüssel, für den Sie die aktuelle Nutzung ansehen möchten:

  1. Listen Sie die Dienstkontoschlüssel auf:

    Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

    • SERVICE_ACCOUNT_EMAIL: Die E-Mail-Adresse des Dienstkontos, dem der Schlüssel zugeordnet ist.

    Führen Sie den Befehl gcloud iam service-accounts keys list aus:

    Linux, macOS oder Cloud Shell

    gcloud iam service-accounts keys list --iam-account=SERVICE_ACCOUNT_EMAIL

    Windows (PowerShell)

    gcloud iam service-accounts keys list --iam-account=SERVICE_ACCOUNT_EMAIL

    Windows (cmd.exe)

    gcloud iam service-accounts keys list --iam-account=SERVICE_ACCOUNT_EMAIL

    Die Ausgabe zeigt eine Liste aller vom Nutzer erstellten Schlüssel, die mit dem Dienstkonto verknüpft sind, sowie die eindeutige ID, den Erstellungszeitpunkt und die Ablaufzeit jedes Schlüssels.

  2. Ermitteln Sie anhand der Daten in der Ausgabe den Schlüssel, den Sie verfolgen möchten, und kopieren Sie seine eindeutige ID.

Nachdem Sie die eindeutigen IDs für die Dienstkontoschlüssel gefunden haben, verwenden Sie die IDs, um die Ergebnisse aus der Aktivitätsanalyse zu filtern:

Verwenden Sie den Befehl gcloud policy-intelligence query-activity mit einem Filter, um die neueste Authentifizierungsaktivität für bestimmte Dienstkontoschlüssel abzurufen:

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
  • FILTER: Ein Filter, der die vollständigen Ressourcennamen der Dienstkontoschlüssel angibt, deren Nutzung Sie sehen möchten. Der vollständige Ressourcenname eines Dienstkontoschlüssels enthält die Projekt-ID, die E-Mail-Adresse des mit dem Schlüssel verknüpften Dienstkontos und die Schlüssel-ID.

    Wenn Sie nach einem einzelnen Dienstkontoschlüssel filtern möchten, verwenden Sie einen Filter im folgenden Format:

    activities.full_resource_name="//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL/keys/KEY_ID"

    Zum Filtern nach mehreren Dienstkontoschlüsseln verwenden Sie OR, um mehrere akzeptable vollständige Ressourcennamen anzugeben:

    activities.full_resource_name="//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_1_EMAIL/keys/KEY_ID_1" OR activities.full_resource_name="//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_2_EMAIL/keys/KEY_ID_2"

    Sie können nach bis zu zehn Dienstkontoschlüsseln filtern.

Führen Sie folgenden Befehl aus:

Linux, macOS oder Cloud Shell

gcloud policy-intelligence query-activity --activity-type=serviceAccountKeyLastAuthentication \
    --project=PROJECT_ID \
    --query-filter='FILTER'

Windows (PowerShell)

gcloud policy-intelligence query-activity --activity-type=serviceAccountKeyLastAuthentication `
    --project=PROJECT_ID `
    --query-filter='FILTER'

Windows (cmd.exe)

gcloud policy-intelligence query-activity --activity-type=serviceAccountKeyLastAuthentication ^
    --project=PROJECT_ID ^
    --query-filter='FILTER'

Sie sollten eine Antwort ähnlich der folgenden erhalten:

activity:
  lastAuthenticatedTime: '2021-06-11T07:00:00Z'
  serviceAccountKey:
    fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com/keys/1c65fca351d6925e629059743428b7af243a728c
    projectNumber: '232342569935'
    serviceAccountId: '103185812403937829397'
activityType: serviceAccountKeyLastAuthentication
fullResourceName: //iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com/keys/1c65fca351d6925e629059743428b7af243a728c
observationPeriod:
  endTime: '2021-07-06T07:00:00Z'
  startTime: '2020-09-10T07:00:00Z'

In der Antwort wird die neueste Nutzung der Dienstkontoschlüssel beschrieben: Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

REST

Ermitteln Sie zuerst den Dienstkontoschlüssel, für den Sie die aktuelle Nutzung ansehen möchten:

  1. Listen Sie die Dienstkontoschlüssel auf:

    Mit der Methode projects.serviceAccounts.keys.list der IAM API können Sie alle Dienstkontoschlüssel für ein Dienstkonto auflisten.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
    • SA_NAME: Den Namen des Dienstkontos, dessen Schlüssel Sie auflisten möchten.
    • KEY_TYPES: Optional. Eine durch Kommas getrennte Liste der Schlüsseltypen, die Sie in die Antwort aufnehmen möchten. Der Schlüsseltyp gibt an, ob ein Schlüssel vom Nutzer (USER_MANAGED) oder vom System (SYSTEM_MANAGED) verwaltet wird. Wenn Sie das Feld leer lassen, werden alle Schlüssel zurückgegeben.

    HTTP-Methode und URL:

    GET https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com/keys?keyTypes=KEY_TYPES

    Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

    In der Antwort wird die neueste Nutzung der Dienstkontoschlüssel beschrieben:

    {
      "keys": [
        {
          "name": "projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com/keys/90c48f61c65cd56224a12ab18e6ee9ca9c3aee7c",
          "validAfterTime": "2020-03-04T17:39:47Z",
          "validBeforeTime": "9999-12-31T23:59:59Z",
          "keyAlgorithm": "KEY_ALG_RSA_2048",
          "keyOrigin": "GOOGLE_PROVIDED",
          "keyType": "USER_MANAGED"
        },
        {
          "name": "projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com/keys/e5e3800831ac1adc8a5849da7d827b4724b1fce8",
          "validAfterTime": "2020-03-31T23:50:09Z",
          "validBeforeTime": "9999-12-31T23:59:59Z",
          "keyAlgorithm": "KEY_ALG_RSA_2048",
          "keyOrigin": "GOOGLE_PROVIDED",
          "keyType": "USER_MANAGED"
        },
        {
          "name": "projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com/keys/b97699f042b8eee6a846f4f96259fbcd13e2682e",
          "validAfterTime": "2020-05-17T18:58:13Z",
          "validBeforeTime": "9999-12-31T23:59:59Z",
          "keyAlgorithm": "KEY_ALG_RSA_2048",
          "keyOrigin": "GOOGLE_PROVIDED",
          "keyType": "USER_MANAGED",
          "disabled": true
        }
      ]
    }
    

  2. Verwenden Sie die Metadaten in der Antwort, um den Schlüssel zu identifizieren, den Sie verfolgen möchten. Kopieren Sie dann die eindeutige ID des Schlüssels aus dem Ende des name-Felds.

    Das Feld name hat das folgende Format:

    "name": "projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL/keys/KEY_ID"

    Die eindeutige ID des Schlüssels ist alles, was auf keys/ folgt.

    Die eindeutige ID im folgenden Schlüsselnamen lautet beispielsweise 0f561cc41650ff521899de2fd653bd3de08e2da4:

    "name": "projects/my-project/serviceAccounts/my-account@my-project.iam.gserviceaccount.com/keys/0f561cc41650ff521899de2fd653bd3de08e2da4"

Nachdem Sie die eindeutigen IDs für die Dienstkontoschlüssel gefunden haben, verwenden Sie die IDs, um die Ergebnisse aus der Aktivitätsanalyse zu filtern:

Verwenden Sie die Methode activities.query der Policy Analyzer API, um die neueste Authentifizierungsaktivität für bestimmte Dienstkontoschlüssel abzurufen.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID. Projekt-IDs sind alphanumerische Strings, wie my-project.
  • FILTER: Ein Filter, der die vollständigen Ressourcennamen der Dienstkontoschlüssel angibt, deren Nutzung Sie sehen möchten. Der vollständige Ressourcenname eines Dienstkontoschlüssels enthält die Projekt-ID, die E-Mail-Adresse des mit dem Schlüssel verknüpften Dienstkontos und die Schlüssel-ID.

    Wenn Sie nach einem einzelnen Dienstkontoschlüssel filtern möchten, verwenden Sie einen Filter im folgenden Format:

    activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2FPROJECT_ID%2FserviceAccounts%2FSERVICE_ACCOUNT_EMAIL%2Fkeys%2FKEY_ID%22

    Zum Filtern nach mehreren Dienstkontoschlüsseln verwenden Sie %20OR%20, um mehrere akzeptable vollständige Ressourcennamen anzugeben:

    activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2FPROJECT_ID%2FserviceAccounts%2FSERVICE_ACCOUNT_1_EMAIL%2Fkeys%2FKEY_ID_1%22%20OR%20activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2FPROJECT_ID%2FserviceAccounts%2FSERVICE_ACCOUNT_2_EMAIL%2Fkeys%2FKEY_ID_2%22

    Sie können nach bis zu zehn Dienstkontoschlüsseln filtern.

HTTP-Methode und URL:

GET https://policyanalyzer.googleapis.com/v1/projects/PROJECT_ID/locations/global/activityTypes/serviceAccountKeyLastAuthentication/activities:query?filter=FILTER

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

In der Antwort wird die neueste Nutzung der Dienstkontoschlüssel beschrieben:

{
  "activities": [
    {
      "activity": {
        "lastAuthenticatedTime": "2021-06-11T07:00:00Z",
        "serviceAccountKey": {
          "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1@my-project.iam.gserviceaccount.com/keys/1c65fca351d6925e629059743428b7af243a728c",
          "projectNumber": "123456789012",
          "serviceAccountId": "123456789012345678901"
        }
      },
      "activityType": "serviceAccountKeyLastAuthentication",
      "fullResourceName": "//iam.googleapis.com/projects/my-project/serviceAccounts/service-account-1t@my-project.iam.gserviceaccount.com/keys/1c65fca351d6925e629059743428b7af243a728c",
      "observationPeriod": {
        "endTime": "2021-07-06T07:00:00Z",
        "startTime": "2020-04-20T07:00:00Z"
      }
    }
  ]
}

Weitere Informationen zu diesen Ergebnissen finden Sie unter Aktivitäten verstehen, auf dieser Seite.

Aktivitäten verstehen

Console

Auf der Seite mit den Abfrageergebnissen werden die Abfrageparameter und die Ergebnisse der Abfrage aufgeführt.

Bei einer Abfrage zu Dienstkonten werden in der Ergebnistabelle alle Dienstkonten aus der Abfrage und der Zeitpunkt der letzten Authentifizierung aufgeführt:

Bei einer Abfrage nach Dienstkontoschlüsseln werden in der Ergebnistabelle alle Dienstkontoschlüssel aus der Abfrage, das zugehörige Dienstkonto und das Datum der letzten Authentifizierung aufgeführt.

Die Ergebnisse enthalten möglicherweise keine sehr aktuellen Anmeldevorgänge. In der Kurzinfo sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Zeitraums stattgefunden haben.

In der Ergebnistabelle für beide Abfragen werden auch die IAM-Rollen aufgeführt, die dem Dienstkonto für das Projekt zugewiesen sind, sowie alle Sicherheitsinformationen. Diese Statistiken zeigen, nach welchem Muster Ihre Dienstkonten auf Ressourcen zugreifen. Beispiel: Einige Statistiken zeigen übermäßige Berechtigungen oder Berechtigungen, die ein Hauptkonto nicht benötigt: Andere Statistiken zeigen Dienstkonten mit Berechtigungen für „Lateral Movement“ oder Berechtigungen, mit denen das Dienstkonto die Identität eines Dienstkontos in einem anderen Projekt übernehmen kann.

Einige Statistiken enthalten auch Rollenempfehlungen, die Änderungen vorschlagen, mit denen Sie übermäßige Berechtigungen reduzieren können. Weitere Informationen zum Verwalten von Empfehlungen und Statistiken finden Sie unter Empfehlungen prüfen und anwenden.

gcloud

Der Aktivitätsanalyse-Bericht meldet Ergebnisse als Liste von Aktivitäten. Aktivitäten haben die folgenden Felder:

  • fullResourceName: Der vollständige Ressourcenname des Dienstkontos oder des Dienstkontoschlüssels, dessen Aktivität gemeldet wird. Dieses Format wird in den folgenden Abschnitten und unter Vollständige Ressourcennamen beschrieben.
  • activityType: Die Art der Aktivität, die gemeldet wird. Für die letzten Dienstkonto-Authentifizierungsaktivitäten ist der Wert serviceAccountLastAuthentication. Für die letzte Authentifizierungsaktivität des Dienstkontoschlüssels lautet der Wert serviceAccountKeyLastAuthentication.
  • observationPeriod: Start- und Endzeiten, die den Zeitraum angeben, für den das Dienstkonto oder der Schlüssel für die Aktivität beobachtet wurde. Die Zeit in diesen Zeitstempeln ist immer T07:00:00Z.
  • activity: Details zur Aktivität. Der Inhalt dieses Felds variiert je nach Aktivitätstyp. Weitere Informationen finden Sie in den folgenden Abschnitten.

Details zu Dienstkontoaktivitäten

Das Feld activity für serviceAccountLastAuthentication-Aktivitäten enthält die folgenden Felder:

  • serviceAccount: Details zu dem Dienstkonto, dessen Aktivität gemeldet wird, einschließlich der folgenden:

    • fullResourceName: Den vollständigen Ressourcennamen des Dienstkontos im Format //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL.
    • projectNumber: Die numerische ID des Projekts, zu dem das Dienstkonto gehört.
    • serviceAccountId: Die eindeutige numerische ID des Dienstkontos.
  • lastAuthenticatedTime: Ein Zeitstempel, der das Datum darstellt, an dem das letzte Authentifizierungsereignis aufgetreten ist. Die Zeit in diesem Zeitstempel ist immer T07:00:00Z, unabhängig von der genauen Zeit des Authentifizierungsereignisses.

    Die Ergebnisse enthalten möglicherweise keine sehr aktuellen Anmeldevorgänge. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Zeitraums aufgetreten sind.

    Dieses Feld ist nicht für Dienstkonten enthalten, die noch nie verwendet wurden.

Details zu den Aktivitäten des Dienstkontoschlüssels

Das Feld activity für serviceAccountKeyLastAuthentication-Aktivitäten enthält die folgenden Felder:

  • serviceAccountKey: Details zu dem Dienstkontoschlüssel, dessen Aktivität gemeldet wird, einschließlich der folgenden:

    • fullResourceName: Den vollständigen Ressourcennamen des Dienstkontoschlüssels im Format //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL/keys/KEY_ID.
    • projectNumber: Die numerische ID des Projekts, zu dem das Dienstkonto gehört, mit dem der Schlüssel verknüpft ist.
    • serviceAccountId: Die numerische ID des Dienstkontos, mit dem der Schlüssel verknüpft ist.
  • lastAuthenticatedTime: Ein Zeitstempel, der das Datum darstellt, an dem das letzte Authentifizierungsereignis aufgetreten ist. Die Zeit in diesem Zeitstempel ist immer T07:00:00Z, unabhängig von der genauen Zeit des Authentifizierungsereignisses.

    Die Ergebnisse enthalten möglicherweise keine sehr aktuellen Anmeldevorgänge. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Zeitraums aufgetreten sind.

    Dieses Feld ist nicht in Dienstkontoschlüsseln enthalten, die noch nie verwendet wurden.

REST

Der Aktivitätsanalyse-Bericht meldet Ergebnisse als Liste von Aktivitäten. Aktivitäten haben die folgenden Felder:

  • fullResourceName: Der vollständige Ressourcenname des Dienstkontos oder des Dienstkontoschlüssels, dessen Aktivität gemeldet wird. Dieses Format wird in den folgenden Abschnitten und unter Vollständige Ressourcennamen beschrieben.
  • activityType: Die Art der Aktivität, die gemeldet wird. Für die letzten Dienstkonto-Authentifizierungsaktivitäten ist der Wert serviceAccountLastAuthentication. Für die letzte Authentifizierungsaktivität des Dienstkontoschlüssels lautet der Wert serviceAccountKeyLastAuthentication.
  • observationPeriod: Start- und Endzeiten, die den Zeitraum angeben, für den das Dienstkonto oder der Schlüssel für die Aktivität beobachtet wurde. Die Zeit in diesen Zeitstempeln ist immer T07:00:00Z.
  • activity: Details zur Aktivität. Der Inhalt dieses Felds variiert je nach Aktivitätstyp. Weitere Informationen finden Sie in den folgenden Abschnitten.

Details zu Dienstkontoaktivitäten

Das Feld activity für serviceAccountLastAuthentication-Aktivitäten enthält die folgenden Felder:

  • serviceAccount: Details zu dem Dienstkonto, dessen Aktivität gemeldet wird, einschließlich der folgenden:

    • fullResourceName: Den vollständigen Ressourcennamen des Dienstkontos im Format //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL.
    • projectNumber: Die numerische ID des Projekts, zu dem das Dienstkonto gehört.
    • serviceAccountId: Die eindeutige numerische ID des Dienstkontos.
  • lastAuthenticatedTime: Ein Zeitstempel, der das Datum darstellt, an dem das letzte Authentifizierungsereignis aufgetreten ist. Die Zeit in diesem Zeitstempel ist immer T07:00:00Z, unabhängig von der genauen Zeit des Authentifizierungsereignisses.

    Die Ergebnisse enthalten möglicherweise keine sehr aktuellen Anmeldevorgänge. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Zeitraums aufgetreten sind.

    Dieses Feld ist nicht für Dienstkonten enthalten, die noch nie verwendet wurden.

Details zu den Aktivitäten des Dienstkontoschlüssels

Das Feld activity für serviceAccountKeyLastAuthentication-Aktivitäten enthält die folgenden Felder:

  • serviceAccountKey: Details zu dem Dienstkontoschlüssel, dessen Aktivität gemeldet wird, einschließlich der folgenden:

    • fullResourceName: Den vollständigen Ressourcennamen des Dienstkontoschlüssels im Format //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL/keys/KEY_ID.
    • projectNumber: Die numerische ID des Projekts, zu dem das Dienstkonto gehört, mit dem der Schlüssel verknüpft ist.
    • serviceAccountId: Die numerische ID des Dienstkontos, mit dem der Schlüssel verknüpft ist.
  • lastAuthenticatedTime: Ein Zeitstempel, der das Datum darstellt, an dem das letzte Authentifizierungsereignis aufgetreten ist. Die Zeit in diesem Zeitstempel ist immer T07:00:00Z, unabhängig von der genauen Zeit des Authentifizierungsereignisses.

    Die Ergebnisse enthalten möglicherweise keine sehr aktuellen Anmeldevorgänge. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Zeitraums aufgetreten sind.

    Dieses Feld ist nicht in Dienstkontoschlüsseln enthalten, die noch nie verwendet wurden.

Nächste Schritte