Consulta el uso reciente de claves y cuentas de servicio

En esta página, se muestra cómo usar el analizador de actividad para saber cuándo se usaron por última vez las cuentas de servicio y las claves a fin de llamar a una API de Google. Estos usos se llaman actividades de autenticación.

La actividad de autenticación reciente puede ayudarte a identificar las cuentas de servicio y las claves de cuenta de servicio que ya no usas. Te recomendamos inhabilitar o borrar estas cuentas de servicio y claves sin usar, ya que generan un riesgo de seguridad innecesario.

Antes de comenzar

Funciones obligatorias

A fin de obtener los permisos necesarios a fin de enumerar las actividades de autenticación más recientes para tus cuentas de servicio y claves de cuenta de servicio, pídele a tu administrador que te otorgue el rol de IAM de Visualizador de análisis de actividad (roles/policyanalyzer.activityAnalysisViewer) en el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

Este rol predefinido contiene los permisos necesarios para ver una lista de las actividades de autenticación más recientes de tus cuentas de servicio y claves de cuenta de servicio. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para enumerar las actividades de autenticación más recientes de tus cuentas de servicio y claves de cuenta de servicio:

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

Es posible que también puedas obtener estos permisos con funciones personalizadas o con otras funciones predefinidas.

Consulta el uso reciente de todas las cuentas de servicio o claves

Para enumerar las fechas de las actividades de autenticación más recientes de todas tus cuentas de servicio o claves de cuenta de servicio, usa Google Cloud CLI o la API de REST.

gcloud

A fin de enumerar las actividades de autenticación más recientes para las cuentas de servicio o claves, usa el comando gcloud policy-intelligence query-activity:

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

Reemplaza los siguientes valores:

  • ACTIVITY_TYPE: Es el tipo de estadística que deseas enumerar. Para enumerar las horas de uso más recientes de las cuentas de servicio, usa serviceAccountLastAuthentication. Para enumerar las horas de uso más recientes de las claves de tu cuenta de servicio, usa serviceAccountKeyLastAuthentication.
  • PROJECT_ID es el ID del proyecto de Google Cloud. Los ID de proyecto son strings alfanuméricas, como my-project.
  • LIMIT: Opcional Es la cantidad máxima de resultados que se mostrarán. El valor predeterminado es 1000.

La respuesta es similar a la siguiente, que enumera las horas de uso recientes de las cuentas de servicio de un proyecto:

---
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'

Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

REST

A fin de enumerar las actividades de autenticación más recientes para tus cuentas de servicio o claves, usa el método activities.query de la API de Policy Analyzer.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
  • ACTIVITY_TYPE: Es el tipo de actividad que deseas enumerar. Para enumerar los usos más recientes de todas las cuentas de servicio, usa serviceAccountLastAuthentication. A fin de enumerar los usos más recientes de todas las claves de tu cuenta de servicio, usa serviceAccountKeyLastAuthentication.
  • PAGE_SIZE: Opcional La cantidad máxima de resultados que se mostrarán con esta solicitud. Si no se especifica, el servidor determinará la cantidad de resultados que se mostrarán. Si la cantidad de actividades es mayor que el tamaño de la página, la respuesta contiene un token de paginación que puedes usar para recuperar la siguiente página de resultados.
  • PAGE_TOKEN: Opcional Es el token de paginación que se mostró en una respuesta anterior de este método. Si se especifica, la lista de actividades comenzará desde el punto en que finalizó la solicitud anterior.

HTTP method and URL:

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

Para enviar tu solicitud, expande una de estas opciones:

La respuesta es similar a la siguiente, que enumera las horas de uso recientes de las cuentas de servicio de un proyecto:

{
  "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_"
}

Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

Consulta el uso reciente de cuentas de servicio específicas

Para encontrar la última fecha en la que se usaron cuentas de servicio específicas, usa la consola de Google Cloud,gcloud CLId o la API de REST.

