Supervisar los registros de auditoría de inicio de sesión del sistema operativo


Puede monitorear los intentos de conexión a instancias de máquinas virtuales (VM) que tienen el inicio de sesión en el sistema operativo habilitado viendo los registros de auditoría de inicio de sesión en el sistema operativo. Estos registros de auditoría siempre están habilitados y no se pueden deshabilitar mediante configuraciones de acceso a datos .

También puedes realizar un seguimiento de eventos y actividades relacionados con el inicio de sesión en el sistema operativo, como agregar, eliminar o actualizar una clave SSH o eliminar información POSIX con el SDK de administración de Google Workspace .

Antes de comenzar

  • Si aún no lo has hecho, configura la autenticación. La autenticación es el proceso mediante el cual se verifica su identidad para acceder a Google Cloud servicios y API. Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.

Ver registros de auditoría de inicio de sesión del sistema operativo

Para mostrar una lista de registros de auditoría de inicio de sesión del sistema operativo, consulte los registros de auditoría de la nube.

Consola

  1. En la consola de Google Cloud, vaya a la página Explorador de registros .

    Ir al Explorador de registros

  2. En el campo Consulta , ingrese la siguiente consulta:

    protoPayload.serviceName="oslogin.googleapis.com"
    

  3. Si el evento que busca ocurrió hace más de una hora, establezca un período de tiempo personalizado haciendo clic en el símbolo del reloj e ingresando un rango personalizado.

    Establecer plazo de consulta.

  4. Haga clic en Ejecutar consulta . Los resultados se muestran en la sección Resultados de la consulta .

  5. Haga clic en la flecha de expansión junto a cada resultado para mostrar información detallada.

  6. Para conocer los tipos de registros de auditoría de inicio de sesión del sistema operativo y lo que significan, continúe con la sección Revisar los registros de auditoría de inicio de sesión del sistema operativo de este documento.

nube de gcloud

  1. Ver registros de auditoría de la nube usando el comando gcloud logging read :

    gcloud logging read --freshness=TIME 'protoPayload.serviceName="oslogin.googleapis.com"'
    

    Reemplace TIME con la cantidad de tiempo que desea consultar. Por ejemplo, las consultas 1h registran entradas en la última hora. Para obtener información sobre los formatos de fecha y hora, consulta el tema datetimes de gcloud .

    Se muestran los resultados.

  2. Para conocer los tipos de registros de auditoría de inicio de sesión del sistema operativo y lo que significan, continúe con la sección Revisar los registros de auditoría de inicio de sesión del sistema operativo de este documento.

Revisar los registros de auditoría de inicio de sesión del sistema operativo

Revise el campo methodName de los registros de auditoría para conocer los tipos de intentos de conexión a las máquinas virtuales que tienen habilitado el inicio de sesión en el sistema operativo y los usuarios que iniciaron esos intentos de conexión.

Expanda la sección protoPayload para ver el campo methodName para el intento de conexión. Para saber qué significa cada campo methodName , consulte la siguiente tabla:

Método Tipo de conexión Descripción
google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ListLoginProfiles Todas las conexiones de inicio de sesión del sistema operativo

Indica una solicitud para enumerar los usuarios con perfiles de inicio de sesión del sistema operativo en el mismo proyecto que la máquina virtual, o una solicitud para buscar el perfil de un usuario individual.

Esta llamada ocurre cuando un usuario intenta conectarse a una VM. El agente de inicio de sesión del sistema operativo también llama periódicamente a este método para actualizar la caché de inicio de sesión.

google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy Todas las conexiones de inicio de sesión del sistema operativo

Indica un intento de conexión a una VM:

  • Para las conexiones de autenticación de dos factores (2FA), una conexión exitosa se indica mediante una llamada CheckPolicy exitosa y una llamada ContinueSession exitosa.
  • Para conexiones que no son 2FA, una respuesta exitosa indica que el usuario se conectó a la VM.

Expanda la sección authenticationInfo para ver el campo principalEmail . El campo principalEmail muestra la dirección de correo electrónico del usuario que intentó conectarse a la VM.

google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession Conexiones 2FA de inicio de sesión en el sistema operativo Indica una nueva sesión de autenticación 2FA. En una llamada StartSession , un cliente declara sus capacidades al servidor y obtiene información sobre los desafíos disponibles.
google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession Conexiones 2FA de inicio de sesión en el sistema operativo

Indica una continuación de una sesión de autenticación. El cliente completa el desafío propuesto por el servidor en la llamada o solicitud StartSession anterior y completa un tipo de desafío diferente. Luego, el método ContinueSession acepta la respuesta al desafío o método y autentica o rechaza el intento de autenticación.

