BatchUsageLogEvents

来自设备的 events 批量事件日志。

JSON 表示法
{
  "device": string,
  "user": string,
  "retrievalTime": string,
  "usageLogEvents": [
    {
      object (UsageLogEvent)
    }
  ]
}
字段
device

string

设备名称,格式为“enterprises/{enterpriseId}/devices/{deviceId}”(如果存在)

user

string

拥有此设备的用户的资源名称(如果存在),格式为“enterprises/{enterpriseId}/users/{userId}”。

retrievalTime

string (Timestamp format)

从设备收集批量事件时的设备时间戳。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

usageLogEvents[]

object (UsageLogEvent)

设备报告的 UsageLogEvent 列表,按事件时间按时间顺序排序。

UsageLogEvent

设备上记录的事件。

JSON 表示法
{
  "eventId": string,
  "eventTime": string,
  "eventType": enum (EventType),

  // Union field event can be only one of the following:
  "adbShellCommandEvent": {
    object (AdbShellCommandEvent)
  },
  "adbShellInteractiveEvent": {
    object (AdbShellInteractiveEvent)
  },
  "appProcessStartEvent": {
    object (AppProcessStartEvent)
  },
  "keyguardDismissedEvent": {
    object (KeyguardDismissedEvent)
  },
  "keyguardDismissAuthAttemptEvent": {
    object (KeyguardDismissAuthAttemptEvent)
  },
  "keyguardSecuredEvent": {
    object (KeyguardSecuredEvent)
  },
  "filePulledEvent": {
    object (FilePulledEvent)
  },
  "filePushedEvent": {
    object (FilePushedEvent)
  },
  "certAuthorityInstalledEvent": {
    object (CertAuthorityInstalledEvent)
  },
  "certAuthorityRemovedEvent": {
    object (CertAuthorityRemovedEvent)
  },
  "certValidationFailureEvent": {
    object (CertValidationFailureEvent)
  },
  "cryptoSelfTestCompletedEvent": {
    object (CryptoSelfTestCompletedEvent)
  },
  "keyDestructionEvent": {
    object (KeyDestructionEvent)
  },
  "keyGeneratedEvent": {
    object (KeyGeneratedEvent)
  },
  "keyImportEvent": {
    object (KeyImportEvent)
  },
  "keyIntegrityViolationEvent": {
    object (KeyIntegrityViolationEvent)
  },
  "loggingStartedEvent": {
    object (LoggingStartedEvent)
  },
  "loggingStoppedEvent": {
    object (LoggingStoppedEvent)
  },
  "logBufferSizeCriticalEvent": {
    object (LogBufferSizeCriticalEvent)
  },
  "mediaMountEvent": {
    object (MediaMountEvent)
  },
  "mediaUnmountEvent": {
    object (MediaUnmountEvent)
  },
  "osShutdownEvent": {
    object (OsShutdownEvent)
  },
  "osStartupEvent": {
    object (OsStartupEvent)
  },
  "remoteLockEvent": {
    object (RemoteLockEvent)
  },
  "wipeFailureEvent": {
    object (WipeFailureEvent)
  },
  "connectEvent": {
    object (ConnectEvent)
  },
  "dnsEvent": {
    object (DnsEvent)
  },
  "stopLostModeUserAttemptEvent": {
    object (StopLostModeUserAttemptEvent)
  },
  "lostModeOutgoingPhoneCallEvent": {
    object (LostModeOutgoingPhoneCallEvent)
  },
  "lostModeLocationEvent": {
    object (LostModeLocationEvent)
  },
  "enrollmentCompleteEvent": {
    object (EnrollmentCompleteEvent)
  }
  // End of list of possible types for union field event.
}
字段
eventId

string (int64 format)

事件的唯一 ID。

eventTime

string (Timestamp format)

记录事件时的设备时间戳。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

eventType

enum (EventType)

设备上报告的特定使用情况日志事件类型。使用此方法确定要访问的 event 字段。

联合字段 event。设备上记录的事件类型。请参阅每种事件类型,详细了解何时发送事件、对何时记录事件以及包含哪些字段的限制。event 只能是下列其中一项:
adbShellCommandEvent

object (AdbShellCommandEvent)

系统通过“adb shell 命令”在 ADB 上发出了 shell 命令。“SECURITY_LOGS”的一部分。

adbShellInteractiveEvent

object (AdbShellInteractiveEvent)

通过“adb shell”打开了一个 ADB 交互式 shell。“SECURITY_LOGS”的一部分。

appProcessStartEvent

object (AppProcessStartEvent)