Consola

  1. En la consola de Google Cloud, ve a la página Analizador de políticas.

    Ir al Analizador de políticas

  2. En Analyze recent activity, busca el panel When was the last time this service account was used? y haz clic en Create query en ese panel.

  3. En el cuadro Seleccionar alcance de la consulta, ingresa el nombre del proyecto cuyas cuentas de servicio deseas analizar.

  4. En la sección Agregar cuentas de servicio, haz clic en la casilla Cuenta de servicio. Aparecerá una lista de todas las cuentas de servicio de tu proyecto. La lista también incluye el proyecto con el que está asociada cada cuenta de servicio y la dirección de correo electrónico de cada cuenta de servicio.

  5. Selecciona la cuenta de servicio de la que quieres ver el uso reciente.

  6. Opcional: Para ver el uso reciente de más de una cuenta de servicio, haz clic en Agregar cuenta y selecciona otra. Puedes analizar hasta 10 cuentas de servicio a la vez.

  7. En el panel Consulta para actividades de acceso, haz clic en Ejecutar consulta.

En la página de resultados, se muestra el uso más reciente de las cuentas de servicio. Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

gcloud

A fin de obtener la actividad de autenticación más reciente de las cuentas de servicio específicas, usa el comando gcloud policy-intelligence query-activity con un filtro:

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

Reemplaza los siguientes valores:

  • PROJECT_ID es el ID del proyecto de Google Cloud. Los ID de proyecto son strings alfanuméricas, como my-project.
  • FILTER: Es un filtro que especifica los nombres completos de los recursos de las cuentas de servicio cuyo uso deseas ver. El nombre completo del recurso de una cuenta de servicio incluye el ID del proyecto y la dirección de correo electrónico de la cuenta de servicio.

    Para filtrar una sola cuenta de servicio, usa un filtro con el siguiente formato:

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

    Si deseas filtrar varias cuentas de servicio, usa OR para especificar varios nombres completos de recursos aceptables:

    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"
    

    Puedes filtrar hasta 10 cuentas de servicio.

En la respuesta, se describe el uso más reciente de las cuentas de servicio:

---
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'

Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

REST

Para obtener la actividad de autenticación más reciente de cuentas de servicio específicas, usa el método activities.query de la API de Policy Analyzer.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
  • FILTER: Es un filtro que especifica los nombres completos de los recursos de las cuentas de servicio cuyo uso deseas ver.

    Para filtrar una sola cuenta de servicio, usa un filtro con el siguiente formato:

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

    Si deseas filtrar varias cuentas de servicio, usa %20OR%20 para especificar varios nombres completos de recursos aceptables:

    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

Método HTTP y URL:

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

Para enviar tu solicitud, expande una de estas opciones:

En la respuesta, se describe el uso más reciente de las cuentas de servicio:

{
  "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"
        }
      }
    }
  ]
}

Consulta el uso reciente de claves de cuentas de servicio específicas

Para encontrar la última fecha en la que se usaron las claves de cuenta de servicio específicas, identifica la clave de la cuenta de servicio de la que deseas ver el uso reciente y, luego, crea una consulta con ese ID.

Si tienes un archivo de claves JSON, puedes encontrar el ID único de la clave de una cuenta de servicio en el campo private_key_id del archivo.

Si no tienes un archivo de claves JSON, puedes buscar el ID único de la clave de una cuenta de servicio mediante estos pasos:

Consola

  1. En la consola de Google Cloud, ve a la página Analizador de políticas.

    Ir al Analizador de políticas

  2. En Analyze recent activity, busca el panel etiquetado When was the last time this service account key was used? y haz clic en Create query en ese panel.

  3. En el cuadro Seleccionar alcance de la consulta, ingresa el nombre del proyecto cuyas claves de cuenta de servicio deseas analizar.

  4. En la sección Agregar clave de cuenta de servicio, haz clic en la casilla Clave de cuenta de servicio. Aparecerá una lista de todas las claves de cuenta de servicio de tu proyecto. La lista también incluye el proyecto y la cuenta de servicio con los que está asociada cada clave.

  5. Selecciona la clave de la que quieres ver el uso reciente.

  6. Opcional: Para ver el uso reciente de más de una clave, haz clic en Agregar clave y selecciona otra. Puedes analizar hasta 10 claves a la vez.

  7. En el panel Consulta para actividades de acceso, haz clic en Ejecutar consulta.

En la página de resultados, se muestra el uso más reciente de las claves de la cuenta de servicio. Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

gcloud

