mirror of
https://dev.azure.com/schwarzit/schwarzit.stackit-public/_git/audit-go
synced 2026-02-16 12:51:44 +00:00
2644 lines
108 KiB
Go
2644 lines
108 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.34.1
|
|
// protoc (unknown)
|
|
// source: audit/v1/audit_event.proto
|
|
|
|
package auditV1
|
|
|
|
import (
|
|
_ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate"
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
anypb "google.golang.org/protobuf/types/known/anypb"
|
|
structpb "google.golang.org/protobuf/types/known/structpb"
|
|
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
// The severity of the event described in a log entry, expressed as one of the
|
|
// standard severity levels listed below. For your reference, the levels are
|
|
// assigned the listed numeric values. The effect of using numeric values other
|
|
// than those listed is undefined.
|
|
// Copied from
|
|
// https://github.com/googleapis/googleapis/blob/master/google/logging/type/log_severity.proto
|
|
type LogSeverity int32
|
|
|
|
const (
|
|
// (0) The log entry has no assigned severity level.
|
|
LogSeverity_DEFAULT LogSeverity = 0
|
|
// (100) Debug or trace information.
|
|
LogSeverity_DEBUG LogSeverity = 100
|
|
// (200) Routine information, such as ongoing status or performance.
|
|
LogSeverity_INFO LogSeverity = 200
|
|
// (300) Normal but significant events, such as start up, shut down, or
|
|
// a configuration change.
|
|
LogSeverity_NOTICE LogSeverity = 300
|
|
// (400) Warning events might cause problems.
|
|
LogSeverity_WARNING LogSeverity = 400
|
|
// (500) Error events are likely to cause problems.
|
|
LogSeverity_ERROR LogSeverity = 500
|
|
// (600) Critical events cause more severe problems or outages.
|
|
LogSeverity_CRITICAL LogSeverity = 600
|
|
// (700) A person must take an action immediately.
|
|
LogSeverity_ALERT LogSeverity = 700
|
|
// (800) One or more systems are unusable.
|
|
LogSeverity_EMERGENCY LogSeverity = 800
|
|
)
|
|
|
|
// Enum value maps for LogSeverity.
|
|
var (
|
|
LogSeverity_name = map[int32]string{
|
|
0: "DEFAULT",
|
|
100: "DEBUG",
|
|
200: "INFO",
|
|
300: "NOTICE",
|
|
400: "WARNING",
|
|
500: "ERROR",
|
|
600: "CRITICAL",
|
|
700: "ALERT",
|
|
800: "EMERGENCY",
|
|
}
|
|
LogSeverity_value = map[string]int32{
|
|
"DEFAULT": 0,
|
|
"DEBUG": 100,
|
|
"INFO": 200,
|
|
"NOTICE": 300,
|
|
"WARNING": 400,
|
|
"ERROR": 500,
|
|
"CRITICAL": 600,
|
|
"ALERT": 700,
|
|
"EMERGENCY": 800,
|
|
}
|
|
)
|
|
|
|
func (x LogSeverity) Enum() *LogSeverity {
|
|
p := new(LogSeverity)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x LogSeverity) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (LogSeverity) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_audit_v1_audit_event_proto_enumTypes[0].Descriptor()
|
|
}
|
|
|
|
func (LogSeverity) Type() protoreflect.EnumType {
|
|
return &file_audit_v1_audit_event_proto_enumTypes[0]
|
|
}
|
|
|
|
func (x LogSeverity) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use LogSeverity.Descriptor instead.
|
|
func (LogSeverity) EnumDescriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
// The data within all Cloud Audit Logs log entry events.
|
|
// Equivalent to Google's LogEntryData.
|
|
type AuditEvent struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The resource name of the log to which this log entry belongs.
|
|
LogName string `protobuf:"bytes,12,opt,name=log_name,json=logName,proto3" json:"log_name,omitempty"`
|
|
// The monitored resource that produced this log entry.
|
|
//
|
|
// Example: a log entry that reports a database error would be associated with
|
|
// the monitored resource designating the particular database that reported
|
|
// the error.
|
|
Resource *MonitoredResource `protobuf:"bytes,8,opt,name=resource,proto3" json:"resource,omitempty"`
|
|
// The log entry payload, which is always an AuditLog for Cloud Audit Log
|
|
// events.
|
|
ProtoPayload *AuditLog `protobuf:"bytes,2,opt,name=proto_payload,json=protoPayload,proto3" json:"proto_payload,omitempty"`
|
|
// A unique identifier for the log entry.
|
|
InsertId string `protobuf:"bytes,4,opt,name=insert_id,json=insertId,proto3" json:"insert_id,omitempty"`
|
|
// A set of user-defined (key, value) data that provides additional
|
|
// information about the log entry.
|
|
Labels map[string]string `protobuf:"bytes,11,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
// Information about an operation associated with the log entry, if
|
|
// applicable.
|
|
Operation *LogEntryOperation `protobuf:"bytes,15,opt,name=operation,proto3" json:"operation,omitempty"`
|
|
// The time the event described by the log entry occurred.
|
|
Timestamp *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
|
|
// The time the log entry was received by Logging.
|
|
ReceiveTimestamp *timestamppb.Timestamp `protobuf:"bytes,24,opt,name=receive_timestamp,json=receiveTimestamp,proto3" json:"receive_timestamp,omitempty"`
|
|
// The severity of the log entry.
|
|
Severity LogSeverity `protobuf:"varint,10,opt,name=severity,proto3,enum=audit.v1.LogSeverity" json:"severity,omitempty"`
|
|
// Resource name of the trace associated with the log entry, if any. If it
|
|
// contains a relative resource name, the name is assumed to be relative to
|
|
// `//tracing.googleapis.com`. Example:
|
|
// `projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824`
|
|
Trace string `protobuf:"bytes,22,opt,name=trace,proto3" json:"trace,omitempty"`
|
|
// The span ID within the trace associated with the log entry, if any.
|
|
//
|
|
// For Trace spans, this is the same format that the Trace API v2 uses: a
|
|
// 16-character hexadecimal encoding of an 8-byte array, such as
|
|
// `000000000000004a`.
|
|
SpanId string `protobuf:"bytes,27,opt,name=span_id,json=spanId,proto3" json:"span_id,omitempty"`
|
|
// Information indicating this LogEntry is part of a sequence of multiple logs
|
|
// split from a single LogEntry.
|
|
Split *LogSplit `protobuf:"bytes,35,opt,name=split,proto3" json:"split,omitempty"`
|
|
}
|
|
|
|
func (x *AuditEvent) Reset() {
|
|
*x = AuditEvent{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AuditEvent) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AuditEvent) ProtoMessage() {}
|
|
|
|
func (x *AuditEvent) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[0]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AuditEvent.ProtoReflect.Descriptor instead.
|
|
func (*AuditEvent) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *AuditEvent) GetLogName() string {
|
|
if x != nil {
|
|
return x.LogName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditEvent) GetResource() *MonitoredResource {
|
|
if x != nil {
|
|
return x.Resource
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditEvent) GetProtoPayload() *AuditLog {
|
|
if x != nil {
|
|
return x.ProtoPayload
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditEvent) GetInsertId() string {
|
|
if x != nil {
|
|
return x.InsertId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditEvent) GetLabels() map[string]string {
|
|
if x != nil {
|
|
return x.Labels
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditEvent) GetOperation() *LogEntryOperation {
|
|
if x != nil {
|
|
return x.Operation
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditEvent) GetTimestamp() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.Timestamp
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditEvent) GetReceiveTimestamp() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.ReceiveTimestamp
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditEvent) GetSeverity() LogSeverity {
|
|
if x != nil {
|
|
return x.Severity
|
|
}
|
|
return LogSeverity_DEFAULT
|
|
}
|
|
|
|
func (x *AuditEvent) GetTrace() string {
|
|
if x != nil {
|
|
return x.Trace
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditEvent) GetSpanId() string {
|
|
if x != nil {
|
|
return x.SpanId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditEvent) GetSplit() *LogSplit {
|
|
if x != nil {
|
|
return x.Split
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// An object representing a resource that can be used for monitoring, logging,
|
|
// billing, or other purposes.
|
|
type MonitoredResource struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The monitored resource type. For example, the type of a
|
|
// Compute Engine VM instance is `gce_instance`.
|
|
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
|
|
// Values for all of the labels listed in the associated monitored
|
|
// resource descriptor. For example, Compute Engine VM instances use the
|
|
// labels `"project_id"`, `"instance_id"`, and `"zone"`.
|
|
Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
}
|
|
|
|
func (x *MonitoredResource) Reset() {
|
|
*x = MonitoredResource{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *MonitoredResource) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*MonitoredResource) ProtoMessage() {}
|
|
|
|
func (x *MonitoredResource) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[1]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use MonitoredResource.ProtoReflect.Descriptor instead.
|
|
func (*MonitoredResource) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *MonitoredResource) GetType() string {
|
|
if x != nil {
|
|
return x.Type
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *MonitoredResource) GetLabels() map[string]string {
|
|
if x != nil {
|
|
return x.Labels
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Additional information about a potentially long-running operation with which
|
|
// a log entry is associated.
|
|
type LogEntryOperation struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// An arbitrary operation identifier. Log entries with the same
|
|
// identifier are assumed to be part of the same operation.
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
// An arbitrary producer identifier. The combination of `id` and
|
|
// `producer` must be globally unique. Examples for `producer`:
|
|
// `"MyDivision.MyBigCompany.com"`, `"github.com/MyProject/MyApplication"`.
|
|
Producer string `protobuf:"bytes,2,opt,name=producer,proto3" json:"producer,omitempty"`
|
|
// True if this is the first log entry in the operation.
|
|
First bool `protobuf:"varint,3,opt,name=first,proto3" json:"first,omitempty"`
|
|
// True if this is the last log entry in the operation.
|
|
Last bool `protobuf:"varint,4,opt,name=last,proto3" json:"last,omitempty"`
|
|
}
|
|
|
|
func (x *LogEntryOperation) Reset() {
|
|
*x = LogEntryOperation{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *LogEntryOperation) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*LogEntryOperation) ProtoMessage() {}
|
|
|
|
func (x *LogEntryOperation) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[2]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use LogEntryOperation.ProtoReflect.Descriptor instead.
|
|
func (*LogEntryOperation) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *LogEntryOperation) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *LogEntryOperation) GetProducer() string {
|
|
if x != nil {
|
|
return x.Producer
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *LogEntryOperation) GetFirst() bool {
|
|
if x != nil {
|
|
return x.First
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *LogEntryOperation) GetLast() bool {
|
|
if x != nil {
|
|
return x.Last
|
|
}
|
|
return false
|
|
}
|
|
|
|
// Common audit log format for Google Cloud Platform API operations.
|
|
// Copied from
|
|
// https://github.com/googleapis/googleapis/blob/master/google/cloud/audit/audit_log.proto,
|
|
// but changing service_data from Any to Struct.
|
|
type AuditLog struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The name of the API service performing the operation. For example,
|
|
// `"datastore.googleapis.com"`.
|
|
ServiceName string `protobuf:"bytes,7,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
|
|
// The name of the service method or operation.
|
|
// For API calls, this should be the name of the API method.
|
|
// For example,
|
|
//
|
|
// "google.datastore.v1.Datastore.RunQuery"
|
|
// "google.logging.v1.LoggingService.DeleteLog"
|
|
MethodName string `protobuf:"bytes,8,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
|
|
// The resource or collection that is the target of the operation.
|
|
// The name is a scheme-less URI, not including the API service name.
|
|
// For example:
|
|
//
|
|
// "shelves/SHELF_ID/books"
|
|
// "shelves/SHELF_ID/books/BOOK_ID"
|
|
ResourceName string `protobuf:"bytes,11,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
|
|
// The resource location information.
|
|
ResourceLocation *ResourceLocation `protobuf:"bytes,20,opt,name=resource_location,json=resourceLocation,proto3" json:"resource_location,omitempty"`
|
|
// The resource's original state before mutation. Present only for
|
|
// operations which have successfully modified the targeted resource(s).
|
|
// In general, this field should contain all changed fields, except those
|
|
// that are already been included in `request`, `response`, `metadata` or
|
|
// `service_data` fields.
|
|
// When the JSON object represented here has a proto equivalent,
|
|
// the proto name will be indicated in the `@type` property.
|
|
ResourceOriginalState *structpb.Struct `protobuf:"bytes,19,opt,name=resource_original_state,json=resourceOriginalState,proto3" json:"resource_original_state,omitempty"`
|
|
// The number of items returned from a List or Query API method,
|
|
// if applicable.
|
|
NumResponseItems int64 `protobuf:"varint,12,opt,name=num_response_items,json=numResponseItems,proto3" json:"num_response_items,omitempty"`
|
|
// The status of the overall operation.
|
|
Status *RpcStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
|
|
// Authentication information.
|
|
AuthenticationInfo *AuthenticationInfo `protobuf:"bytes,3,opt,name=authentication_info,json=authenticationInfo,proto3" json:"authentication_info,omitempty"`
|
|
// Authorization information. If there are multiple
|
|
// resources or permissions involved, then there is
|
|
// one AuthorizationInfo element for each {resource, permission} tuple.
|
|
AuthorizationInfo []*AuthorizationInfo `protobuf:"bytes,9,rep,name=authorization_info,json=authorizationInfo,proto3" json:"authorization_info,omitempty"`
|
|
// Metadata about the operation.
|
|
RequestMetadata *RequestMetadata `protobuf:"bytes,4,opt,name=request_metadata,json=requestMetadata,proto3" json:"request_metadata,omitempty"`
|
|
// The operation request. This may not include all request parameters,
|
|
// such as those that are too large, privacy-sensitive, or duplicated
|
|
// elsewhere in the log record.
|
|
// It should never include user-generated data, such as file contents.
|
|
// When the JSON object represented here has a proto equivalent, the proto
|
|
// name will be indicated in the `@type` property.
|
|
Request *structpb.Struct `protobuf:"bytes,16,opt,name=request,proto3" json:"request,omitempty"`
|
|
// The operation response. This may not include all response elements,
|
|
// such as those that are too large, privacy-sensitive, or duplicated
|
|
// elsewhere in the log record.
|
|
// It should never include user-generated data, such as file contents.
|
|
// When the JSON object represented here has a proto equivalent, the proto
|
|
// name will be indicated in the `@type` property.
|
|
Response *structpb.Struct `protobuf:"bytes,17,opt,name=response,proto3" json:"response,omitempty"`
|
|
// Other service-specific data about the request, response, and other
|
|
// information associated with the current audited event.
|
|
Metadata *structpb.Struct `protobuf:"bytes,18,opt,name=metadata,proto3" json:"metadata,omitempty"`
|
|
// Deprecated: Use `metadata` field instead.
|
|
// Other service-specific data about the request, response, and other
|
|
// activities.
|
|
// When the JSON object represented here has a proto equivalent, the proto
|
|
// name will be indicated in the `@type` property.
|
|
ServiceData *structpb.Struct `protobuf:"bytes,15,opt,name=service_data,json=serviceData,proto3" json:"service_data,omitempty"`
|
|
}
|
|
|
|
func (x *AuditLog) Reset() {
|
|
*x = AuditLog{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AuditLog) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AuditLog) ProtoMessage() {}
|
|
|
|
func (x *AuditLog) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[3]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AuditLog.ProtoReflect.Descriptor instead.
|
|
func (*AuditLog) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *AuditLog) GetServiceName() string {
|
|
if x != nil {
|
|
return x.ServiceName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditLog) GetMethodName() string {
|
|
if x != nil {
|
|
return x.MethodName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditLog) GetResourceName() string {
|
|
if x != nil {
|
|
return x.ResourceName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuditLog) GetResourceLocation() *ResourceLocation {
|
|
if x != nil {
|
|
return x.ResourceLocation
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetResourceOriginalState() *structpb.Struct {
|
|
if x != nil {
|
|
return x.ResourceOriginalState
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetNumResponseItems() int64 {
|
|
if x != nil {
|
|
return x.NumResponseItems
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AuditLog) GetStatus() *RpcStatus {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetAuthenticationInfo() *AuthenticationInfo {
|
|
if x != nil {
|
|
return x.AuthenticationInfo
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetAuthorizationInfo() []*AuthorizationInfo {
|
|
if x != nil {
|
|
return x.AuthorizationInfo
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetRequestMetadata() *RequestMetadata {
|
|
if x != nil {
|
|
return x.RequestMetadata
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetRequest() *structpb.Struct {
|
|
if x != nil {
|
|
return x.Request
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetResponse() *structpb.Struct {
|
|
if x != nil {
|
|
return x.Response
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetMetadata() *structpb.Struct {
|
|
if x != nil {
|
|
return x.Metadata
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuditLog) GetServiceData() *structpb.Struct {
|
|
if x != nil {
|
|
return x.ServiceData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Authentication information for the operation.
|
|
type AuthenticationInfo struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The email address of the authenticated user (or service account on behalf
|
|
// of third party principal) making the request. For third party identity
|
|
// callers, the `principal_subject` field is populated instead of this field.
|
|
// For privacy reasons, the principal email address is sometimes redacted.
|
|
// For more information, see [Caller identities in audit
|
|
// logs](https://cloud.google.com/logging/docs/audit#user-id).
|
|
PrincipalEmail string `protobuf:"bytes,1,opt,name=principal_email,json=principalEmail,proto3" json:"principal_email,omitempty"`
|
|
// The authority selector specified by the requestor, if any.
|
|
// It is not guaranteed that the principal was allowed to use this authority.
|
|
AuthoritySelector string `protobuf:"bytes,2,opt,name=authority_selector,json=authoritySelector,proto3" json:"authority_selector,omitempty"`
|
|
// The third party identification (if any) of the authenticated user making
|
|
// the request.
|
|
// When the JSON object represented here has a proto equivalent, the proto
|
|
// name will be indicated in the `@type` property.
|
|
ThirdPartyPrincipal *structpb.Struct `protobuf:"bytes,4,opt,name=third_party_principal,json=thirdPartyPrincipal,proto3" json:"third_party_principal,omitempty"`
|
|
// The name of the service account key used to create or exchange
|
|
// credentials for authenticating the service account making the request.
|
|
// This is a scheme-less URI full resource name. For example:
|
|
//
|
|
// "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}"
|
|
ServiceAccountKeyName string `protobuf:"bytes,5,opt,name=service_account_key_name,json=serviceAccountKeyName,proto3" json:"service_account_key_name,omitempty"`
|
|
// Identity delegation history of an authenticated service account that makes
|
|
// the request. It contains information on the real authorities that try to
|
|
// access GCP resources by delegating on a service account. When multiple
|
|
// authorities present, they are guaranteed to be sorted based on the original
|
|
// ordering of the identity delegation events.
|
|
ServiceAccountDelegationInfo []*ServiceAccountDelegationInfo `protobuf:"bytes,6,rep,name=service_account_delegation_info,json=serviceAccountDelegationInfo,proto3" json:"service_account_delegation_info,omitempty"`
|
|
// String representation of identity of requesting party.
|
|
// Populated for both first and third party identities.
|
|
PrincipalSubject string `protobuf:"bytes,8,opt,name=principal_subject,json=principalSubject,proto3" json:"principal_subject,omitempty"`
|
|
}
|
|
|
|
func (x *AuthenticationInfo) Reset() {
|
|
*x = AuthenticationInfo{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AuthenticationInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AuthenticationInfo) ProtoMessage() {}
|
|
|
|
func (x *AuthenticationInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[4]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AuthenticationInfo.ProtoReflect.Descriptor instead.
|
|
func (*AuthenticationInfo) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *AuthenticationInfo) GetPrincipalEmail() string {
|
|
if x != nil {
|
|
return x.PrincipalEmail
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthenticationInfo) GetAuthoritySelector() string {
|
|
if x != nil {
|
|
return x.AuthoritySelector
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthenticationInfo) GetThirdPartyPrincipal() *structpb.Struct {
|
|
if x != nil {
|
|
return x.ThirdPartyPrincipal
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuthenticationInfo) GetServiceAccountKeyName() string {
|
|
if x != nil {
|
|
return x.ServiceAccountKeyName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthenticationInfo) GetServiceAccountDelegationInfo() []*ServiceAccountDelegationInfo {
|
|
if x != nil {
|
|
return x.ServiceAccountDelegationInfo
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AuthenticationInfo) GetPrincipalSubject() string {
|
|
if x != nil {
|
|
return x.PrincipalSubject
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Authorization information for the operation.
|
|
type AuthorizationInfo struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The resource being accessed, as a REST-style string. For example:
|
|
//
|
|
// bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID
|
|
Resource string `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
|
|
// The required IAM permission.
|
|
Permission string `protobuf:"bytes,2,opt,name=permission,proto3" json:"permission,omitempty"`
|
|
// Whether or not authorization for `resource` and `permission`
|
|
// was granted.
|
|
Granted bool `protobuf:"varint,3,opt,name=granted,proto3" json:"granted,omitempty"`
|
|
// Resource attributes used in IAM condition evaluation. This field contains
|
|
// resource attributes like resource type and resource name.
|
|
//
|
|
// To get the whole view of the attributes used in IAM
|
|
// condition evaluation, the user must also look into
|
|
// `AuditLogData.request_metadata.request_attributes`.
|
|
ResourceAttributes *AttributeContext_Resource `protobuf:"bytes,5,opt,name=resource_attributes,json=resourceAttributes,proto3" json:"resource_attributes,omitempty"`
|
|
}
|
|
|
|
func (x *AuthorizationInfo) Reset() {
|
|
*x = AuthorizationInfo{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AuthorizationInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AuthorizationInfo) ProtoMessage() {}
|
|
|
|
func (x *AuthorizationInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[5]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AuthorizationInfo.ProtoReflect.Descriptor instead.
|
|
func (*AuthorizationInfo) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *AuthorizationInfo) GetResource() string {
|
|
if x != nil {
|
|
return x.Resource
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthorizationInfo) GetPermission() string {
|
|
if x != nil {
|
|
return x.Permission
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AuthorizationInfo) GetGranted() bool {
|
|
if x != nil {
|
|
return x.Granted
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *AuthorizationInfo) GetResourceAttributes() *AttributeContext_Resource {
|
|
if x != nil {
|
|
return x.ResourceAttributes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// This message defines the standard attribute vocabulary for Google APIs.
|
|
//
|
|
// An attribute is a piece of metadata that describes an activity on a network
|
|
// service. For example, the size of an HTTP request, or the status code of
|
|
// an HTTP response.
|
|
//
|
|
// Each attribute has a type and a name, which is logically defined as
|
|
// a proto message field in `AttributeContext`. The field type becomes the
|
|
// attribute type, and the field path becomes the attribute name. For example,
|
|
// the attribute `source.ip` maps to field `AttributeContext.source.ip`.
|
|
//
|
|
// This message definition is guaranteed not to have any wire breaking change.
|
|
// So you can use it directly for passing attributes across different systems.
|
|
//
|
|
// NOTE: Different system may generate different subset of attributes. Please
|
|
// verify the system specification before relying on an attribute generated
|
|
// a system.
|
|
type AttributeContext struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *AttributeContext) Reset() {
|
|
*x = AttributeContext{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AttributeContext) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AttributeContext) ProtoMessage() {}
|
|
|
|
func (x *AttributeContext) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[6]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AttributeContext.ProtoReflect.Descriptor instead.
|
|
func (*AttributeContext) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
// Metadata about the request.
|
|
type RequestMetadata struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The IP address of the caller.
|
|
// For caller from internet, this will be public IPv4 or IPv6 address.
|
|
// For caller from a Compute Engine VM with external IP address, this
|
|
// will be the VM's external IP address. For caller from a Compute
|
|
// Engine VM without external IP address, if the VM is in the same
|
|
// organization (or project) as the accessed resource, `caller_ip` will
|
|
// be the VM's internal IPv4 address, otherwise the `caller_ip` will be
|
|
// redacted to "gce-internal-ip".
|
|
// See https://cloud.google.com/compute/docs/vpc/ for more information.
|
|
CallerIp string `protobuf:"bytes,1,opt,name=caller_ip,json=callerIp,proto3" json:"caller_ip,omitempty"`
|
|
// The user agent of the caller.
|
|
// This information is not authenticated and should be treated accordingly.
|
|
// For example:
|
|
//
|
|
// - `google-api-python-client/1.4.0`:
|
|
// The request was made by the Google API client for Python.
|
|
// - `Cloud SDK Command Line Tool apitools-client/1.0 gcloud/0.9.62`:
|
|
// The request was made by the Google Cloud SDK CLI (gcloud).
|
|
// - `AppEngine-Google; (+http://code.google.com/appengine; appid:
|
|
//
|
|
// s~my-project`:
|
|
//
|
|
// The request was made from the `my-project` App Engine app.
|
|
CallerSuppliedUserAgent string `protobuf:"bytes,2,opt,name=caller_supplied_user_agent,json=callerSuppliedUserAgent,proto3" json:"caller_supplied_user_agent,omitempty"`
|
|
// The network of the caller.
|
|
// Set only if the network host project is part of the same GCP organization
|
|
// (or project) as the accessed resource.
|
|
// See https://cloud.google.com/compute/docs/vpc/ for more information.
|
|
// This is a scheme-less URI full resource name. For example:
|
|
//
|
|
// "//compute.googleapis.com/projects/PROJECT_ID/global/networks/NETWORK_ID"
|
|
CallerNetwork string `protobuf:"bytes,3,opt,name=caller_network,json=callerNetwork,proto3" json:"caller_network,omitempty"`
|
|
// Request attributes used in IAM condition evaluation. This field contains
|
|
// request attributes like request time and access levels associated with
|
|
// the request.
|
|
//
|
|
// To get the whole view of the attributes used in IAM
|
|
// condition evaluation, the user must also look into
|
|
// `AuditLog.authentication_info.resource_attributes`.
|
|
RequestAttributes *AttributeContext_Request `protobuf:"bytes,7,opt,name=request_attributes,json=requestAttributes,proto3" json:"request_attributes,omitempty"`
|
|
// The destination of a network activity, such as accepting a TCP connection.
|
|
// In a multi hop network activity, the destination represents the receiver of
|
|
// the last hop. Only two fields are used in this message, Peer.port and
|
|
// Peer.ip. These fields are optionally populated by those services utilizing
|
|
// the IAM condition feature.
|
|
DestinationAttributes *AttributeContext_Peer `protobuf:"bytes,8,opt,name=destination_attributes,json=destinationAttributes,proto3" json:"destination_attributes,omitempty"`
|
|
}
|
|
|
|
func (x *RequestMetadata) Reset() {
|
|
*x = RequestMetadata{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *RequestMetadata) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RequestMetadata) ProtoMessage() {}
|
|
|
|
func (x *RequestMetadata) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[7]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RequestMetadata.ProtoReflect.Descriptor instead.
|
|
func (*RequestMetadata) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *RequestMetadata) GetCallerIp() string {
|
|
if x != nil {
|
|
return x.CallerIp
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RequestMetadata) GetCallerSuppliedUserAgent() string {
|
|
if x != nil {
|
|
return x.CallerSuppliedUserAgent
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RequestMetadata) GetCallerNetwork() string {
|
|
if x != nil {
|
|
return x.CallerNetwork
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RequestMetadata) GetRequestAttributes() *AttributeContext_Request {
|
|
if x != nil {
|
|
return x.RequestAttributes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RequestMetadata) GetDestinationAttributes() *AttributeContext_Peer {
|
|
if x != nil {
|
|
return x.DestinationAttributes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Location information about a resource.
|
|
type ResourceLocation struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The locations of a resource after the execution of the operation.
|
|
// Requests to create or delete a location based resource must populate
|
|
// the 'current_locations' field and not the 'original_locations' field.
|
|
// For example:
|
|
//
|
|
// "europe-west1-a"
|
|
// "us-east1"
|
|
// "nam3"
|
|
CurrentLocations []string `protobuf:"bytes,1,rep,name=current_locations,json=currentLocations,proto3" json:"current_locations,omitempty"`
|
|
// The locations of a resource prior to the execution of the operation.
|
|
// Requests that mutate the resource's location must populate both the
|
|
// 'original_locations' as well as the 'current_locations' fields.
|
|
// For example:
|
|
//
|
|
// "europe-west1-a"
|
|
// "us-east1"
|
|
// "nam3"
|
|
OriginalLocations []string `protobuf:"bytes,2,rep,name=original_locations,json=originalLocations,proto3" json:"original_locations,omitempty"`
|
|
}
|
|
|
|
func (x *ResourceLocation) Reset() {
|
|
*x = ResourceLocation{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ResourceLocation) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ResourceLocation) ProtoMessage() {}
|
|
|
|
func (x *ResourceLocation) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[8]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ResourceLocation.ProtoReflect.Descriptor instead.
|
|
func (*ResourceLocation) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *ResourceLocation) GetCurrentLocations() []string {
|
|
if x != nil {
|
|
return x.CurrentLocations
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ResourceLocation) GetOriginalLocations() []string {
|
|
if x != nil {
|
|
return x.OriginalLocations
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// The `Status` type defines a logical error model that is suitable for
|
|
// different programming environments, including REST APIs and RPC APIs. It is
|
|
// used by [gRPC](https://github.com/grpc). Each `Status` message contains
|
|
// three pieces of data: error code, error message, and error details.
|
|
//
|
|
// You can find out more about this error model and how to work with it in the
|
|
// [API Design Guide](https://cloud.google.com/apis/design/errors).
|
|
type RpcStatus struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
|
|
Code int32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
|
|
// A developer-facing error message, which should be in English. Any
|
|
// user-facing error message should be localized and sent in the
|
|
// [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
|
|
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
|
|
// A list of messages that carry the error details. There is a common set of
|
|
// message types for APIs to use.
|
|
Details []*anypb.Any `protobuf:"bytes,3,rep,name=details,proto3" json:"details,omitempty"`
|
|
}
|
|
|
|
func (x *RpcStatus) Reset() {
|
|
*x = RpcStatus{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *RpcStatus) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RpcStatus) ProtoMessage() {}
|
|
|
|
func (x *RpcStatus) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[9]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RpcStatus.ProtoReflect.Descriptor instead.
|
|
func (*RpcStatus) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *RpcStatus) GetCode() int32 {
|
|
if x != nil {
|
|
return x.Code
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RpcStatus) GetMessage() string {
|
|
if x != nil {
|
|
return x.Message
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RpcStatus) GetDetails() []*anypb.Any {
|
|
if x != nil {
|
|
return x.Details
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Identity delegation history of an authenticated service account.
|
|
type ServiceAccountDelegationInfo struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Entity that creates credentials for service account and assumes its
|
|
// identity for authentication.
|
|
//
|
|
// Types that are assignable to Authority:
|
|
//
|
|
// *ServiceAccountDelegationInfo_FirstPartyPrincipal_
|
|
// *ServiceAccountDelegationInfo_ThirdPartyPrincipal_
|
|
Authority isServiceAccountDelegationInfo_Authority `protobuf_oneof:"Authority"`
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo) Reset() {
|
|
*x = ServiceAccountDelegationInfo{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ServiceAccountDelegationInfo) ProtoMessage() {}
|
|
|
|
func (x *ServiceAccountDelegationInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[10]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ServiceAccountDelegationInfo.ProtoReflect.Descriptor instead.
|
|
func (*ServiceAccountDelegationInfo) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (m *ServiceAccountDelegationInfo) GetAuthority() isServiceAccountDelegationInfo_Authority {
|
|
if m != nil {
|
|
return m.Authority
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo) GetFirstPartyPrincipal() *ServiceAccountDelegationInfo_FirstPartyPrincipal {
|
|
if x, ok := x.GetAuthority().(*ServiceAccountDelegationInfo_FirstPartyPrincipal_); ok {
|
|
return x.FirstPartyPrincipal
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo) GetThirdPartyPrincipal() *ServiceAccountDelegationInfo_ThirdPartyPrincipal {
|
|
if x, ok := x.GetAuthority().(*ServiceAccountDelegationInfo_ThirdPartyPrincipal_); ok {
|
|
return x.ThirdPartyPrincipal
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isServiceAccountDelegationInfo_Authority interface {
|
|
isServiceAccountDelegationInfo_Authority()
|
|
}
|
|
|
|
type ServiceAccountDelegationInfo_FirstPartyPrincipal_ struct {
|
|
// First party (Google) identity as the real authority.
|
|
FirstPartyPrincipal *ServiceAccountDelegationInfo_FirstPartyPrincipal `protobuf:"bytes,1,opt,name=first_party_principal,json=firstPartyPrincipal,proto3,oneof"`
|
|
}
|
|
|
|
type ServiceAccountDelegationInfo_ThirdPartyPrincipal_ struct {
|
|
// Third party identity as the real authority.
|
|
ThirdPartyPrincipal *ServiceAccountDelegationInfo_ThirdPartyPrincipal `protobuf:"bytes,2,opt,name=third_party_principal,json=thirdPartyPrincipal,proto3,oneof"`
|
|
}
|
|
|
|
func (*ServiceAccountDelegationInfo_FirstPartyPrincipal_) isServiceAccountDelegationInfo_Authority() {
|
|
}
|
|
|
|
func (*ServiceAccountDelegationInfo_ThirdPartyPrincipal_) isServiceAccountDelegationInfo_Authority() {
|
|
}
|
|
|
|
// Additional information used to correlate multiple LogEntries. Used when a
|
|
// single LogEntry would exceed the Google Cloud Logging size limit and is split
|
|
// across multiple entries.
|
|
type LogSplit struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// A globally unique identifier for all LogEntries in a sequence of split
|
|
// logs. All LogEntries with the same |LogSplit.uid| are assumed to be part of
|
|
// the same sequence of split logs.
|
|
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"`
|
|
// The index of this LogEntry in the sequence of split logs. LogEntries are
|
|
// given |index| values 0, 1, ..., n-1 for a sequence of n entries.
|
|
Index int32 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
|
|
// The total number of logs that the original LogEntry was split into.
|
|
TotalSplits int32 `protobuf:"varint,3,opt,name=total_splits,json=totalSplits,proto3" json:"total_splits,omitempty"`
|
|
}
|
|
|
|
func (x *LogSplit) Reset() {
|
|
*x = LogSplit{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *LogSplit) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*LogSplit) ProtoMessage() {}
|
|
|
|
func (x *LogSplit) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[11]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use LogSplit.ProtoReflect.Descriptor instead.
|
|
func (*LogSplit) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *LogSplit) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *LogSplit) GetIndex() int32 {
|
|
if x != nil {
|
|
return x.Index
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *LogSplit) GetTotalSplits() int32 {
|
|
if x != nil {
|
|
return x.TotalSplits
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// This message defines attributes for a node that handles a network request.
|
|
// The node can be either a service or an application that sends, forwards,
|
|
// or receives the request. Service peers should fill in
|
|
// `principal` and `labels` as appropriate.
|
|
type AttributeContext_Peer struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The IP address of the peer.
|
|
Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"`
|
|
// The network port of the peer.
|
|
Port int64 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
|
|
// The labels associated with the peer.
|
|
Labels map[string]string `protobuf:"bytes,6,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
// The identity of this peer. Similar to `Request.auth.principal`, but
|
|
// relative to the peer instead of the request. For example, the
|
|
// idenity associated with a load balancer that forwared the request.
|
|
Principal string `protobuf:"bytes,7,opt,name=principal,proto3" json:"principal,omitempty"`
|
|
// The CLDR country/region code associated with the above IP address.
|
|
// If the IP address is private, the `region_code` should reflect the
|
|
// physical location where this peer is running.
|
|
RegionCode string `protobuf:"bytes,8,opt,name=region_code,json=regionCode,proto3" json:"region_code,omitempty"`
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) Reset() {
|
|
*x = AttributeContext_Peer{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AttributeContext_Peer) ProtoMessage() {}
|
|
|
|
func (x *AttributeContext_Peer) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[14]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AttributeContext_Peer.ProtoReflect.Descriptor instead.
|
|
func (*AttributeContext_Peer) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6, 0}
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) GetIp() string {
|
|
if x != nil {
|
|
return x.Ip
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) GetPort() int64 {
|
|
if x != nil {
|
|
return x.Port
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) GetLabels() map[string]string {
|
|
if x != nil {
|
|
return x.Labels
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) GetPrincipal() string {
|
|
if x != nil {
|
|
return x.Principal
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Peer) GetRegionCode() string {
|
|
if x != nil {
|
|
return x.RegionCode
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// This message defines request authentication attributes. Terminology is
|
|
// based on the JSON Web Token (JWT) standard, but the terms also
|
|
// correlate to concepts in other standards.
|
|
type AttributeContext_Auth struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The authenticated principal. Reflects the issuer (`iss`) and subject
|
|
// (`sub`) claims within a JWT. The issuer and subject should be `/`
|
|
// delimited, with `/` percent-encoded within the subject fragment. For
|
|
// Google accounts, the principal format is:
|
|
// "https://accounts.google.com/{id}"
|
|
Principal string `protobuf:"bytes,1,opt,name=principal,proto3" json:"principal,omitempty"`
|
|
// The intended audience(s) for this authentication information. Reflects
|
|
// the audience (`aud`) claim within a JWT. The audience
|
|
// value(s) depends on the `issuer`, but typically include one or more of
|
|
// the following pieces of information:
|
|
//
|
|
// - The services intended to receive the credential such as
|
|
// ["pubsub.googleapis.com", "storage.googleapis.com"]
|
|
// - A set of service-based scopes. For example,
|
|
// ["https://www.googleapis.com/auth/cloud-platform"]
|
|
// - The client id of an app, such as the Firebase project id for JWTs
|
|
// from Firebase Auth.
|
|
//
|
|
// Consult the documentation for the credential issuer to determine the
|
|
// information provided.
|
|
Audiences []string `protobuf:"bytes,2,rep,name=audiences,proto3" json:"audiences,omitempty"`
|
|
// The authorized presenter of the credential. Reflects the optional
|
|
// Authorized Presenter (`azp`) claim within a JWT or the
|
|
// OAuth client id. For example, a Google Cloud Platform client id looks
|
|
// as follows: "123456789012.apps.googleusercontent.com".
|
|
Presenter string `protobuf:"bytes,3,opt,name=presenter,proto3" json:"presenter,omitempty"`
|
|
// Structured claims presented with the credential. JWTs include
|
|
// `{key: value}` pairs for standard and private claims. The following
|
|
// is a subset of the standard required and optional claims that would
|
|
// typically be presented for a Google-based JWT:
|
|
//
|
|
// {'iss': 'accounts.google.com',
|
|
// 'sub': '113289723416554971153',
|
|
// 'aud': ['123456789012', 'pubsub.googleapis.com'],
|
|
// 'azp': '123456789012.apps.googleusercontent.com',
|
|
// 'email': 'jsmith@example.com',
|
|
// 'iat': 1353601026,
|
|
// 'exp': 1353604926}
|
|
//
|
|
// SAML assertions are similarly specified, but with an identity provider
|
|
// dependent structure.
|
|
Claims *structpb.Struct `protobuf:"bytes,4,opt,name=claims,proto3" json:"claims,omitempty"`
|
|
// A list of access level resource names that allow resources to be
|
|
// accessed by authenticated requester. It is part of Secure GCP processing
|
|
// for the incoming request. An access level string has the format:
|
|
// "//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}"
|
|
//
|
|
// Example:
|
|
// "//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL"
|
|
AccessLevels []string `protobuf:"bytes,5,rep,name=access_levels,json=accessLevels,proto3" json:"access_levels,omitempty"`
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) Reset() {
|
|
*x = AttributeContext_Auth{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[15]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AttributeContext_Auth) ProtoMessage() {}
|
|
|
|
func (x *AttributeContext_Auth) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[15]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AttributeContext_Auth.ProtoReflect.Descriptor instead.
|
|
func (*AttributeContext_Auth) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6, 1}
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) GetPrincipal() string {
|
|
if x != nil {
|
|
return x.Principal
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) GetAudiences() []string {
|
|
if x != nil {
|
|
return x.Audiences
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) GetPresenter() string {
|
|
if x != nil {
|
|
return x.Presenter
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) GetClaims() *structpb.Struct {
|
|
if x != nil {
|
|
return x.Claims
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AttributeContext_Auth) GetAccessLevels() []string {
|
|
if x != nil {
|
|
return x.AccessLevels
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// This message defines attributes for an HTTP request. If the actual
|
|
// request is not an HTTP request, the runtime system should try to map
|
|
// the actual request to an equivalent HTTP request.
|
|
type AttributeContext_Request struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The unique ID for a request, which can be propagated to downstream
|
|
// systems. The ID should have low probability of collision
|
|
// within a single day for a specific service.
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
// The HTTP request method, such as `GET`, `POST`.
|
|
Method string `protobuf:"bytes,2,opt,name=method,proto3" json:"method,omitempty"`
|
|
// The HTTP request headers. If multiple headers share the same key, they
|
|
// must be merged according to the HTTP spec. All header keys must be
|
|
// lowercased, because HTTP header keys are case-insensitive.
|
|
Headers map[string]string `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
// The HTTP URL path.
|
|
Path string `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"`
|
|
// The HTTP request `Host` header value.
|
|
Host string `protobuf:"bytes,5,opt,name=host,proto3" json:"host,omitempty"`
|
|
// The HTTP URL scheme, such as `http` and `https`.
|
|
Scheme string `protobuf:"bytes,6,opt,name=scheme,proto3" json:"scheme,omitempty"`
|
|
// The HTTP URL query in the format of `name1=value1&name2=value2`, as it
|
|
// appears in the first line of the HTTP request. No decoding is performed.
|
|
Query string `protobuf:"bytes,7,opt,name=query,proto3" json:"query,omitempty"`
|
|
// The timestamp when the `destination` service receives the first byte of
|
|
// the request.
|
|
Time *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=time,proto3" json:"time,omitempty"`
|
|
// The HTTP request size in bytes. If unknown, it must be -1.
|
|
Size int64 `protobuf:"varint,10,opt,name=size,proto3" json:"size,omitempty"`
|
|
// The network protocol used with the request, such as "http/1.1",
|
|
// "spdy/3", "h2", "h2c", "webrtc", "tcp", "udp", "quic". See
|
|
// https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids
|
|
// for details.
|
|
Protocol string `protobuf:"bytes,11,opt,name=protocol,proto3" json:"protocol,omitempty"`
|
|
// A special parameter for request reason. It is used by security systems
|
|
// to associate auditing information with a request.
|
|
Reason string `protobuf:"bytes,12,opt,name=reason,proto3" json:"reason,omitempty"`
|
|
// The request authentication. May be absent for unauthenticated requests.
|
|
// Derived from the HTTP request `Authorization` header or equivalent.
|
|
Auth *AttributeContext_Auth `protobuf:"bytes,13,opt,name=auth,proto3" json:"auth,omitempty"`
|
|
}
|
|
|
|
func (x *AttributeContext_Request) Reset() {
|
|
*x = AttributeContext_Request{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[16]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AttributeContext_Request) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AttributeContext_Request) ProtoMessage() {}
|
|
|
|
func (x *AttributeContext_Request) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[16]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AttributeContext_Request.ProtoReflect.Descriptor instead.
|
|
func (*AttributeContext_Request) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6, 2}
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetMethod() string {
|
|
if x != nil {
|
|
return x.Method
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetHeaders() map[string]string {
|
|
if x != nil {
|
|
return x.Headers
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetPath() string {
|
|
if x != nil {
|
|
return x.Path
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetHost() string {
|
|
if x != nil {
|
|
return x.Host
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetScheme() string {
|
|
if x != nil {
|
|
return x.Scheme
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetQuery() string {
|
|
if x != nil {
|
|
return x.Query
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.Time
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetSize() int64 {
|
|
if x != nil {
|
|
return x.Size
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetProtocol() string {
|
|
if x != nil {
|
|
return x.Protocol
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetReason() string {
|
|
if x != nil {
|
|
return x.Reason
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Request) GetAuth() *AttributeContext_Auth {
|
|
if x != nil {
|
|
return x.Auth
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// This message defines attributes for a typical network response. It
|
|
// generally models semantics of an HTTP response.
|
|
type AttributeContext_Response struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The HTTP response status code, such as `200` and `404`.
|
|
Code int64 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
|
|
// The HTTP response size in bytes. If unknown, it must be -1.
|
|
Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
|
|
// The HTTP response headers. If multiple headers share the same key, they
|
|
// must be merged according to HTTP spec. All header keys must be
|
|
// lowercased, because HTTP header keys are case-insensitive.
|
|
Headers map[string]string `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
// The timestamp when the `destination` service generates the first byte of
|
|
// the response.
|
|
Time *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=time,proto3" json:"time,omitempty"`
|
|
}
|
|
|
|
func (x *AttributeContext_Response) Reset() {
|
|
*x = AttributeContext_Response{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[17]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AttributeContext_Response) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AttributeContext_Response) ProtoMessage() {}
|
|
|
|
func (x *AttributeContext_Response) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[17]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AttributeContext_Response.ProtoReflect.Descriptor instead.
|
|
func (*AttributeContext_Response) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6, 3}
|
|
}
|
|
|
|
func (x *AttributeContext_Response) GetCode() int64 {
|
|
if x != nil {
|
|
return x.Code
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AttributeContext_Response) GetSize() int64 {
|
|
if x != nil {
|
|
return x.Size
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *AttributeContext_Response) GetHeaders() map[string]string {
|
|
if x != nil {
|
|
return x.Headers
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *AttributeContext_Response) GetTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.Time
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// This message defines core attributes for a resource. A resource is an
|
|
// addressable (named) entity provided by the destination service. For
|
|
// example, a file stored on a network storage service.
|
|
type AttributeContext_Resource struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The name of the service that this resource belongs to, such as
|
|
// `pubsub.googleapis.com`. The service may be different from the DNS
|
|
// hostname that actually serves the request.
|
|
Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
|
|
// The stable identifier (name) of a resource on the `service`. A resource
|
|
// can be logically identified as "//{resource.service}/{resource.name}".
|
|
// The differences between a resource name and a URI are:
|
|
//
|
|
// - Resource name is a logical identifier, independent of network
|
|
// protocol and API version. For example,
|
|
// `//pubsub.googleapis.com/projects/123/topics/news-feed`.
|
|
// - URI often includes protocol and version information, so it can
|
|
// be used directly by applications. For example,
|
|
// `https://pubsub.googleapis.com/v1/projects/123/topics/news-feed`.
|
|
//
|
|
// See https://cloud.google.com/apis/design/resource_names for details.
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
|
// The type of the resource. The syntax is platform-specific because
|
|
// different platforms define their resources differently.
|
|
//
|
|
// For Google APIs, the type format must be "{service}/{kind}".
|
|
Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
|
|
// The labels or tags on the resource, such as AWS resource tags and
|
|
// Kubernetes resource labels.
|
|
Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
}
|
|
|
|
func (x *AttributeContext_Resource) Reset() {
|
|
*x = AttributeContext_Resource{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[18]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *AttributeContext_Resource) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*AttributeContext_Resource) ProtoMessage() {}
|
|
|
|
func (x *AttributeContext_Resource) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[18]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use AttributeContext_Resource.ProtoReflect.Descriptor instead.
|
|
func (*AttributeContext_Resource) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6, 4}
|
|
}
|
|
|
|
func (x *AttributeContext_Resource) GetService() string {
|
|
if x != nil {
|
|
return x.Service
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Resource) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Resource) GetType() string {
|
|
if x != nil {
|
|
return x.Type
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *AttributeContext_Resource) GetLabels() map[string]string {
|
|
if x != nil {
|
|
return x.Labels
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// First party identity principal.
|
|
type ServiceAccountDelegationInfo_FirstPartyPrincipal struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The email address of a Google account.
|
|
PrincipalEmail string `protobuf:"bytes,1,opt,name=principal_email,json=principalEmail,proto3" json:"principal_email,omitempty"`
|
|
// Metadata about the service that uses the service account.
|
|
ServiceMetadata *structpb.Struct `protobuf:"bytes,2,opt,name=service_metadata,json=serviceMetadata,proto3" json:"service_metadata,omitempty"`
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_FirstPartyPrincipal) Reset() {
|
|
*x = ServiceAccountDelegationInfo_FirstPartyPrincipal{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[23]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_FirstPartyPrincipal) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ServiceAccountDelegationInfo_FirstPartyPrincipal) ProtoMessage() {}
|
|
|
|
func (x *ServiceAccountDelegationInfo_FirstPartyPrincipal) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[23]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ServiceAccountDelegationInfo_FirstPartyPrincipal.ProtoReflect.Descriptor instead.
|
|
func (*ServiceAccountDelegationInfo_FirstPartyPrincipal) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{10, 0}
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_FirstPartyPrincipal) GetPrincipalEmail() string {
|
|
if x != nil {
|
|
return x.PrincipalEmail
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_FirstPartyPrincipal) GetServiceMetadata() *structpb.Struct {
|
|
if x != nil {
|
|
return x.ServiceMetadata
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Third party identity principal.
|
|
type ServiceAccountDelegationInfo_ThirdPartyPrincipal struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Metadata about third party identity.
|
|
ThirdPartyClaims *structpb.Struct `protobuf:"bytes,1,opt,name=third_party_claims,json=thirdPartyClaims,proto3" json:"third_party_claims,omitempty"`
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_ThirdPartyPrincipal) Reset() {
|
|
*x = ServiceAccountDelegationInfo_ThirdPartyPrincipal{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[24]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_ThirdPartyPrincipal) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ServiceAccountDelegationInfo_ThirdPartyPrincipal) ProtoMessage() {}
|
|
|
|
func (x *ServiceAccountDelegationInfo_ThirdPartyPrincipal) ProtoReflect() protoreflect.Message {
|
|
mi := &file_audit_v1_audit_event_proto_msgTypes[24]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ServiceAccountDelegationInfo_ThirdPartyPrincipal.ProtoReflect.Descriptor instead.
|
|
func (*ServiceAccountDelegationInfo_ThirdPartyPrincipal) Descriptor() ([]byte, []int) {
|
|
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{10, 1}
|
|
}
|
|
|
|
func (x *ServiceAccountDelegationInfo_ThirdPartyPrincipal) GetThirdPartyClaims() *structpb.Struct {
|
|
if x != nil {
|
|
return x.ThirdPartyClaims
|
|
}
|
|
return nil
|
|
}
|
|
|
|
var File_audit_v1_audit_event_proto protoreflect.FileDescriptor
|
|
|
|
var file_audit_v1_audit_event_proto_rawDesc = []byte{
|
|
0x0a, 0x1a, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x74,
|
|
0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x61, 0x75,
|
|
0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69,
|
|
0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72,
|
|
0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
|
|
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f,
|
|
0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69,
|
|
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x61,
|
|
0x75, 0x64, 0x69, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf5, 0x04, 0x0a, 0x0a, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x76,
|
|
0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x6f, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
|
0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x37,
|
|
0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
|
|
0x32, 0x1b, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x69,
|
|
0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72,
|
|
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
|
|
0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c,
|
|
0x6f, 0x67, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64,
|
|
0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x49, 0x64, 0x12, 0x38, 0x0a,
|
|
0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e,
|
|
0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x74, 0x45, 0x76,
|
|
0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
|
|
0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x39, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x75, 0x64,
|
|
0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x4f, 0x70,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18,
|
|
0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
|
|
0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x47, 0x0a, 0x11,
|
|
0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
|
|
0x70, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
|
|
0x61, 0x6d, 0x70, 0x52, 0x10, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x31, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74,
|
|
0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e,
|
|
0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08,
|
|
0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63,
|
|
0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x72, 0x61, 0x63, 0x65, 0x12, 0x17,
|
|
0x0a, 0x07, 0x73, 0x70, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x06, 0x73, 0x70, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x05, 0x73, 0x70, 0x6c, 0x69, 0x74,
|
|
0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76,
|
|
0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x52, 0x05, 0x73, 0x70, 0x6c, 0x69,
|
|
0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
|
|
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
|
|
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa3, 0x01, 0x0a,
|
|
0x11, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73,
|
|
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76,
|
|
0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75,
|
|
0x72, 0x63, 0x65, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
|
|
0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c,
|
|
0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
|
|
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
|
|
0x38, 0x01, 0x22, 0x69, 0x0a, 0x11, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x4f, 0x70,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x64, 0x75,
|
|
0x63, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x64, 0x75,
|
|
0x63, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01,
|
|
0x28, 0x08, 0x52, 0x05, 0x66, 0x69, 0x72, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x73,
|
|
0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6c, 0x61, 0x73, 0x74, 0x22, 0xa2, 0x06,
|
|
0x0a, 0x08, 0x41, 0x75, 0x64, 0x69, 0x74, 0x4c, 0x6f, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x65,
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a,
|
|
0x0b, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23,
|
|
0x0a, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
|
0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4e,
|
|
0x61, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x11, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
|
|
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
|
|
0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
0x63, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x72, 0x65, 0x73, 0x6f,
|
|
0x75, 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4f, 0x0a, 0x17,
|
|
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61,
|
|
0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
|
|
0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x15, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
|
|
0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a,
|
|
0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x69, 0x74,
|
|
0x65, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x52, 0x65,
|
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x73,
|
|
0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x75,
|
|
0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x70, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
|
|
0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x4d, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x68,
|
|
0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18,
|
|
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31,
|
|
0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
|
|
0x6e, 0x66, 0x6f, 0x52, 0x12, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4a, 0x0a, 0x12, 0x61, 0x75, 0x74, 0x68, 0x6f,
|
|
0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x09, 0x20,
|
|
0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41,
|
|
0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f,
|
|
0x52, 0x11, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
|
|
0x6e, 0x66, 0x6f, 0x12, 0x44, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6d,
|
|
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
|
|
0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
|
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
|
|
0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x07, 0x72, 0x65, 0x71,
|
|
0x75, 0x65, 0x73, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
|
|
0x75, 0x63, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x08,
|
|
0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
|
|
0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
|
0x65, 0x12, 0x33, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x12, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65,
|
|
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67,
|
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53,
|
|
0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x61,
|
|
0x74, 0x61, 0x22, 0x8e, 0x03, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69,
|
|
0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x45, 0x6d, 0x61,
|
|
0x69, 0x6c, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x5f,
|
|
0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11,
|
|
0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f,
|
|
0x72, 0x12, 0x4b, 0x0a, 0x15, 0x74, 0x68, 0x69, 0x72, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79,
|
|
0x5f, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
|
|
0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
|
0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x13, 0x74, 0x68, 0x69, 0x72, 0x64,
|
|
0x50, 0x61, 0x72, 0x74, 0x79, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x37,
|
|
0x0a, 0x18, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
|
|
0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x15, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
|
|
0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x6d, 0x0a, 0x1f, 0x73, 0x65, 0x72, 0x76, 0x69,
|
|
0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x67,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
|
|
0x32, 0x26, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76,
|
|
0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x1c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69,
|
|
0x70, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x10, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x6a,
|
|
0x65, 0x63, 0x74, 0x22, 0xbf, 0x01, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73,
|
|
0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73,
|
|
0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x6d, 0x69,
|
|
0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x12,
|
|
0x54, 0x0a, 0x13, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72,
|
|
0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x61,
|
|
0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
|
|
0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
|
0x65, 0x52, 0x12, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69,
|
|
0x62, 0x75, 0x74, 0x65, 0x73, 0x22, 0xb5, 0x0a, 0x0a, 0x10, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62,
|
|
0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x1a, 0xe9, 0x01, 0x0a, 0x04, 0x50,
|
|
0x65, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x03, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x43, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
|
|
0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e,
|
|
0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74,
|
|
0x65, 0x78, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
|
|
0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09,
|
|
0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65,
|
|
0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c,
|
|
0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
|
|
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
|
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
|
|
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xb6, 0x01, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12,
|
|
0x1c, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x1c, 0x0a,
|
|
0x09, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09,
|
|
0x52, 0x09, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x70,
|
|
0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
|
|
0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x2f, 0x0a, 0x06, 0x63, 0x6c, 0x61,
|
|
0x69, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75,
|
|
0x63, 0x74, 0x52, 0x06, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x63,
|
|
0x63, 0x65, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28,
|
|
0x09, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x1a,
|
|
0xbb, 0x03, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69,
|
|
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6d,
|
|
0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74,
|
|
0x68, 0x6f, 0x64, 0x12, 0x49, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x03,
|
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e,
|
|
0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
|
|
0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
|
|
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x12,
|
|
0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61,
|
|
0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65,
|
|
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x14,
|
|
0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71,
|
|
0x75, 0x65, 0x72, 0x79, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01,
|
|
0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04,
|
|
0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0a, 0x20, 0x01,
|
|
0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0c,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x04,
|
|
0x61, 0x75, 0x74, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x75, 0x64,
|
|
0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43,
|
|
0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x04, 0x61, 0x75, 0x74,
|
|
0x68, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72,
|
|
0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
|
|
0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xea, 0x01,
|
|
0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
|
|
0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x12,
|
|
0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69,
|
|
0x7a, 0x65, 0x12, 0x4a, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20,
|
|
0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41,
|
|
0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e,
|
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
|
|
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x2e,
|
|
0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
|
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
|
|
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x1a, 0x3a,
|
|
0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
|
|
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
|
|
0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xd0, 0x01, 0x0a, 0x08, 0x52,
|
|
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69,
|
|
0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x6c, 0x61, 0x62,
|
|
0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x61, 0x75, 0x64, 0x69,
|
|
0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43, 0x6f,
|
|
0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x4c,
|
|
0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65,
|
|
0x6c, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72,
|
|
0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
|
|
0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xbd, 0x02,
|
|
0x0a, 0x0f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
|
|
0x61, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x69, 0x70, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x49, 0x70, 0x12, 0x3b,
|
|
0x0a, 0x1a, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65,
|
|
0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x17, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x69,
|
|
0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63,
|
|
0x61, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x03, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f,
|
|
0x72, 0x6b, 0x12, 0x51, 0x0a, 0x12, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x74,
|
|
0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
|
|
0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62,
|
|
0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65,
|
|
0x73, 0x74, 0x52, 0x11, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69,
|
|
0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x16, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18,
|
|
0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31,
|
|
0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
|
|
0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x52, 0x15, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x22, 0x6e, 0x0a,
|
|
0x10, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x63, 0x75,
|
|
0x72, 0x72, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2d,
|
|
0x0a, 0x12, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67,
|
|
0x69, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x69, 0x0a,
|
|
0x09, 0x52, 0x70, 0x63, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f,
|
|
0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18,
|
|
0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61,
|
|
0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52,
|
|
0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0xf2, 0x03, 0x0a, 0x1c, 0x53, 0x65, 0x72,
|
|
0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x70, 0x0a, 0x15, 0x66, 0x69, 0x72,
|
|
0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70,
|
|
0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74,
|
|
0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75,
|
|
0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f,
|
|
0x2e, 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x50, 0x72, 0x69, 0x6e, 0x63,
|
|
0x69, 0x70, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x13, 0x66, 0x69, 0x72, 0x73, 0x74, 0x50, 0x61, 0x72,
|
|
0x74, 0x79, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x70, 0x0a, 0x15, 0x74,
|
|
0x68, 0x69, 0x72, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x63,
|
|
0x69, 0x70, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x61, 0x75, 0x64,
|
|
0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63,
|
|
0x6f, 0x75, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e,
|
|
0x66, 0x6f, 0x2e, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x50, 0x72, 0x69,
|
|
0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x13, 0x74, 0x68, 0x69, 0x72, 0x64, 0x50,
|
|
0x61, 0x72, 0x74, 0x79, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x1a, 0x82, 0x01,
|
|
0x0a, 0x13, 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x50, 0x72, 0x69, 0x6e,
|
|
0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70,
|
|
0x61, 0x6c, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e,
|
|
0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x42,
|
|
0x0a, 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
|
|
0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63,
|
|
0x74, 0x52, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
|
|
0x74, 0x61, 0x1a, 0x5c, 0x0a, 0x13, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79,
|
|
0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 0x45, 0x0a, 0x12, 0x74, 0x68, 0x69,
|
|
0x72, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x10,
|
|
0x74, 0x68, 0x69, 0x72, 0x64, 0x50, 0x61, 0x72, 0x74, 0x79, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x73,
|
|
0x42, 0x0b, 0x0a, 0x09, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x55, 0x0a,
|
|
0x08, 0x4c, 0x6f, 0x67, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64,
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x69,
|
|
0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65,
|
|
0x78, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x70, 0x6c, 0x69, 0x74,
|
|
0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x70,
|
|
0x6c, 0x69, 0x74, 0x73, 0x2a, 0x82, 0x01, 0x0a, 0x0b, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x76, 0x65,
|
|
0x72, 0x69, 0x74, 0x79, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10,
|
|
0x00, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x64, 0x12, 0x09, 0x0a, 0x04,
|
|
0x49, 0x4e, 0x46, 0x4f, 0x10, 0xc8, 0x01, 0x12, 0x0b, 0x0a, 0x06, 0x4e, 0x4f, 0x54, 0x49, 0x43,
|
|
0x45, 0x10, 0xac, 0x02, 0x12, 0x0c, 0x0a, 0x07, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10,
|
|
0x90, 0x03, 0x12, 0x0a, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0xf4, 0x03, 0x12, 0x0d,
|
|
0x0a, 0x08, 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c, 0x10, 0xd8, 0x04, 0x12, 0x0a, 0x0a,
|
|
0x05, 0x41, 0x4c, 0x45, 0x52, 0x54, 0x10, 0xbc, 0x05, 0x12, 0x0e, 0x0a, 0x09, 0x45, 0x4d, 0x45,
|
|
0x52, 0x47, 0x45, 0x4e, 0x43, 0x59, 0x10, 0xa0, 0x06, 0x42, 0x81, 0x01, 0x0a, 0x1c, 0x63, 0x6f,
|
|
0x6d, 0x2e, 0x73, 0x63, 0x68, 0x77, 0x61, 0x72, 0x7a, 0x2e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x69,
|
|
0x74, 0x2e, 0x61, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0f, 0x41, 0x75, 0x64, 0x69,
|
|
0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x0f, 0x2e,
|
|
0x2f, 0x61, 0x75, 0x64, 0x69, 0x74, 0x3b, 0x61, 0x75, 0x64, 0x69, 0x74, 0x56, 0x31, 0xa2, 0x02,
|
|
0x03, 0x41, 0x58, 0x58, 0xaa, 0x02, 0x08, 0x41, 0x75, 0x64, 0x69, 0x74, 0x2e, 0x56, 0x31, 0xca,
|
|
0x02, 0x08, 0x41, 0x75, 0x64, 0x69, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x14, 0x41, 0x75, 0x64,
|
|
0x69, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
|
|
0x61, 0xea, 0x02, 0x09, 0x41, 0x75, 0x64, 0x69, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x33,
|
|
}
|
|
|
|
var (
|
|
file_audit_v1_audit_event_proto_rawDescOnce sync.Once
|
|
file_audit_v1_audit_event_proto_rawDescData = file_audit_v1_audit_event_proto_rawDesc
|
|
)
|
|
|
|
func file_audit_v1_audit_event_proto_rawDescGZIP() []byte {
|
|
file_audit_v1_audit_event_proto_rawDescOnce.Do(func() {
|
|
file_audit_v1_audit_event_proto_rawDescData = protoimpl.X.CompressGZIP(file_audit_v1_audit_event_proto_rawDescData)
|
|
})
|
|
return file_audit_v1_audit_event_proto_rawDescData
|
|
}
|
|
|
|
var file_audit_v1_audit_event_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
|
|
var file_audit_v1_audit_event_proto_msgTypes = make([]protoimpl.MessageInfo, 25)
|
|
var file_audit_v1_audit_event_proto_goTypes = []interface{}{
|
|
(LogSeverity)(0), // 0: audit.v1.LogSeverity
|
|
(*AuditEvent)(nil), // 1: audit.v1.AuditEvent
|
|
(*MonitoredResource)(nil), // 2: audit.v1.MonitoredResource
|
|
(*LogEntryOperation)(nil), // 3: audit.v1.LogEntryOperation
|
|
(*AuditLog)(nil), // 4: audit.v1.AuditLog
|
|
(*AuthenticationInfo)(nil), // 5: audit.v1.AuthenticationInfo
|
|
(*AuthorizationInfo)(nil), // 6: audit.v1.AuthorizationInfo
|
|
(*AttributeContext)(nil), // 7: audit.v1.AttributeContext
|
|
(*RequestMetadata)(nil), // 8: audit.v1.RequestMetadata
|
|
(*ResourceLocation)(nil), // 9: audit.v1.ResourceLocation
|
|
(*RpcStatus)(nil), // 10: audit.v1.RpcStatus
|
|
(*ServiceAccountDelegationInfo)(nil), // 11: audit.v1.ServiceAccountDelegationInfo
|
|
(*LogSplit)(nil), // 12: audit.v1.LogSplit
|
|
nil, // 13: audit.v1.AuditEvent.LabelsEntry
|
|
nil, // 14: audit.v1.MonitoredResource.LabelsEntry
|
|
(*AttributeContext_Peer)(nil), // 15: audit.v1.AttributeContext.Peer
|
|
(*AttributeContext_Auth)(nil), // 16: audit.v1.AttributeContext.Auth
|
|
(*AttributeContext_Request)(nil), // 17: audit.v1.AttributeContext.Request
|
|
(*AttributeContext_Response)(nil), // 18: audit.v1.AttributeContext.Response
|
|
(*AttributeContext_Resource)(nil), // 19: audit.v1.AttributeContext.Resource
|
|
nil, // 20: audit.v1.AttributeContext.Peer.LabelsEntry
|
|
nil, // 21: audit.v1.AttributeContext.Request.HeadersEntry
|
|
nil, // 22: audit.v1.AttributeContext.Response.HeadersEntry
|
|
nil, // 23: audit.v1.AttributeContext.Resource.LabelsEntry
|
|
(*ServiceAccountDelegationInfo_FirstPartyPrincipal)(nil), // 24: audit.v1.ServiceAccountDelegationInfo.FirstPartyPrincipal
|
|
(*ServiceAccountDelegationInfo_ThirdPartyPrincipal)(nil), // 25: audit.v1.ServiceAccountDelegationInfo.ThirdPartyPrincipal
|
|
(*timestamppb.Timestamp)(nil), // 26: google.protobuf.Timestamp
|
|
(*structpb.Struct)(nil), // 27: google.protobuf.Struct
|
|
(*anypb.Any)(nil), // 28: google.protobuf.Any
|
|
}
|
|
var file_audit_v1_audit_event_proto_depIdxs = []int32{
|
|
2, // 0: audit.v1.AuditEvent.resource:type_name -> audit.v1.MonitoredResource
|
|
4, // 1: audit.v1.AuditEvent.proto_payload:type_name -> audit.v1.AuditLog
|
|
13, // 2: audit.v1.AuditEvent.labels:type_name -> audit.v1.AuditEvent.LabelsEntry
|
|
3, // 3: audit.v1.AuditEvent.operation:type_name -> audit.v1.LogEntryOperation
|
|
26, // 4: audit.v1.AuditEvent.timestamp:type_name -> google.protobuf.Timestamp
|
|
26, // 5: audit.v1.AuditEvent.receive_timestamp:type_name -> google.protobuf.Timestamp
|
|
0, // 6: audit.v1.AuditEvent.severity:type_name -> audit.v1.LogSeverity
|
|
12, // 7: audit.v1.AuditEvent.split:type_name -> audit.v1.LogSplit
|
|
14, // 8: audit.v1.MonitoredResource.labels:type_name -> audit.v1.MonitoredResource.LabelsEntry
|
|
9, // 9: audit.v1.AuditLog.resource_location:type_name -> audit.v1.ResourceLocation
|
|
27, // 10: audit.v1.AuditLog.resource_original_state:type_name -> google.protobuf.Struct
|
|
10, // 11: audit.v1.AuditLog.status:type_name -> audit.v1.RpcStatus
|
|
5, // 12: audit.v1.AuditLog.authentication_info:type_name -> audit.v1.AuthenticationInfo
|
|
6, // 13: audit.v1.AuditLog.authorization_info:type_name -> audit.v1.AuthorizationInfo
|
|
8, // 14: audit.v1.AuditLog.request_metadata:type_name -> audit.v1.RequestMetadata
|
|
27, // 15: audit.v1.AuditLog.request:type_name -> google.protobuf.Struct
|
|
27, // 16: audit.v1.AuditLog.response:type_name -> google.protobuf.Struct
|
|
27, // 17: audit.v1.AuditLog.metadata:type_name -> google.protobuf.Struct
|
|
27, // 18: audit.v1.AuditLog.service_data:type_name -> google.protobuf.Struct
|
|
27, // 19: audit.v1.AuthenticationInfo.third_party_principal:type_name -> google.protobuf.Struct
|
|
11, // 20: audit.v1.AuthenticationInfo.service_account_delegation_info:type_name -> audit.v1.ServiceAccountDelegationInfo
|
|
19, // 21: audit.v1.AuthorizationInfo.resource_attributes:type_name -> audit.v1.AttributeContext.Resource
|
|
17, // 22: audit.v1.RequestMetadata.request_attributes:type_name -> audit.v1.AttributeContext.Request
|
|
15, // 23: audit.v1.RequestMetadata.destination_attributes:type_name -> audit.v1.AttributeContext.Peer
|
|
28, // 24: audit.v1.RpcStatus.details:type_name -> google.protobuf.Any
|
|
24, // 25: audit.v1.ServiceAccountDelegationInfo.first_party_principal:type_name -> audit.v1.ServiceAccountDelegationInfo.FirstPartyPrincipal
|
|
25, // 26: audit.v1.ServiceAccountDelegationInfo.third_party_principal:type_name -> audit.v1.ServiceAccountDelegationInfo.ThirdPartyPrincipal
|
|
20, // 27: audit.v1.AttributeContext.Peer.labels:type_name -> audit.v1.AttributeContext.Peer.LabelsEntry
|
|
27, // 28: audit.v1.AttributeContext.Auth.claims:type_name -> google.protobuf.Struct
|
|
21, // 29: audit.v1.AttributeContext.Request.headers:type_name -> audit.v1.AttributeContext.Request.HeadersEntry
|
|
26, // 30: audit.v1.AttributeContext.Request.time:type_name -> google.protobuf.Timestamp
|
|
16, // 31: audit.v1.AttributeContext.Request.auth:type_name -> audit.v1.AttributeContext.Auth
|
|
22, // 32: audit.v1.AttributeContext.Response.headers:type_name -> audit.v1.AttributeContext.Response.HeadersEntry
|
|
26, // 33: audit.v1.AttributeContext.Response.time:type_name -> google.protobuf.Timestamp
|
|
23, // 34: audit.v1.AttributeContext.Resource.labels:type_name -> audit.v1.AttributeContext.Resource.LabelsEntry
|
|
27, // 35: audit.v1.ServiceAccountDelegationInfo.FirstPartyPrincipal.service_metadata:type_name -> google.protobuf.Struct
|
|
27, // 36: audit.v1.ServiceAccountDelegationInfo.ThirdPartyPrincipal.third_party_claims:type_name -> google.protobuf.Struct
|
|
37, // [37:37] is the sub-list for method output_type
|
|
37, // [37:37] is the sub-list for method input_type
|
|
37, // [37:37] is the sub-list for extension type_name
|
|
37, // [37:37] is the sub-list for extension extendee
|
|
0, // [0:37] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_audit_v1_audit_event_proto_init() }
|
|
func file_audit_v1_audit_event_proto_init() {
|
|
if File_audit_v1_audit_event_proto != nil {
|
|
return
|
|
}
|
|
file_audit_v1_common_proto_init()
|
|
if !protoimpl.UnsafeEnabled {
|
|
file_audit_v1_audit_event_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AuditEvent); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*MonitoredResource); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*LogEntryOperation); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AuditLog); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AuthenticationInfo); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AuthorizationInfo); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AttributeContext); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*RequestMetadata); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ResourceLocation); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*RpcStatus); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ServiceAccountDelegationInfo); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*LogSplit); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AttributeContext_Peer); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AttributeContext_Auth); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AttributeContext_Request); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AttributeContext_Response); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*AttributeContext_Resource); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ServiceAccountDelegationInfo_FirstPartyPrincipal); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ServiceAccountDelegationInfo_ThirdPartyPrincipal); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
}
|
|
file_audit_v1_audit_event_proto_msgTypes[10].OneofWrappers = []interface{}{
|
|
(*ServiceAccountDelegationInfo_FirstPartyPrincipal_)(nil),
|
|
(*ServiceAccountDelegationInfo_ThirdPartyPrincipal_)(nil),
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_audit_v1_audit_event_proto_rawDesc,
|
|
NumEnums: 1,
|
|
NumMessages: 25,
|
|
NumExtensions: 0,
|
|
NumServices: 0,
|
|
},
|
|
GoTypes: file_audit_v1_audit_event_proto_goTypes,
|
|
DependencyIndexes: file_audit_v1_audit_event_proto_depIdxs,
|
|
EnumInfos: file_audit_v1_audit_event_proto_enumTypes,
|
|
MessageInfos: file_audit_v1_audit_event_proto_msgTypes,
|
|
}.Build()
|
|
File_audit_v1_audit_event_proto = out.File
|
|
file_audit_v1_audit_event_proto_rawDesc = nil
|
|
file_audit_v1_audit_event_proto_goTypes = nil
|
|
file_audit_v1_audit_event_proto_depIdxs = nil
|
|
}
|