Propiedades del registro de auditoría de inicio de sesión del sistema operativo

Las siguientes secciones describen las propiedades de los registros de auditoría. Algunas propiedades son comunes a todos los registros de auditoría y otras propiedades son específicas de los métodos CheckPolicy , StartSession y ContinueSession .

Propiedades comunes del registro de auditoría de inicio de sesión del sistema operativo

Las propiedades enumeradas en la siguiente tabla son comunes a todos los registros de auditoría de inicio de sesión del sistema operativo.

Propiedad Valor
serviceName oslogin.googleapis.com
resourceName Una cadena que contiene el número de proyecto que indica a qué solicitud de inicio de sesión pertenece el registro de auditoría. Por ejemplo, projects/myproject12345 .
severity El nivel de gravedad del mensaje de registro. Por ejemplo, INFO o WARNING . Para obtener más información sobre los niveles de gravedad, consulte LogSeverity .
authenticationInfo.principalEmail La dirección de correo electrónico del usuario que el método está autenticando.
request.numericProjectId El número de proyecto del proyecto de Google Cloud.

Propiedades del registro de auditoría ListLoginProfiles

Las propiedades enumeradas en la siguiente tabla se aplican a los registros de auditoría ListLoginProfiles .

Propiedad Valor
methodName google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ListLoginProfiles
request.@type type.googleapis.com/google.cloud.oslogin.dataplane.ListLoginProfilesRequest

Propiedades del registro de auditoría CheckPolicy

Las propiedades enumeradas en la siguiente tabla se aplican a los registros de auditoría CheckPolicy .

Propiedad Valor
methodName google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy
request.@type type.googleapis.com/google.cloud.oslogin.dataplane.CheckPolicyRequest
request.policy El permiso que se está verificando. Ya sea LOGIN , que verifica si el usuario está autorizado a iniciar sesión en la VM, o ADMIN_LOGIN , que verifica si el usuario está autorizado a tener acceso administrativo en la VM.
response.success El resultado de la verificación de request.policy LOGIN o ADMIN_LOGIN . true o false , dependiendo de si el usuario está autorizado para la política especificada.

Propiedades del registro de auditoría StartSession

Las propiedades enumeradas en la siguiente tabla se aplican a los registros de auditoría StartSession , para máquinas virtuales que tienen habilitado el inicio de sesión en el sistema operativo 2FA.

Propiedad Valor
methodName google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession
request.@type type.googleapis.com/google.cloud.oslogin.dataplane.StartSessionRequest
request.supportedChallengeTypes La lista de tipos de desafíos o métodos 2FA entre los que puede elegir.
response.authenticationStatus Estado de la sesión. Uno de Authenticated , Challenge required o Challenge pending .
response.sessionId Una cadena de identificación que identifica de forma única la sesión. Este ID de sesión se pasa a la llamada ContinueSession en la secuencia.
response.challenges El conjunto de desafíos que puede intentar superar durante esta ronda de autenticación. Como máximo, uno de estos desafíos está iniciado y tiene el estado READY . Los demás se proporcionan como opciones que el usuario puede especificar como alternativa al desafío principal propuesto.

ContinueSession del registro de auditoría de sesión

Las propiedades enumeradas en la siguiente tabla se aplican a los registros de auditoría ContinueSession , para máquinas virtuales que tienen habilitado el inicio de sesión en el sistema operativo 2FA.

Propiedad Valor
methodName google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession
request.sessionId Una cadena de identificación que identifica de forma única la sesión anterior. Este ID de sesión se pasa desde la llamada StartSession .
request.@type type.googleapis.com/google.cloud.oslogin.dataplane.ContinueSessionRequest
request.challengeId Una cadena de identificación que identifica qué desafío iniciar o ejecutar. Este ID debe pertenecer a un tipo de desafío devuelto por la llamada response.challenges en la respuesta StartSession .
request.action La acción a realizar para completar el desafío.
response.authenticationStatus Estado de la sesión. Por ejemplo, Authenticated , Challenge required o Challenge pending .
response.challenges.status SUCCESS indica que un usuario se ha conectado correctamente a la VM.
response.challenges El conjunto de desafíos que puede intentar para superar esta ronda de autenticación. Como máximo, uno de estos desafíos está iniciado y tiene el estado READY . Los demás se proporcionan como opciones que el usuario puede especificar como alternativa al desafío principal propuesto.

¿Qué sigue?