Primero, identifica la clave de la cuenta de servicio para la que quieres ver el uso reciente:

  1. Enumera las claves de la cuenta de servicio:

    Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

    • SERVICE_ACCOUNT_EMAIL: La dirección de correo electrónico de la cuenta de servicio con la que está asociada la clave.

    Ejecuta el comando gcloud iam service-accounts keys list:

    Linux, macOS o 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

    El resultado muestra una lista de todas las claves creadas por el usuario asociadas con la cuenta de servicio, incluidos el ID único de cada clave, la fecha de creación y la fecha de vencimiento.

  2. Usa los datos en el resultado para identificar la clave de la que deseas hacer un seguimiento y copiar el ID único.

Después de encontrar los IDs únicos de las claves de la cuenta de servicio, úsalos para filtrar los resultados del Analizador de actividad:

A fin de obtener la actividad de autenticación más reciente de las claves de cuentas de servicio específicas, usa el comando gcloud policy-intelligence query-activity con un filtro.

Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
  • FILTER: Es un filtro que especifica los nombres completos de los recursos de las claves de cuentas de servicio cuyo uso deseas ver. El nombre completo del recurso de una clave de cuenta de servicio incluye el ID del proyecto, la dirección de correo electrónico de la cuenta de servicio asociada con la clave y el ID de la clave.

    Para filtrar una sola cuenta de servicio, usa un filtro con el siguiente formato:

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

    Si deseas filtrar varias claves de cuentas de servicio, usa OR para especificar varios nombres completos de recursos aceptables:

    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"

    Puedes filtrar hasta 10 claves de cuentas de servicio.

Ejecuta el siguiente comando:

Linux, macOS o 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'

Deberías recibir una respuesta similar a la que figura a continuación:

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'

En la respuesta, se describe el uso más reciente de las claves de la cuenta de servicio: Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

REST

Primero, identifica la clave de la cuenta de servicio para la que quieres ver el uso reciente:

  1. Enumera las claves de cuenta de servicio:

    Para enumerar todas las claves de cuenta de servicio de una cuenta de servicio, usa el método projects.serviceAccounts.keys.list de la API de IAM.

    Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

    • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
    • SA_NAME: Es el nombre de la cuenta de servicio cuyas claves deseas enumerar.
    • KEY_TYPES: Este valor es opcional. Es una lista separada por comas de los tipos de claves que deseas incluir en la respuesta. El tipo de clave indica si una clave es administrada por el usuario (USER_MANAGED) o por el sistema (SYSTEM_MANAGED). Si se deja en blanco, se mostrarán todas las claves.

    HTTP method and URL:

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

    Para enviar tu solicitud, expande una de estas opciones:

    En la respuesta, se describe el uso más reciente de las claves de la cuenta de servicio:

    {
      "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. Usa los metadatos de la respuesta para identificar la clave de la que deseas hacer un seguimiento. Luego, copia el ID único de la clave desde el final del campo name.

    El campo name tiene el siguiente formato:

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

    El ID único de la clave es todo lo que se encuentra después de keys/.

    Por ejemplo, el ID único en el siguiente nombre de clave es 0f561cc41650ff521899de2fd653bd3de08e2da4:

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

Después de encontrar los IDs únicos de las claves de la cuenta de servicio, úsalos para filtrar los resultados del Analizador de actividad:

Para obtener la actividad de autenticación más reciente para claves de cuenta de servicio específicas, usa el método activities.query de la API de Policy Analyzer.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud Los ID de proyecto son strings alfanuméricas, como my-project.
  • FILTER: Es un filtro que especifica los nombres completos de los recursos de las claves de cuentas de servicio cuyo uso deseas ver. El nombre completo del recurso de una clave de cuenta de servicio incluye el ID del proyecto, la dirección de correo electrónico de la cuenta de servicio asociada con la clave y el ID de la clave.

    Para filtrar una sola cuenta de servicio, usa un filtro con el siguiente formato:

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

    Si deseas filtrar varias claves de cuentas de servicio, usa %20OR%20 para especificar varios nombres completos de recursos aceptables:

    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

    Puedes filtrar hasta 10 claves de cuentas de servicio.

HTTP method and URL:

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

Para enviar tu solicitud, expande una de estas opciones:

En la respuesta, se describe el uso más reciente de las claves de la cuenta de servicio:

{
  "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"
      }
    }
  ]
}