启动了应用进程。“SECURITY_LOGS”的一部分。

keyguardDismissedEvent

object (KeyguardDismissedEvent)

键盘锁已关闭。“SECURITY_LOGS”的一部分。

keyguardDismissAuthAttemptEvent

object (KeyguardDismissAuthAttemptEvent)

有人尝试解锁设备。“SECURITY_LOGS”的一部分。

keyguardSecuredEvent

object (KeyguardSecuredEvent)

设备被用户锁定或超时。“SECURITY_LOGS”的一部分。

filePulledEvent

object (FilePulledEvent)

从设备下载了一个文件。“SECURITY_LOGS”的一部分。

filePushedEvent

object (FilePushedEvent)

一个文件上传到了设备。“SECURITY_LOGS”的一部分。

certAuthorityInstalledEvent

object (CertAuthorityInstalledEvent)

新的根证书已安装到系统的可信凭据存储空间中。“SECURITY_LOGS”的一部分。

certAuthorityRemovedEvent

object (CertAuthorityRemovedEvent)

一个根证书已从系统的可信凭据存储空间中移除。“SECURITY_LOGS”的一部分。

certValidationFailureEvent

object (CertValidationFailureEvent)

X.509v3 证书验证失败,目前在 Wi-Fi 接入点上执行此验证,验证失败可能是服务器证书验证不匹配所致。不过,它将来可能会包含 X.509v3 证书的其他验证事件。“SECURITY_LOGS”的一部分。

cryptoSelfTestCompletedEvent

object (CryptoSelfTestCompletedEvent)

验证 Android 的内置加密库 (BoringSSL) 是否有效。应该会在设备启动时始终成功;如果启动失败,则相应设备应被视为不可信设备。“SECURITY_LOGS”的一部分。

keyDestructionEvent

object (KeyDestructionEvent)

由用户或管理者从设备中移除某个加密密钥(包括用户安装的、由管理员安装的和由系统维护的私钥)。“SECURITY_LOGS”的一部分。

keyGeneratedEvent

object (KeyGeneratedEvent)

由用户或管理者在设备上安装的加密密钥包括由用户安装的、由管理员安装的和由系统维护的私钥。“SECURITY_LOGS”的一部分。

keyImportEvent

object (KeyImportEvent)

由用户或管理者将加密密钥(包括用户安装的私钥、管理员安装的私钥和系统维护的私钥)导入设备。“SECURITY_LOGS”的一部分。

keyIntegrityViolationEvent

object (KeyIntegrityViolationEvent)

我们发现某个加密密钥(包括用户安装的、由管理员安装的和由系统维护的私钥)遭到了损坏,原因是存储设备损坏、硬件故障或某些操作系统问题。“SECURITY_LOGS”的一部分。

loggingStartedEvent

object (LoggingStartedEvent)

已启用“usageLog”政策。“SECURITY_LOGS”的一部分。

loggingStoppedEvent

object (LoggingStoppedEvent)

usageLog政策已停用。“SECURITY_LOGS”的一部分。

logBufferSizeCriticalEvent

object (LogBufferSizeCriticalEvent)

审核日志缓冲区已达到其容量的 90%,因此较早的事件可能会被舍弃。“SECURITY_LOGS”的一部分。

mediaMountEvent

object (MediaMountEvent)

已装载可移动介质。“SECURITY_LOGS”的一部分。

mediaUnmountEvent

object (MediaUnmountEvent)

已卸载可移动介质。“SECURITY_LOGS”的一部分。

osShutdownEvent

object (OsShutdownEvent)

设备已关机。“SECURITY_LOGS”的一部分。

osStartupEvent

object (OsStartupEvent)

设备已启动。“SECURITY_LOGS”的一部分。

remoteLockEvent

object (RemoteLockEvent)

已通过 LOCK 命令远程锁定设备或个人资料。“SECURITY_LOGS”的一部分。

wipeFailureEvent

object (WipeFailureEvent)

未能按照要求擦除工作资料或公司自有设备。可能由用户启动或由管理员启动,例如已收到 delete。“SECURITY_LOGS”的一部分。

connectEvent

object (ConnectEvent)

TCP 连接事件通过标准网络堆栈发起。“NETWORK_ACTIVITY_LOGS”的一部分。

dnsEvent

object (DnsEvent)

DNS 查找事件通过标准网络堆栈启动。“NETWORK_ACTIVITY_LOGS”的一部分。

stopLostModeUserAttemptEvent

object (StopLostModeUserAttemptEvent)

尝试使设备退出丢失模式。

lostModeOutgoingPhoneCallEvent

