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.

Mithilfe der jüngsten Authentifizierungsaktivitäten können Sie Dienstkonten und Dienstkontoschlüssel identifizieren, 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

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Activity Analysis Viewer (roles/policyanalyzer.activityAnalysisViewer) für das Projekt zu gewähren, damit Sie die Berechtigungen erhalten, die Sie zum Auflisten der letzten Authentifizierungsaktivitäten für Ihre Dienstkonten und Dienstkontoschlüssel benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff 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 letzten Authentifizierungsaktivitäten für Ihre Dienstkonten und Dienstkontoschlüssel aufzulisten:

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

Möglicherweise können Sie 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 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 letzten Authentifizierungsaktivitäten für Ihre Dienstkonten oder Schlüssel aufzulisten.

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • 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

Verwenden Sie die Google Cloud Console, die gcloud CLI oder die REST API, um das letzte Datum zu ermitteln, an dem bestimmte Dienstkonten verwendet wurden.

Console

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

    Zu Policy Analyzer

  2. Suchen Sie unter Letzte Aktivität analysieren den Bereich Wann wurde dieses Dienstkonto zuletzt verwendet? und klicken Sie in diesem Bereich 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 Abschnitt Dienstkonten hinzufügen auf das Feld Dienstkonto. Eine Liste aller Dienstkonten in Ihrem Projekt wird angezeigt. Die Liste enthält auch 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, dessen aktuelle Nutzung Sie sich ansehen möchten.

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

  7. Klicken Sie im Bereich Abfrage für Zugriffsaktivitäten 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

Mit der Methode activities.query der Policy Analyzer API können Sie die neueste Authentifizierungsaktivität für bestimmte Dienstkonten abrufen.

Bevor Sie die Anfragedaten verwenden, 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.

    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

Wenn Sie herausfinden möchten, wann bestimmte Dienstkontoschlüssel zuletzt verwendet wurden, ermitteln Sie den Dienstkontoschlüssel, für den Sie die aktuelle Nutzung aufrufen möchten. 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 Policy Analyzer auf.

    Zu Policy Analyzer

  2. Suchen Sie unter Letzte Aktivität analysieren den Bereich Wann wurde dieser Dienstkontoschlüssel zuletzt verwendet? und klicken Sie in diesem Bereich 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 Kästchen Dienstkontoschlüssel. Eine Liste aller Dienstkontoschlüssel in Ihrem Projekt wird angezeigt. Die Liste enthält auch das Projekt und das Dienstkonto, mit denen die einzelnen Schlüssel verknüpft sind.

  5. Wählen Sie den Schlüssel aus, für den Sie die aktuelle Nutzung aufrufen möchten.

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

  7. Klicken Sie im Bereich Abfrage für Zugriffsaktivitäten 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

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

  1. Listen Sie die Dienstkontoschlüssel auf:

    Bevor Sie die folgenden Befehlsdaten verwenden, ersetzen Sie die folgenden Werte:

    • 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 ermittelt haben, verwenden Sie diese, um die Ergebnisse aus Activity Analyzer 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:

Bevor Sie die folgenden Befehlsdaten verwenden, 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 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 dazu 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

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

  1. Listen Sie die Dienstkontoschlüssel auf:

    Verwenden Sie die Methode projects.serviceAccounts.keys.list der IAM API, um alle Dienstkontoschlüssel für ein Dienstkonto aufzulisten.

    Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

    • 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 ermittelt haben, verwenden Sie diese, um die Ergebnisse aus Activity Analyzer zu filtern:

Mit der Methode activities.query der Policy Analyzer API können Sie die neueste Authentifizierungsaktivität für bestimmte Dienstkontoschlüssel abrufen.

Bevor Sie die Anfragedaten verwenden, 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 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 aufgelistet.

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

Bei einer Dienstkontoschlüsselabfrage werden in der Ergebnistabelle alle Dienstkontoschlüssel der Abfrage, das zugehörige Dienstkonto und der Zeitpunkt der letzten Authentifizierung aufgeführt.

Die Ergebnisse enthalten möglicherweise keine aktuellen Authentifizierungsereignisse. In der Kurzinfo sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Bereichs aufgetreten sind.

In der Ergebnistabelle für beide Abfragen werden auch die IAM-Rollen des Dienstkontos für das Projekt sowie alle Sicherheitsinformationen aufgeführt. Diese Informationen zeigen Muster beim Zugriff Ihrer Dienstkonten auf Ressourcen. Einige Statistiken heben beispielsweise nicht erforderliche Berechtigungen oder Berechtigungen hervor, die ein Hauptkonto nicht benötigt. Andere Statistiken zeigen Dienstkonten mit lateralen Verschiebungsberechtigungen bzw. Berechtigungen, mit denen das Dienstkonto die Identität eines Dienstkontos in einem anderen Projekt übernehmen kann.

Einige Statistiken enthalten auch Rollenempfehlungen, die Änderungen vorschlagen, die Sie vornehmen können, um nicht erforderliche Berechtigungen zu reduzieren. 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 aktuellen Authentifizierungsereignisse. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Bereichs 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 aktuellen Authentifizierungsereignisse. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Bereichs 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 aktuellen Authentifizierungsereignisse. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Bereichs 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 aktuellen Authentifizierungsereignisse. Unter observationPeriod sehen Sie den genauen Zeitraum, der für die Analyse verwendet wurde. Die Ergebnisse enthalten keine Authentifizierungsereignisse, die außerhalb dieses Bereichs aufgetreten sind.

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

Nächste Schritte