Para aprender a comprender estos resultados, consulta Información sobre las actividades en esta página.

Comprende las actividades

Consola

La página de resultados de la consulta enumera los parámetros de consulta y los resultados de la consulta.

Para una consulta de cuenta de servicio, la tabla de resultados enumera cada cuenta de servicio de la consulta y cuándo se autenticó por última vez:

Para una consulta de clave de cuenta de servicio, la tabla de resultados enumera cada clave de cuenta de servicio de la consulta, la cuenta de servicio a la que está asociada y la última vez que se autenticó.

Es posible que los resultados no incluyan eventos de autenticación muy recientes. Consulta la información sobre la herramienta para ver el período exacto que se usó durante el análisis. Los resultados no incluyen eventos de autenticación que ocurrieron fuera de este rango.

En la tabla de resultados de ambas consultas, también se enumeran las funciones de IAM que la cuenta de servicio tiene en el proyecto, junto con las estadísticas de seguridad. En estas estadísticas, se destacan los patrones sobre cómo las cuentas de servicio acceden a los recursos. Por ejemplo, algunas estadísticas destacan el exceso de permisos o permisos que una principal no necesita. Otras estadísticas destacan las cuentas de servicio con permisos de movimiento lateral o permisos que permiten que la cuenta de servicio actúe en nombre de una cuenta de servicio en otro proyecto.

Algunas estadísticas también incluyen recomendaciones de funciones que sugieren cambios que puedes realizar para reducir el exceso de permisos. Para obtener información sobre cómo administrar las recomendaciones y las estadísticas, consulta Revisa y aplica las recomendaciones.

gcloud

El Analizador de actividades informa los resultados como una lista de actividades. Las actividades tienen los siguientes campos:

  • fullResourceName: Es el nombre completo del recurso de la cuenta de servicio o la clave de cuenta de servicio cuya actividad se informa. Este formato se describe en las siguientes secciones y en Nombres completos de recursos.
  • activityType: Es el tipo de actividad que se informa. Para la actividad de autenticación de la cuenta de servicio reciente, el valor es serviceAccountLastAuthentication. Para la actividad de autenticación de la clave de la cuenta de servicio reciente, el valor es serviceAccountKeyLastAuthentication.
  • observationPeriod: Se refiere a las horas de inicio y finalización que indican el intervalo de tiempo durante el cual se observó la actividad o la cuenta de servicio para la actividad. La hora en estas marcas de tiempo siempre es T07:00:00Z.
  • activity: Se refiere a los detalles de la actividad. El contenido de este campo varía según el tipo de actividad. Consulta las siguientes secciones para obtener más detalles.

Detalles para las actividades de la cuenta de servicio

El campo activity para las actividades de serviceAccountLastAuthentication contiene los siguientes campos:

  • serviceAccount: Son los detalles sobre la cuenta de servicio cuya actividad se informa, incluidos los siguientes:

    • fullResourceName: Es el nombre completo del recurso de la cuenta de servicio, en el formato //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL.
    • projectNumber: Es el ID numérico del proyecto al que pertenece la cuenta de servicio.
    • serviceAccountId: Es el ID numérico de la cuenta de servicio.
  • lastAuthenticatedTime: Es una marca de tiempo que representa la fecha en la que se produjo el evento de autenticación más reciente. La hora en esta marca de tiempo siempre es T07:00:00Z, sin importar la hora exacta del evento de autenticación.

    Es posible que los resultados no incluyan eventos de autenticación muy recientes. Consulta la observationPeriod para ver el período exacto que se usó durante el análisis. Los resultados no incluyen eventos de autenticación que ocurrieron fuera de este rango.

    Este campo no se incluye en las cuentas de servicio que nunca se usaron.

Detalles de las actividades clave de la cuenta de servicio