object (LostModeOutgoingPhoneCallEvent)

设备处于丢失模式时去电。

lostModeLocationEvent

object (LostModeLocationEvent)

设备处于丢失模式时,系统会更新丢失模式的位置信息。

enrollmentCompleteEvent

object (EnrollmentCompleteEvent)

设备已完成注册。“AMAPI_LOGS”的一部分。

KeyguardDismissedEvent

此类型没有字段。

键盘锁已关闭。特意为空。

KeyguardDismissAuthAttemptEvent

有人尝试解锁设备。

JSON 表示法
{
  "success": boolean,
  "strongAuthMethodUsed": boolean
}
字段
success

boolean

解锁尝试是否成功。

strongAuthMethodUsed

boolean

是否使用了安全系数高的身份验证方式(密码、PIN 码或图案)来解锁设备。

KeyguardSecuredEvent

此类型没有字段。

设备被用户锁定或超时。特意为空。

FilePulledEvent

从设备下载了一个文件。

JSON 表示法
{
  "filePath": string
}
字段
filePath

string

要提取的文件的路径。

FilePushedEvent

一个文件上传到了设备。

JSON 表示法
{
  "filePath": string
}
字段
filePath

string

要推送的文件的路径。

CertAuthorityInstalledEvent

新的根证书已安装到系统的可信凭据存储空间中。在完全受管设备上,您可以在整个设备范围内使用;在组织拥有的装有工作资料的单位自有设备上的工作资料中,可以使用此 API。

JSON 表示法
{
  "certificate": string,
  "userId": integer,
  "success": boolean
}
字段
certificate

string

证书的主题。

userId

integer

发生了证书安装事件的用户。仅适用于搭载 Android 11 及更高版本的设备。

success

boolean

安装事件是否成功。

CertAuthorityRemovedEvent

一个根证书已从系统的可信凭据存储空间中移除。在完全受管设备上,您可以在整个设备范围内使用;在组织自有且装有工作资料的设备上的工作资料中,可以使用此 API。

JSON 表示法
{
  "certificate": string,
  "userId": integer,
  "success": boolean
}
字段
certificate

string

证书的主题。

userId

integer

发生了证书移除事件的用户。仅适用于搭载 Android 11 及更高版本的设备。

success

boolean

移除是否成功。

CertValidationFailureEvent

X.509v3 证书验证失败,目前在 Wi-Fi 接入点上执行此验证,验证失败可能是服务器证书验证不匹配所致。不过,它将来可能会包含 X.509v3 证书的其他验证事件。

JSON 表示法
{
  "failureReason": string
}
字段
failureReason

string

认证验证失败的原因。

CryptoSelfTestCompletedEvent

验证 Android 的内置加密库 (BoringSSL) 是否有效。应该会在设备启动时始终成功;如果启动失败,则相应设备应被视为不可信设备。

JSON 表示法
{
  "success": boolean
}
字段
success

boolean

测试是否成功。

KeyDestructionEvent

加密密钥(包括用户安装的、由管理员安装的和系统维护的私钥)已被用户或管理者从设备中移除。在完全受管设备上,您可以在整个设备范围内使用;在组织拥有的装有工作资料的单位自有设备上的工作资料中,可以使用此 API。

JSON 表示法
{
  "keyAlias": string,
  "applicationUid": integer,
  "success": boolean
}
字段
keyAlias

string

密钥的别名。

applicationUid

integer

拥有密钥的应用的 UID。

success

boolean

操作是否成功。

KeyGeneratedEvent

加密密钥(包括用户安装的、由管理员安装的和由系统维护的私钥)已由用户或管理者在设备上安装。在完全受管设备上均可使用,在单位拥有且装有工作资料的单位设备上的工作资料中。

JSON 表示法
{
  "keyAlias": string,
  "applicationUid": integer,
  "success": boolean
}
字段
keyAlias

string

密钥的别名。

applicationUid

integer

生成密钥的应用的 UID。

success

boolean

操作是否成功。

KeyImportEvent

由用户或管理者将加密密钥(包括用户安装的私钥、管理员安装的私钥和系统维护的私钥)导入设备上。在完全受管设备上,您可以在整个设备范围内使用;在组织拥有的装有工作资料的单位自有设备上的工作资料中,可以使用此 API。

JSON 表示法
{
  "keyAlias": string,
  "applicationUid": integer,
  "success": boolean
}
字段
keyAlias

string

密钥的别名。

applicationUid

integer

导入密钥的应用的 UID

success

boolean

操作是否成功。

KeyIntegrityViolationEvent

