Monitor OS Login audit logs


This document describes audit logging for OS Login. Google Cloud services generate audit logs that record administrative and access activities within your Google Cloud resources. For more information about Cloud Audit Logs, see the following:

Notes

This document describes the audit logs generated by the OS Login API. For detailed information about the IAM permissions necessary to use the OS Login service, see Set up OS Login.

Service name

OS Login audit logs use the service name oslogin.googleapis.com. Filter for this service:

    protoPayload.serviceName="oslogin.googleapis.com"
  

Methods by permission type

Each IAM permission has a type property, whose value is an enum that can be one of four values: ADMIN_READ, ADMIN_WRITE, DATA_READ, or DATA_WRITE. When you call a method, OS Login generates an audit log whose category is dependent on the type property of the permission required to perform the method. Methods that require an IAM permission with the type property value of DATA_READ, DATA_WRITE, or ADMIN_READ generate Data Access audit logs. Methods that require an IAM permission with the type property value of ADMIN_WRITE generate Admin Activity audit logs.

Permission type Methods
DATA_WRITE google.cloud.oslogin.v1.OsLoginService.ImportSshPublicKey
google.cloud.oslogin.v1alpha.OsLoginService.SignSshPublicKey
google.cloud.oslogin.v1beta.OsLoginService.ImportSshPublicKey
google.cloud.oslogin.v1beta.OsLoginService.ProvisionPosixAccount
google.cloud.oslogin.v1beta.OsLoginService.SignSshPublicKey

API interface audit logs

For information about how and which permissions are evaluated for each method, see the Identity and Access Management documentation for OS Login.

google.cloud.oslogin.controlplane.regional.v1alpha.OsLoginRegionalService

The following audit logs are associated with methods belonging to google.cloud.oslogin.controlplane.regional.v1alpha.OsLoginRegionalService.

SignSshPublicKey

  • Method: google.cloud.oslogin.controlplane.regional.v1alpha.OsLoginRegionalService.SignSshPublicKey
  • Audit log type: Data access
  • Permissions:
    • compute.instances.osAdminLogin - ADMIN_READ
    • compute.instances.osLogin - ADMIN_READ
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.controlplane.regional.v1alpha.OsLoginRegionalService.SignSshPublicKey"

google.cloud.oslogin.controlplane.regional.v1beta.OsLoginRegionalService

The following audit logs are associated with methods belonging to google.cloud.oslogin.controlplane.regional.v1beta.OsLoginRegionalService.

SignSshPublicKey

  • Method: google.cloud.oslogin.controlplane.regional.v1beta.OsLoginRegionalService.SignSshPublicKey
  • Audit log type: Data access
  • Permissions:
    • compute.instances.osAdminLogin - ADMIN_READ
    • compute.instances.osLogin - ADMIN_READ
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.controlplane.regional.v1beta.OsLoginRegionalService.SignSshPublicKey"

google.cloud.oslogin.dataplane.OsLoginDataPlaneService

The following audit logs are associated with methods belonging to google.cloud.oslogin.dataplane.OsLoginDataPlaneService.

ListLoginProfiles

  • Method: google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ListLoginProfiles
  • Audit log type: Data access
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ListLoginProfiles"

CheckPolicy

  • Method: google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy
  • Audit log type: Data access
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy"

StartSession

  • Method: google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession
  • Audit log type: Data access
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession"

ContinueSession

  • Method: google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession
  • Audit log type: Data access
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession"

google.cloud.oslogin.v1.OsLoginService

The following audit logs are associated with methods belonging to google.cloud.oslogin.v1.OsLoginService.

ImportSshPublicKey

  • Method: google.cloud.oslogin.v1.OsLoginService.ImportSshPublicKey
  • Audit log type: Data access
  • Permissions:
    • compute.oslogin.updateExternalUser - DATA_WRITE
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.v1.OsLoginService.ImportSshPublicKey"

google.cloud.oslogin.v1alpha.OsLoginService

The following audit logs are associated with methods belonging to google.cloud.oslogin.v1alpha.OsLoginService.

SignSshPublicKey

  • Method: google.cloud.oslogin.v1alpha.OsLoginService.SignSshPublicKey
  • Audit log type: Data access
  • Permissions:
    • compute.oslogin.updateExternalUser - DATA_WRITE
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.v1alpha.OsLoginService.SignSshPublicKey"

google.cloud.oslogin.v1beta.OsLoginService

The following audit logs are associated with methods belonging to google.cloud.oslogin.v1beta.OsLoginService.

ImportSshPublicKey

  • Method: google.cloud.oslogin.v1beta.OsLoginService.ImportSshPublicKey
  • Audit log type: Data access
  • Permissions:
    • compute.oslogin.updateExternalUser - DATA_WRITE
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.v1beta.OsLoginService.ImportSshPublicKey"

ProvisionPosixAccount

  • Method: google.cloud.oslogin.v1beta.OsLoginService.ProvisionPosixAccount
  • Audit log type: Data access
  • Permissions:
    • compute.oslogin.updateExternalUser - DATA_WRITE
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.v1beta.OsLoginService.ProvisionPosixAccount"

SignSshPublicKey

  • Method: google.cloud.oslogin.v1beta.OsLoginService.SignSshPublicKey
  • Audit log type: Data access
  • Permissions:
    • compute.oslogin.updateExternalUser - DATA_WRITE
  • Method is a long-running or streaming operation: No.
  • Filter for this method: protoPayload.methodName="google.cloud.oslogin.v1beta.OsLoginService.SignSshPublicKey"

Methods that don't produce audit logs

Several OS Login methods don't produce audit logs because they act on resources that are scoped to a user, and not to a project, folder, or organization.

The following methods don't produce audit logs:

  • google.cloud.oslogin.v1.OsLoginService.CreateSshPublicKey
  • google.cloud.oslogin.v1.OsLoginService.DeletePosixAccount
  • google.cloud.oslogin.v1.OsLoginService.DeleteSshPublicKey
  • google.cloud.oslogin.v1.OsLoginService.GetLoginProfile
  • google.cloud.oslogin.v1.OsLoginService.GetSshPublicKey
  • google.cloud.oslogin.v1.OsLoginService.UpdateSshPublicKey
  • google.cloud.oslogin.v1alpha.OsLoginService.CreateSshPublicKey
  • google.cloud.oslogin.v1alpha.OsLoginService.DeletePosixAccount
  • google.cloud.oslogin.v1alpha.OsLoginService.DeleteSshPublicKey
  • google.cloud.oslogin.v1alpha.OsLoginService.GetLoginProfile
  • google.cloud.oslogin.v1alpha.OsLoginService.GetSshPublicKey
  • google.cloud.oslogin.v1alpha.OsLoginService.ProvisionPosixAccount
  • google.cloud.oslogin.v1alpha.OsLoginService.UpdateSshPublicKey
  • google.cloud.oslogin.v1beta.OsLoginService.CreateSshPublicKey
  • google.cloud.oslogin.v1beta.OsLoginService.DeletePosixAccount
  • google.cloud.oslogin.v1beta.OsLoginService.DeleteSshPublicKey
  • google.cloud.oslogin.v1beta.OsLoginService.GetLoginProfile
  • google.cloud.oslogin.v1beta.OsLoginService.GetSshPublicKey
  • google.cloud.oslogin.v1beta.OsLoginService.UpdateSshPublicKey

What's next?