El campo activity para las actividades de serviceAccountKeyLastAuthentication contiene los siguientes campos:

  • serviceAccountKey: Son los detalles sobre la clave de la cuenta de servicio cuya actividad se informa, incluidos los siguientes:

    • fullResourceName: Es el nombre completo del recurso de la clave de la cuenta de servicio, en el formato //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL/keys/KEY_ID.
    • projectNumber: Es el ID numérico del proyecto al que pertenece la cuenta de servicio con la que está asociada la clave.
    • serviceAccountId: Es el ID numérico de la cuenta de servicio con la que está asociada la clave.
  • lastAuthenticatedTime: Es una marca de tiempo que representa la fecha en la que se produjo el evento de autenticación más reciente. La hora en esta marca de tiempo siempre es T07:00:00Z, sin importar la hora exacta del evento de autenticación.

    Es posible que los resultados no incluyan eventos de autenticación muy recientes. Consulta la observationPeriod para ver el período exacto que se usó durante el análisis. Los resultados no incluyen eventos de autenticación que ocurrieron fuera de este rango.

    Este campo no se incluye en las claves de las cuentas de servicio que nunca se usaron.

REST

El Analizador de actividades informa los resultados como una lista de actividades. Las actividades tienen los siguientes campos:

  • fullResourceName: Es el nombre completo del recurso de la cuenta de servicio o la clave de cuenta de servicio cuya actividad se informa. Este formato se describe en las siguientes secciones y en Nombres completos de recursos.
  • activityType: Es el tipo de actividad que se informa. Para la actividad de autenticación de la cuenta de servicio reciente, el valor es serviceAccountLastAuthentication. Para la actividad de autenticación de la clave de la cuenta de servicio reciente, el valor es serviceAccountKeyLastAuthentication.
  • observationPeriod: Se refiere a las horas de inicio y finalización que indican el intervalo de tiempo durante el cual se observó la actividad o la cuenta de servicio para la actividad. La hora en estas marcas de tiempo siempre es T07:00:00Z.
  • activity: Se refiere a los detalles de la actividad. El contenido de este campo varía según el tipo de actividad. Consulta las siguientes secciones para obtener más detalles.

Detalles para las actividades de la cuenta de servicio

El campo activity para las actividades de serviceAccountLastAuthentication contiene los siguientes campos:

  • serviceAccount: Son los detalles sobre la cuenta de servicio cuya actividad se informa, incluidos los siguientes:

    • fullResourceName: Es el nombre completo del recurso de la cuenta de servicio, en el formato //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL.
    • projectNumber: Es el ID numérico del proyecto al que pertenece la cuenta de servicio.
    • serviceAccountId: Es el ID numérico de la cuenta de servicio.
  • lastAuthenticatedTime: Es una marca de tiempo que representa la fecha en la que se produjo el evento de autenticación más reciente. La hora en esta marca de tiempo siempre es T07:00:00Z, sin importar la hora exacta del evento de autenticación.

    Es posible que los resultados no incluyan eventos de autenticación muy recientes. Consulta la observationPeriod para ver el período exacto que se usó durante el análisis. Los resultados no incluyen eventos de autenticación que ocurrieron fuera de este rango.

    Este campo no se incluye en las cuentas de servicio que nunca se usaron.

Detalles de las actividades clave de la cuenta de servicio

El campo activity para las actividades de serviceAccountKeyLastAuthentication contiene los siguientes campos:

  • serviceAccountKey: Son los detalles sobre la clave de la cuenta de servicio cuya actividad se informa, incluidos los siguientes:

    • fullResourceName: Es el nombre completo del recurso de la clave de la cuenta de servicio, en el formato //iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_EMAIL/keys/KEY_ID.
    • projectNumber: Es el ID numérico del proyecto al que pertenece la cuenta de servicio con la que está asociada la clave.
    • serviceAccountId: Es el ID numérico de la cuenta de servicio con la que está asociada la clave.
  • lastAuthenticatedTime: Es una marca de tiempo que representa la fecha en la que se produjo el evento de autenticación más reciente. La hora en esta marca de tiempo siempre es T07:00:00Z, sin importar la hora exacta del evento de autenticación.

    Es posible que los resultados no incluyan eventos de autenticación muy recientes. Consulta la observationPeriod para ver el período exacto que se usó durante el análisis. Los resultados no incluyen eventos de autenticación que ocurrieron fuera de este rango.

    Este campo no se incluye en las claves de las cuentas de servicio que nunca se usaron.

¿Qué sigue?