我们发现某个加密密钥(包括用户安装的、由管理员安装的和由系统维护的私钥)遭到了损坏,原因是存储设备损坏、硬件故障或某些操作系统问题。在完全受管设备上,您可以在整个设备范围内使用;在组织自有且装有工作资料的设备上的工作资料中,可以使用此 API。

JSON 表示法
{
  "keyAlias": string,
  "applicationUid": integer
}
字段
keyAlias

string

密钥的别名。

applicationUid

integer

拥有密钥的应用的 UID

LoggingStartedEvent

此类型没有字段。

已启用“usageLog”政策。特意为空。

LoggingStoppedEvent

此类型没有字段。

usageLog政策已停用。特意为空。

LogBufferSizeCriticalEvent

此类型没有字段。

设备上的 usageLog 缓冲区已达到其容量的 90%,因此较旧的事件可能会被丢弃。特意为空。

MediaMountEvent

已装载可移动介质。

JSON 表示法
{
  "mountPoint": string,
  "volumeLabel": string
}
字段
mountPoint

string

装载点。

volumeLabel

string

卷标签。在组织自有的受管理个人资料设备上隐去为空字符串。

MediaUnmountEvent

已卸载可移动介质。

JSON 表示法
{
  "mountPoint": string,
  "volumeLabel": string
}
字段
mountPoint

string

装载点。

volumeLabel

string

卷标签。在组织自有的受管理个人资料设备上隐去为空字符串。

OsShutdownEvent

此类型没有字段。

设备已关机。特意为空。

OsStartupEvent

设备已启动。

JSON 表示法
{
  "verifiedBootState": enum (VerifiedBootState),
  "verityMode": enum (DmVerityMode)
}
字段
verifiedBootState

enum (VerifiedBootState)

启动时验证状态。

verityMode

enum (DmVerityMode)

dm-verity 模式。

RemoteLockEvent

已通过 LOCK 命令远程锁定设备或个人资料。

JSON 表示法
{
  "adminPackageName": string,
  "adminUserId": integer,
  "targetUserId": integer
}
字段
adminPackageName

string

请求更改的管理应用的软件包名称。

adminUserId

integer

提出更改请求的管理应用的用户 ID。

targetUserId

integer

提出更改请求的用户 ID。

WipeFailureEvent

此类型没有字段。

未能按照要求擦除工作资料或公司自有设备。可能由用户启动或由管理员启动,例如已收到 delete。特意为空。

ConnectEvent

TCP 连接事件通过标准网络堆栈发起。

JSON 表示法
{
  "destinationIpAddress": string,
  "destinationPort": integer,
  "packageName": string
}
字段
destinationIpAddress

string

连接调用的目标 IP 地址。

destinationPort

integer

Connect 调用的目标端口。

packageName

string

执行连接调用的 UID 的软件包名称。

DnsEvent

DNS 查找事件通过标准网络堆栈启动。

JSON 表示法
{
  "hostname": string,
  "ipAddresses": [
    string
  ],
  "totalIpAddressesReturned": string,
  "packageName": string
}
字段
hostname

string

查询的主机名。

ipAddresses[]

string

DNS 查找返回的 IP 地址列表(可能被截断),最多 10 个 IPv4 或 IPv6 地址。

totalIpAddressesReturned

string (int64 format)

DNS 查找事件返回的 IP 地址数量。如果要记录的地址过多,可能会多于 ipAddresses 数量。

packageName

string

执行 DNS 查找的 UID 的软件包名称。

StopLostModeUserAttemptEvent

丢失模式事件,表示用户尝试停止丢失模式。

JSON 表示法
{
  "status": enum (Status)
}
字段
status

enum (Status)

尝试停止丢失模式的状态。

LostModeOutgoingPhoneCallEvent

此类型没有字段。

当设备处于丢失模式时,表示拨打了电话的事件。特意为空。

LostModeLocationEvent

丢失模式事件,包含设备位置和电池电量(以百分比表示)。

JSON 表示法
{
  "location": {
    object (Location)
  },
  "batteryLevel": integer
}
字段
location

object (Location)

设备位置信息

batteryLevel

integer

电池电量,以 0 到 100(含 0 和 100)之间的数字表示

位置

包含纬度和经度的设备位置信息。

JSON 表示法
{
  "latitude": number,
  "longitude": number
}
字段
latitude

number

相应位置的纬度位置

longitude

number

相应位置的经度位置

EnrollmentCompleteEvent

此类型没有字段。

表示设备已完成注册。此时,用户应该位于启动器中,此时设备将合规,并且所有设置步骤都已完成。特意为空。