audit-go/gen/go/audit/v1/audit_event.pb.go
Christian Schaible (EXT) f2715624e9 Merged PR 843653: feat: Allow underscores in subject-claims and update dependencies
The subject claim may contain underscore characters which are not allowed by the schema yet. Therefore, an adjustment of the regex in the schema has been made to allow it.

Security-concept-update-needed: false.

JIRA Work Item: STACKITALO-437
2025-09-11 07:51:34 +00:00

1720 lines
61 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.9
// 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"
structpb "google.golang.org/protobuf/types/known/structpb"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
reflect "reflect"
sync "sync"
unsafe "unsafe"
)
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.
type LogSeverity int32
const (
LogSeverity_LOG_SEVERITY_UNSPECIFIED LogSeverity = 0
// The log entry has no assigned severity level.
LogSeverity_LOG_SEVERITY_DEFAULT LogSeverity = 100
// Debug or trace information.
LogSeverity_LOG_SEVERITY_DEBUG LogSeverity = 200
// Routine information, such as ongoing status or performance.
LogSeverity_LOG_SEVERITY_INFO LogSeverity = 300
// Normal but significant events, such as start up, shut down, or
// a configuration change.
LogSeverity_LOG_SEVERITY_NOTICE LogSeverity = 400
// Warning events might cause problems.
LogSeverity_LOG_SEVERITY_WARNING LogSeverity = 500
// Error events are likely to cause problems.
LogSeverity_LOG_SEVERITY_ERROR LogSeverity = 600
// Critical events cause more severe problems or outages.
LogSeverity_LOG_SEVERITY_CRITICAL LogSeverity = 700
// A person must take an action immediately.
LogSeverity_LOG_SEVERITY_ALERT LogSeverity = 800
// One or more systems are unusable.
LogSeverity_LOG_SEVERITY_EMERGENCY LogSeverity = 900
)
// Enum value maps for LogSeverity.
var (
LogSeverity_name = map[int32]string{
0: "LOG_SEVERITY_UNSPECIFIED",
100: "LOG_SEVERITY_DEFAULT",
200: "LOG_SEVERITY_DEBUG",
300: "LOG_SEVERITY_INFO",
400: "LOG_SEVERITY_NOTICE",
500: "LOG_SEVERITY_WARNING",
600: "LOG_SEVERITY_ERROR",
700: "LOG_SEVERITY_CRITICAL",
800: "LOG_SEVERITY_ALERT",
900: "LOG_SEVERITY_EMERGENCY",
}
LogSeverity_value = map[string]int32{
"LOG_SEVERITY_UNSPECIFIED": 0,
"LOG_SEVERITY_DEFAULT": 100,
"LOG_SEVERITY_DEBUG": 200,
"LOG_SEVERITY_INFO": 300,
"LOG_SEVERITY_NOTICE": 400,
"LOG_SEVERITY_WARNING": 500,
"LOG_SEVERITY_ERROR": 600,
"LOG_SEVERITY_CRITICAL": 700,
"LOG_SEVERITY_ALERT": 800,
"LOG_SEVERITY_EMERGENCY": 900,
}
)
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}
}
type AttributeContext_HttpMethod int32
const (
AttributeContext_HTTP_METHOD_UNSPECIFIED AttributeContext_HttpMethod = 0
AttributeContext_HTTP_METHOD_OTHER AttributeContext_HttpMethod = 1
AttributeContext_HTTP_METHOD_GET AttributeContext_HttpMethod = 2
AttributeContext_HTTP_METHOD_HEAD AttributeContext_HttpMethod = 3
AttributeContext_HTTP_METHOD_POST AttributeContext_HttpMethod = 4
AttributeContext_HTTP_METHOD_PUT AttributeContext_HttpMethod = 5
AttributeContext_HTTP_METHOD_DELETE AttributeContext_HttpMethod = 6
AttributeContext_HTTP_METHOD_CONNECT AttributeContext_HttpMethod = 7
AttributeContext_HTTP_METHOD_OPTIONS AttributeContext_HttpMethod = 8
AttributeContext_HTTP_METHOD_TRACE AttributeContext_HttpMethod = 9
AttributeContext_HTTP_METHOD_PATCH AttributeContext_HttpMethod = 10
)
// Enum value maps for AttributeContext_HttpMethod.
var (
AttributeContext_HttpMethod_name = map[int32]string{
0: "HTTP_METHOD_UNSPECIFIED",
1: "HTTP_METHOD_OTHER",
2: "HTTP_METHOD_GET",
3: "HTTP_METHOD_HEAD",
4: "HTTP_METHOD_POST",
5: "HTTP_METHOD_PUT",
6: "HTTP_METHOD_DELETE",
7: "HTTP_METHOD_CONNECT",
8: "HTTP_METHOD_OPTIONS",
9: "HTTP_METHOD_TRACE",
10: "HTTP_METHOD_PATCH",
}
AttributeContext_HttpMethod_value = map[string]int32{
"HTTP_METHOD_UNSPECIFIED": 0,
"HTTP_METHOD_OTHER": 1,
"HTTP_METHOD_GET": 2,
"HTTP_METHOD_HEAD": 3,
"HTTP_METHOD_POST": 4,
"HTTP_METHOD_PUT": 5,
"HTTP_METHOD_DELETE": 6,
"HTTP_METHOD_CONNECT": 7,
"HTTP_METHOD_OPTIONS": 8,
"HTTP_METHOD_TRACE": 9,
"HTTP_METHOD_PATCH": 10,
}
)
func (x AttributeContext_HttpMethod) Enum() *AttributeContext_HttpMethod {
p := new(AttributeContext_HttpMethod)
*p = x
return p
}
func (x AttributeContext_HttpMethod) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (AttributeContext_HttpMethod) Descriptor() protoreflect.EnumDescriptor {
return file_audit_v1_audit_event_proto_enumTypes[1].Descriptor()
}
func (AttributeContext_HttpMethod) Type() protoreflect.EnumType {
return &file_audit_v1_audit_event_proto_enumTypes[1]
}
func (x AttributeContext_HttpMethod) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use AttributeContext_HttpMethod.Descriptor instead.
func (AttributeContext_HttpMethod) EnumDescriptor() ([]byte, []int) {
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{4, 0}
}
// The audit log entry can be used to record an incident in the audit log.
type AuditLogEntry struct {
state protoimpl.MessageState `protogen:"open.v1"`
// The resource name of the log to which this log entry belongs.
//
// Format: <pluralType>/<identifier>/logs/<eventType>
// Where:
//
// Plural-Types: One from the list of supported ObjectType as plural
// Event-Types: admin-activity, system-event, policy-denied, data-access
//
// Examples:
//
// "projects/00b0f972-59ff-48f2-a4f9-29c57b75c2fa/logs/admin-activity"
// "billing-accounts/00b0f972-59ff-48f2-a4f9-29c57b75c2fa/logs/admin-activity"
//
// Required: true
LogName string `protobuf:"bytes,1,opt,name=log_name,json=logName,proto3" json:"log_name,omitempty"`
// The log entry payload, which is always an AuditLog for STACKIT Audit Log events.
//
// Required: true
ProtoPayload *AuditLog `protobuf:"bytes,2,opt,name=proto_payload,json=protoPayload,proto3" json:"proto_payload,omitempty"`
// A unique identifier for the log entry.
// Is used to check completeness of audit events over time.
//
// Format: <unix-timestamp>/<region-zone>/<worker-id>/<sequence-number>
// Where:
//
// Unix-Timestamp: A UTC unix timestamp in seconds is expected
// Region-Zone: The region and (optional) zone id. If both, separated with a - (dash)
// Worker-Id: The ID of the K8s Pod, Service-Instance, etc (must be unique for a sending service)
// Sequence-Number: Increasing number, representing the message offset per Worker-Id
// If the Worker-Id changes, the sequence-number has to be reset to 0.
//
// Examples:
//
// "1721899117/eu01/319a7fb9-edd2-46c6-953a-a724bb377c61/8792726390909855142"
// "1721899117/eu01-m/319a7fb9-edd2-46c6-953a-a724bb377c61/8792726390909855142"
//
// Required: true
InsertId string `protobuf:"bytes,3,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.
//
// Required: false
Labels map[string]string `protobuf:"bytes,4,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
// Correlate multiple audit logs by setting the same id
//
// Required: false
CorrelationId *string `protobuf:"bytes,5,opt,name=correlation_id,json=correlationId,proto3,oneof" json:"correlation_id,omitempty"`
// The time the event described by the log entry occurred.
//
// Required: true
Timestamp *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
// The severity of the log entry.
//
// Required: true
Severity LogSeverity `protobuf:"varint,7,opt,name=severity,proto3,enum=audit.v1.LogSeverity" json:"severity,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AuditLogEntry) Reset() {
*x = AuditLogEntry{}
mi := &file_audit_v1_audit_event_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *AuditLogEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AuditLogEntry) ProtoMessage() {}
func (x *AuditLogEntry) ProtoReflect() protoreflect.Message {
mi := &file_audit_v1_audit_event_proto_msgTypes[0]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AuditLogEntry.ProtoReflect.Descriptor instead.
func (*AuditLogEntry) Descriptor() ([]byte, []int) {
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{0}
}
func (x *AuditLogEntry) GetLogName() string {
if x != nil {
return x.LogName
}
return ""
}
func (x *AuditLogEntry) GetProtoPayload() *AuditLog {
if x != nil {
return x.ProtoPayload
}
return nil
}
func (x *AuditLogEntry) GetInsertId() string {
if x != nil {
return x.InsertId
}
return ""
}
func (x *AuditLogEntry) GetLabels() map[string]string {
if x != nil {
return x.Labels
}
return nil
}
func (x *AuditLogEntry) GetCorrelationId() string {
if x != nil && x.CorrelationId != nil {
return *x.CorrelationId
}
return ""
}
func (x *AuditLogEntry) GetTimestamp() *timestamppb.Timestamp {
if x != nil {
return x.Timestamp
}
return nil
}
func (x *AuditLogEntry) GetSeverity() LogSeverity {
if x != nil {
return x.Severity
}
return LogSeverity_LOG_SEVERITY_UNSPECIFIED
}
// Common audit log format for STACKIT API operations.
type AuditLog struct {
state protoimpl.MessageState `protogen:"open.v1"`
// The name of the API service performing the operation.
//
// Examples:
//
// "resource-manager"
//
// Required: true
ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
// The name of the service method or operation.
//
// Format: stackit.<product>.<version>.<type-chain>.<operation>
// Where:
//
// Product: The name of the service in lowercase
// Version: Optional API version
// Type-Chain: Chained path to object
// Operation: The name of the operation in lowercase
//
// Examples:
//
// "stackit.resource-manager.v1.organizations.create"
// "stackit.authorization.v1.projects.volumes.create"
// "stackit.authorization.v2alpha.projects.volumes.create"
// "stackit.authorization.v2.folders.move"
// "stackit.resource-manager.health"
//
// Required: true
OperationName string `protobuf:"bytes,2,opt,name=operation_name,json=operationName,proto3" json:"operation_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.
//
// Format: <pluralType>/<id>[/<details>]
// Where:
//
// Plural-Type: One from the list of supported ObjectType as plural
// Id: The identifier of the object
// Details: Optional "<key>/<id>" pairs
//
// Examples:
//
// "organizations/40ab14ad-b7b0-4b1c-be41-5bc820a968d1"
// "projects/7046e7b6-5ae9-441c-99fe-2cd28a5078ec/locations/_/instances/instance-20240723-174217"
// "projects/7046e7b6-5ae9-441c-99fe-2cd28a5078ec/locations/sx-stoi01/instances/instance-20240723-174217"
// "projects/dd7d1807-54e9-4426-8994-721758b5b554/locations/eu01/vms/b6851b4e-7a9d-4973-ab0f-a80a13ee3060/ports/78f8bad4-a291-4fa3-b07f-4a1985d3dbe8"
// "projects/dd7d1807-54e9-4426-8994-721758b5b554/locations/eu01-m/vms/b6851b4e-7a9d-4973-ab0f-a80a13ee3060/ports/78f8bad4-a291-4fa3-b07f-4a1985d3dbe8"
//
// Required: true
ResourceName string `protobuf:"bytes,3,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
// Authentication information.
//
// Required: true
AuthenticationInfo *AuthenticationInfo `protobuf:"bytes,4,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.
//
// Required: false
AuthorizationInfo []*AuthorizationInfo `protobuf:"bytes,5,rep,name=authorization_info,json=authorizationInfo,proto3" json:"authorization_info,omitempty"`
// Metadata about the operation.
//
// Required: true
RequestMetadata *RequestMetadata `protobuf:"bytes,6,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.
//
// Required: false
Request *structpb.Struct `protobuf:"bytes,7,opt,name=request,proto3,oneof" json:"request,omitempty"`
// The status of the overall operation.
//
// Required: true
ResponseMetadata *ResponseMetadata `protobuf:"bytes,8,opt,name=response_metadata,json=responseMetadata,proto3" json:"response_metadata,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.
//
// Required: false
Response *structpb.Struct `protobuf:"bytes,9,opt,name=response,proto3,oneof" json:"response,omitempty"`
// Other service-specific data about the request, response, and other
// information associated with the current audited event.
//
// Required: false
Metadata *structpb.Struct `protobuf:"bytes,10,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AuditLog) Reset() {
*x = AuditLog{}
mi := &file_audit_v1_audit_event_proto_msgTypes[1]
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[1]
if 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{1}
}
func (x *AuditLog) GetServiceName() string {
if x != nil {
return x.ServiceName
}
return ""
}
func (x *AuditLog) GetOperationName() string {
if x != nil {
return x.OperationName
}
return ""
}
func (x *AuditLog) GetResourceName() string {
if x != nil {
return x.ResourceName
}
return ""
}
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) GetResponseMetadata() *ResponseMetadata {
if x != nil {
return x.ResponseMetadata
}
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
}
// Authentication information for the operation.
type AuthenticationInfo struct {
state protoimpl.MessageState `protogen:"open.v1"`
// STACKIT principal id
//
// Required: true
PrincipalId string `protobuf:"bytes,1,opt,name=principal_id,json=principalId,proto3" json:"principal_id,omitempty"`
// The email address of the authenticated user.
// Service accounts have email addresses that can be used.
//
// Required: true
PrincipalEmail string `protobuf:"bytes,2,opt,name=principal_email,json=principalEmail,proto3" json:"principal_email,omitempty"`
// The name of the service account used to create or exchange
// credentials for authenticating the service account making the request.
//
// Format: projects/<id>/service-accounts/<accountId>
//
// Examples:
//
// "projects/29b2c56f-f712-4a9c-845b-f0907158e53c/service-accounts/a606dc68-8b97-421b-89a9-116bcbd004df"
//
// Required: false
ServiceAccountName *string `protobuf:"bytes,3,opt,name=service_account_name,json=serviceAccountName,proto3,oneof" json:"service_account_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 STACKIT 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.
//
// Required: false
ServiceAccountDelegationInfo []*ServiceAccountDelegationInfo `protobuf:"bytes,4,rep,name=service_account_delegation_info,json=serviceAccountDelegationInfo,proto3" json:"service_account_delegation_info,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AuthenticationInfo) Reset() {
*x = AuthenticationInfo{}
mi := &file_audit_v1_audit_event_proto_msgTypes[2]
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[2]
if 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{2}
}
func (x *AuthenticationInfo) GetPrincipalId() string {
if x != nil {
return x.PrincipalId
}
return ""
}
func (x *AuthenticationInfo) GetPrincipalEmail() string {
if x != nil {
return x.PrincipalEmail
}
return ""
}
func (x *AuthenticationInfo) GetServiceAccountName() string {
if x != nil && x.ServiceAccountName != nil {
return *x.ServiceAccountName
}
return ""
}
func (x *AuthenticationInfo) GetServiceAccountDelegationInfo() []*ServiceAccountDelegationInfo {
if x != nil {
return x.ServiceAccountDelegationInfo
}
return nil
}
// Authorization information for the operation.
type AuthorizationInfo struct {
state protoimpl.MessageState `protogen:"open.v1"`
// The resource being accessed, as a REST-style string.
//
// Format: <pluralType>/<id>[/<details>]
// Where:
//
// Plural-Type: One from the list of supported ObjectType as plural
// Id: The identifier of the object
// Details: Optional "<key>/<id>" pairs
//
// Examples:
//
// "organizations/40ab14ad-b7b0-4b1c-be41-5bc820a968d1"
// "projects/7046e7b6-5ae9-441c-99fe-2cd28a5078ec/locations/_/instances/instance-20240723-174217"
// "projects/7046e7b6-5ae9-441c-99fe-2cd28a5078ec/locations/eu01/instances/instance-20240723-174217"
// "projects/7046e7b6-5ae9-441c-99fe-2cd28a5078ec/locations/eu01/vms/b6851b4e-7a9d-4973-ab0f-a80a13ee3060/ports/78f8bad4-a291-4fa3-b07f-4a1985d3dbe8"
//
// Required: true
Resource string `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
// The required IAM permission.
//
// Examples:
//
// "resourcemanager.project.edit"
//
// Required: false
Permission *string `protobuf:"bytes,2,opt,name=permission,proto3,oneof" json:"permission,omitempty"`
// IAM permission check result.
//
// Required: false
Granted *bool `protobuf:"varint,3,opt,name=granted,proto3,oneof" json:"granted,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AuthorizationInfo) Reset() {
*x = AuthorizationInfo{}
mi := &file_audit_v1_audit_event_proto_msgTypes[3]
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[3]
if 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{3}
}
func (x *AuthorizationInfo) GetResource() string {
if x != nil {
return x.Resource
}
return ""
}
func (x *AuthorizationInfo) GetPermission() string {
if x != nil && x.Permission != nil {
return *x.Permission
}
return ""
}
func (x *AuthorizationInfo) GetGranted() bool {
if x != nil && x.Granted != nil {
return *x.Granted
}
return false
}
// This message defines the standard attribute vocabulary for STACKIT APIs.
//
// An attribute is a piece of metadata that describes an activity on a network
// service.
type AttributeContext struct {
state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AttributeContext) Reset() {
*x = AttributeContext{}
mi := &file_audit_v1_audit_event_proto_msgTypes[4]
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[4]
if 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{4}
}
// Metadata about the request.
type RequestMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
// The IP address of the caller.
// For caller from internet, this will be public IPv4 or IPv6 address.
// For caller from a VM / K8s Service / etc, this will be the SIT proxy's IPv4 address.
//
// Required: true
CallerIp string `protobuf:"bytes,1,opt,name=caller_ip,json=callerIp,proto3" json:"caller_ip,omitempty"`
// The user agent of the caller.
//
// Examples:
//
// "OpenAPI-Generator/1.0.0/go"
// -> The request was made by the STACKIT SDK GO client, STACKIT CLI or Terraform provider
// "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
// -> The request was made by a web browser.
//
// Required: true
CallerSuppliedUserAgent string `protobuf:"bytes,2,opt,name=caller_supplied_user_agent,json=callerSuppliedUserAgent,proto3" json:"caller_supplied_user_agent,omitempty"`
// This field contains request attributes like request url, time, etc.
//
// Required: true
RequestAttributes *AttributeContext_Request `protobuf:"bytes,3,opt,name=request_attributes,json=requestAttributes,proto3" json:"request_attributes,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *RequestMetadata) Reset() {
*x = RequestMetadata{}
mi := &file_audit_v1_audit_event_proto_msgTypes[5]
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[5]
if 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{5}
}
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) GetRequestAttributes() *AttributeContext_Request {
if x != nil {
return x.RequestAttributes
}
return nil
}
// Metadata about the response
type ResponseMetadata struct {
state protoimpl.MessageState `protogen:"open.v1"`
// The http or gRPC status code.
//
// Examples:
//
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
// https://grpc.github.io/grpc/core/md_doc_statuscodes.html
//
// Required: true
StatusCode *wrapperspb.Int32Value `protobuf:"bytes,1,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
// Short description of the error
//
// Required: false
ErrorMessage *string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3,oneof" json:"error_message,omitempty"`
// Error details
//
// Required: false
ErrorDetails []*structpb.Struct `protobuf:"bytes,3,rep,name=error_details,json=errorDetails,proto3" json:"error_details,omitempty"`
// This field contains response attributes like headers, time, etc.
//
// Required: true
ResponseAttributes *AttributeContext_Response `protobuf:"bytes,4,opt,name=response_attributes,json=responseAttributes,proto3" json:"response_attributes,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ResponseMetadata) Reset() {
*x = ResponseMetadata{}
mi := &file_audit_v1_audit_event_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ResponseMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResponseMetadata) ProtoMessage() {}
func (x *ResponseMetadata) ProtoReflect() protoreflect.Message {
mi := &file_audit_v1_audit_event_proto_msgTypes[6]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ResponseMetadata.ProtoReflect.Descriptor instead.
func (*ResponseMetadata) Descriptor() ([]byte, []int) {
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{6}
}
func (x *ResponseMetadata) GetStatusCode() *wrapperspb.Int32Value {
if x != nil {
return x.StatusCode
}
return nil
}
func (x *ResponseMetadata) GetErrorMessage() string {
if x != nil && x.ErrorMessage != nil {
return *x.ErrorMessage
}
return ""
}
func (x *ResponseMetadata) GetErrorDetails() []*structpb.Struct {
if x != nil {
return x.ErrorDetails
}
return nil
}
func (x *ResponseMetadata) GetResponseAttributes() *AttributeContext_Response {
if x != nil {
return x.ResponseAttributes
}
return nil
}
// Identity delegation history of an authenticated service account.
type ServiceAccountDelegationInfo struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Entity that creates credentials for service account and assumes its
// identity for authentication.
//
// Types that are valid to be assigned to Authority:
//
// *ServiceAccountDelegationInfo_SystemPrincipal_
// *ServiceAccountDelegationInfo_IdpPrincipal_
Authority isServiceAccountDelegationInfo_Authority `protobuf_oneof:"authority"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ServiceAccountDelegationInfo) Reset() {
*x = ServiceAccountDelegationInfo{}
mi := &file_audit_v1_audit_event_proto_msgTypes[7]
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[7]
if 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{7}
}
func (x *ServiceAccountDelegationInfo) GetAuthority() isServiceAccountDelegationInfo_Authority {
if x != nil {
return x.Authority
}
return nil
}
func (x *ServiceAccountDelegationInfo) GetSystemPrincipal() *ServiceAccountDelegationInfo_SystemPrincipal {
if x != nil {
if x, ok := x.Authority.(*ServiceAccountDelegationInfo_SystemPrincipal_); ok {
return x.SystemPrincipal
}
}
return nil
}
func (x *ServiceAccountDelegationInfo) GetIdpPrincipal() *ServiceAccountDelegationInfo_IdpPrincipal {
if x != nil {
if x, ok := x.Authority.(*ServiceAccountDelegationInfo_IdpPrincipal_); ok {
return x.IdpPrincipal
}
}
return nil
}
type isServiceAccountDelegationInfo_Authority interface {
isServiceAccountDelegationInfo_Authority()
}
type ServiceAccountDelegationInfo_SystemPrincipal_ struct {
// System identity
SystemPrincipal *ServiceAccountDelegationInfo_SystemPrincipal `protobuf:"bytes,1,opt,name=system_principal,json=systemPrincipal,proto3,oneof"`
}
type ServiceAccountDelegationInfo_IdpPrincipal_ struct {
// STACKIT IDP identity
IdpPrincipal *ServiceAccountDelegationInfo_IdpPrincipal `protobuf:"bytes,2,opt,name=idp_principal,json=idpPrincipal,proto3,oneof"`
}
func (*ServiceAccountDelegationInfo_SystemPrincipal_) isServiceAccountDelegationInfo_Authority() {}
func (*ServiceAccountDelegationInfo_IdpPrincipal_) isServiceAccountDelegationInfo_Authority() {}
// 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 `protogen:"open.v1"`
// The authenticated principal. Reflects the issuer ("iss") and subject
// ("sub") claims within a JWT.
//
// Format: <sub-claim>/<iss-claim>
// Where:
//
// Sub-Claim: Sub-Claim from JWT with `/` percent-encoded (url-encoded)
// Issuer-Claim: Iss-Claim from JWT with `/` percent-encoded (url-encoded)
//
// Examples:
//
// "stackit-resource-manager-dev/https%3A%2F%2Faccounts.dev.stackit.cloud"
//
// Required: true
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, typically the services intended
// to receive the credential.
//
// Examples:
//
// ["stackit-resource-manager-dev", "stackit", "api"]
//
// Required: false
Audiences []string `protobuf:"bytes,2,rep,name=audiences,proto3" json:"audiences,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 should
// typically be presented for a STACKIT JWT.
// Don't add other claims to not leak internal or personal information:
//
// {
// "aud": "stackit-resource-manager-dev",
// "email": "max@mail.schwarz",
// "iss": "https://api.dev.stackit.cloud",
// "jti": "45a196e0-480f-4c34-a592-dc5db81c8c3a"
// "sub": "cd94f01a-df2e-4456-902f-48f5e57f0b63"
// }
//
// Required: true
Claims *structpb.Struct `protobuf:"bytes,3,opt,name=claims,proto3" json:"claims,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AttributeContext_Auth) Reset() {
*x = AttributeContext_Auth{}
mi := &file_audit_v1_audit_event_proto_msgTypes[9]
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[9]
if 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{4, 0}
}
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) GetClaims() *structpb.Struct {
if x != nil {
return x.Claims
}
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 `protogen:"open.v1"`
// 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.
//
// More information can be found here: https://google.aip.dev/155
//
// Format: <idempotency-key>
// Where:
//
// Idempotency-key: Typically consists of a id + version
//
// Examples:
//
// 5e3952a9-b628-4be6-ac61-b1c6eb4a110c/5
//
// Required: false
Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"`
// The (HTTP) request method, such as `GET`, `POST`.
//
// Required: true
Method AttributeContext_HttpMethod `protobuf:"varint,2,opt,name=method,proto3,enum=audit.v1.AttributeContext_HttpMethod" json:"method,omitempty"`
// The (HTTP) request headers / gRPC metadata. 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.
//
// Internal IP-Addresses have to be removed (e.g. in x-forwarded-xxx headers).
//
// Required: true
Headers map[string]string `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
// The gRPC / HTTP URL path.
//
// Required: true
Path string `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"`
// The HTTP request `Host` header value.
//
// Required: true
Host string `protobuf:"bytes,5,opt,name=host,proto3" json:"host,omitempty"`
// The URL scheme, such as `http`, `https` or `gRPC`.
//
// Required: true
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.
// The input should be escaped to not contain any special characters.
//
// Required: false
Query *string `protobuf:"bytes,7,opt,name=query,proto3,oneof" json:"query,omitempty"`
// The timestamp when the `destination` service receives the first byte of
// the request.
//
// Required: true
Time *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=time,proto3" json:"time,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.
//
// Required: true
Protocol string `protobuf:"bytes,9,opt,name=protocol,proto3" json:"protocol,omitempty"`
// The request authentication.
//
// Required: true
Auth *AttributeContext_Auth `protobuf:"bytes,10,opt,name=auth,proto3" json:"auth,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AttributeContext_Request) Reset() {
*x = AttributeContext_Request{}
mi := &file_audit_v1_audit_event_proto_msgTypes[10]
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[10]
if 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{4, 1}
}
func (x *AttributeContext_Request) GetId() string {
if x != nil && x.Id != nil {
return *x.Id
}
return ""
}
func (x *AttributeContext_Request) GetMethod() AttributeContext_HttpMethod {
if x != nil {
return x.Method
}
return AttributeContext_HTTP_METHOD_UNSPECIFIED
}
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 && x.Query != nil {
return *x.Query
}
return ""
}
func (x *AttributeContext_Request) GetTime() *timestamppb.Timestamp {
if x != nil {
return x.Time
}
return nil
}
func (x *AttributeContext_Request) GetProtocol() string {
if x != nil {
return x.Protocol
}
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 `protogen:"open.v1"`
// The number of items returned to the client if applicable.
//
// Required: false
NumResponseItems *wrapperspb.Int64Value `protobuf:"bytes,1,opt,name=num_response_items,json=numResponseItems,proto3,oneof" json:"num_response_items,omitempty"`
// The HTTP response size in bytes.
//
// Required: false
Size *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=size,proto3,oneof" 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.
//
// Required: false
Headers map[string]string `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
// The timestamp when the "destination" service generates the first byte of
// the response.
//
// Required: true
Time *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=time,proto3" json:"time,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *AttributeContext_Response) Reset() {
*x = AttributeContext_Response{}
mi := &file_audit_v1_audit_event_proto_msgTypes[11]
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[11]
if 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{4, 2}
}
func (x *AttributeContext_Response) GetNumResponseItems() *wrapperspb.Int64Value {
if x != nil {
return x.NumResponseItems
}
return nil
}
func (x *AttributeContext_Response) GetSize() *wrapperspb.Int64Value {
if x != nil {
return x.Size
}
return nil
}
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
}
// Anonymous system principal to be used when no user identity is available.
type ServiceAccountDelegationInfo_SystemPrincipal struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Metadata about the service that uses the service account.
//
// Required: false
ServiceMetadata *structpb.Struct `protobuf:"bytes,1,opt,name=service_metadata,json=serviceMetadata,proto3,oneof" json:"service_metadata,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ServiceAccountDelegationInfo_SystemPrincipal) Reset() {
*x = ServiceAccountDelegationInfo_SystemPrincipal{}
mi := &file_audit_v1_audit_event_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ServiceAccountDelegationInfo_SystemPrincipal) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ServiceAccountDelegationInfo_SystemPrincipal) ProtoMessage() {}
func (x *ServiceAccountDelegationInfo_SystemPrincipal) ProtoReflect() protoreflect.Message {
mi := &file_audit_v1_audit_event_proto_msgTypes[14]
if 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_SystemPrincipal.ProtoReflect.Descriptor instead.
func (*ServiceAccountDelegationInfo_SystemPrincipal) Descriptor() ([]byte, []int) {
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{7, 0}
}
func (x *ServiceAccountDelegationInfo_SystemPrincipal) GetServiceMetadata() *structpb.Struct {
if x != nil {
return x.ServiceMetadata
}
return nil
}
// STACKIT idp principal.
type ServiceAccountDelegationInfo_IdpPrincipal struct {
state protoimpl.MessageState `protogen:"open.v1"`
// STACKIT principal id
//
// Required: true
PrincipalId string `protobuf:"bytes,1,opt,name=principal_id,json=principalId,proto3" json:"principal_id,omitempty"`
// The email address of the authenticated user.
// Service accounts have email addresses that can be used.
//
// Required: true
PrincipalEmail string `protobuf:"bytes,2,opt,name=principal_email,json=principalEmail,proto3" json:"principal_email,omitempty"`
// Metadata about the service that uses the service account.
//
// Required: false
ServiceMetadata *structpb.Struct `protobuf:"bytes,3,opt,name=service_metadata,json=serviceMetadata,proto3,oneof" json:"service_metadata,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *ServiceAccountDelegationInfo_IdpPrincipal) Reset() {
*x = ServiceAccountDelegationInfo_IdpPrincipal{}
mi := &file_audit_v1_audit_event_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *ServiceAccountDelegationInfo_IdpPrincipal) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ServiceAccountDelegationInfo_IdpPrincipal) ProtoMessage() {}
func (x *ServiceAccountDelegationInfo_IdpPrincipal) ProtoReflect() protoreflect.Message {
mi := &file_audit_v1_audit_event_proto_msgTypes[15]
if 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_IdpPrincipal.ProtoReflect.Descriptor instead.
func (*ServiceAccountDelegationInfo_IdpPrincipal) Descriptor() ([]byte, []int) {
return file_audit_v1_audit_event_proto_rawDescGZIP(), []int{7, 1}
}
func (x *ServiceAccountDelegationInfo_IdpPrincipal) GetPrincipalId() string {
if x != nil {
return x.PrincipalId
}
return ""
}
func (x *ServiceAccountDelegationInfo_IdpPrincipal) GetPrincipalEmail() string {
if x != nil {
return x.PrincipalEmail
}
return ""
}
func (x *ServiceAccountDelegationInfo_IdpPrincipal) GetServiceMetadata() *structpb.Struct {
if x != nil {
return x.ServiceMetadata
}
return nil
}
var File_audit_v1_audit_event_proto protoreflect.FileDescriptor
const file_audit_v1_audit_event_proto_rawDesc = "" +
"\n" +
"\x1aaudit/v1/audit_event.proto\x12\baudit.v1\x1a\x1bbuf/validate/validate.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xe2\x04\n" +
"\rAuditLogEntry\x12x\n" +
"\blog_name\x18\x01 \x01(\tB]\xbaHZ\xc8\x01\x01rU2S^[a-z-]+/[a-z0-9-]+/logs/(?:admin-activity|system-event|policy-denied|data-access)$R\alogName\x12?\n" +
"\rproto_payload\x18\x02 \x01(\v2\x12.audit.v1.AuditLogB\x06\xbaH\x03\xc8\x01\x01R\fprotoPayload\x12L\n" +
"\tinsert_id\x18\x03 \x01(\tB/\xbaH,\xc8\x01\x01r'2%^[0-9]+/[a-z0-9-]+/[a-z0-9-]+/[0-9]+$R\binsertId\x12;\n" +
"\x06labels\x18\x04 \x03(\v2#.audit.v1.AuditLogEntry.LabelsEntryR\x06labels\x126\n" +
"\x0ecorrelation_id\x18\x05 \x01(\tB\n" +
"\xbaH\ar\x05\x10\x01\x18\xff\x01H\x00R\rcorrelationId\x88\x01\x01\x12E\n" +
"\ttimestamp\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampB\v\xbaH\b\xc8\x01\x01\xb2\x01\x028\x01R\ttimestamp\x12>\n" +
"\bseverity\x18\a \x01(\x0e2\x15.audit.v1.LogSeverityB\v\xbaH\b\xc8\x01\x01\x82\x01\x02\x10\x01R\bseverity\x1a9\n" +
"\vLabelsEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01B\x11\n" +
"\x0f_correlation_id\"\xab\x06\n" +
"\bAuditLog\x12-\n" +
"\fservice_name\x18\x01 \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02\x10\x01R\vserviceName\x12w\n" +
"\x0eoperation_name\x18\x02 \x01(\tBP\xbaHM\xc8\x01\x01rH\x10\x01\x18\xff\x012A^stackit\\.[a-z0-9-]+\\.(?:v[0-9]+\\.)?(?:[a-z0-9-.]+\\.)?[a-z0-9-]+$R\roperationName\x12c\n" +
"\rresource_name\x18\x03 \x01(\tB>\xbaH;\xc8\x01\x01r6\x10\x01\x18\xff\x012/^[a-z]+/[a-z0-9-]+(?:/[a-z0-9-]+/[a-z0-9-_]+)*$R\fresourceName\x12U\n" +
"\x13authentication_info\x18\x04 \x01(\v2\x1c.audit.v1.AuthenticationInfoB\x06\xbaH\x03\xc8\x01\x01R\x12authenticationInfo\x12J\n" +
"\x12authorization_info\x18\x05 \x03(\v2\x1b.audit.v1.AuthorizationInfoR\x11authorizationInfo\x12L\n" +
"\x10request_metadata\x18\x06 \x01(\v2\x19.audit.v1.RequestMetadataB\x06\xbaH\x03\xc8\x01\x01R\x0frequestMetadata\x126\n" +
"\arequest\x18\a \x01(\v2\x17.google.protobuf.StructH\x00R\arequest\x88\x01\x01\x12O\n" +
"\x11response_metadata\x18\b \x01(\v2\x1a.audit.v1.ResponseMetadataB\x06\xbaH\x03\xc8\x01\x01R\x10responseMetadata\x128\n" +
"\bresponse\x18\t \x01(\v2\x17.google.protobuf.StructH\x01R\bresponse\x88\x01\x01\x128\n" +
"\bmetadata\x18\n" +
" \x01(\v2\x17.google.protobuf.StructH\x02R\bmetadata\x88\x01\x01B\n" +
"\n" +
"\b_requestB\v\n" +
"\t_responseB\v\n" +
"\t_metadata\"\xf3\x02\n" +
"\x12AuthenticationInfo\x12-\n" +
"\fprincipal_id\x18\x01 \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02\x10\x01R\vprincipalId\x126\n" +
"\x0fprincipal_email\x18\x02 \x01(\tB\r\xbaH\n" +
"\xc8\x01\x01r\x05\x10\x01\x18\xff\x01R\x0eprincipalEmail\x12n\n" +
"\x14service_account_name\x18\x03 \x01(\tB7\xbaH4r220^[a-z-]+/[a-z0-9-]+/service-accounts/[a-z0-9-]+$H\x00R\x12serviceAccountName\x88\x01\x01\x12m\n" +
"\x1fservice_account_delegation_info\x18\x04 \x03(\v2&.audit.v1.ServiceAccountDelegationInfoR\x1cserviceAccountDelegationInfoB\x17\n" +
"\x15_service_account_name\"\xf2\x01\n" +
"\x11AuthorizationInfo\x12U\n" +
"\bresource\x18\x01 \x01(\tB9\xbaH6\xc8\x01\x01r12/^[a-z]+/[a-z0-9-]+(?:/[a-z0-9-]+/[a-z0-9-_]+)*$R\bresource\x12L\n" +
"\n" +
"permission\x18\x02 \x01(\tB'\xbaH$r\"2 ^[a-z-]+(?:\\.[a-z-]+)*\\.[a-z-]+$H\x00R\n" +
"permission\x88\x01\x01\x12\x1d\n" +
"\agranted\x18\x03 \x01(\bH\x01R\agranted\x88\x01\x01B\r\n" +
"\v_permissionB\n" +
"\n" +
"\b_granted\"\x8a\v\n" +
"\x10AttributeContext\x1a\xa9\x01\n" +
"\x04Auth\x12J\n" +
"\tprincipal\x18\x01 \x01(\tB,\xbaH)\xc8\x01\x01r$2\"^[a-zA-Z0-9-%._]+/[a-zA-Z0-9-%.]+$R\tprincipal\x12\x1c\n" +
"\taudiences\x18\x02 \x03(\tR\taudiences\x127\n" +
"\x06claims\x18\x03 \x01(\v2\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\x06claims\x1a\xae\x04\n" +
"\aRequest\x12\x13\n" +
"\x02id\x18\x01 \x01(\tH\x00R\x02id\x88\x01\x01\x12J\n" +
"\x06method\x18\x02 \x01(\x0e2%.audit.v1.AttributeContext.HttpMethodB\v\xbaH\b\xc8\x01\x01\x82\x01\x02\x10\x01R\x06method\x12Q\n" +
"\aheaders\x18\x03 \x03(\v2/.audit.v1.AttributeContext.Request.HeadersEntryB\x06\xbaH\x03\xc8\x01\x01R\aheaders\x12!\n" +
"\x04path\x18\x04 \x01(\tB\r\xbaH\n" +
"\xc8\x01\x01r\x05\x10\x01\x18\xff\x01R\x04path\x12\x1e\n" +
"\x04host\x18\x05 \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02\x10\x01R\x04host\x12\"\n" +
"\x06scheme\x18\x06 \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02\x10\x01R\x06scheme\x12\x19\n" +
"\x05query\x18\a \x01(\tH\x01R\x05query\x88\x01\x01\x12;\n" +
"\x04time\x18\b \x01(\v2\x1a.google.protobuf.TimestampB\v\xbaH\b\xc8\x01\x01\xb2\x01\x028\x01R\x04time\x12&\n" +
"\bprotocol\x18\t \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02\x10\x01R\bprotocol\x12;\n" +
"\x04auth\x18\n" +
" \x01(\v2\x1f.audit.v1.AttributeContext.AuthB\x06\xbaH\x03\xc8\x01\x01R\x04auth\x1a:\n" +
"\fHeadersEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01B\x05\n" +
"\x03_idB\b\n" +
"\x06_query\x1a\x87\x03\n" +
"\bResponse\x12W\n" +
"\x12num_response_items\x18\x01 \x01(\v2\x1b.google.protobuf.Int64ValueB\a\xbaH\x04\"\x02(\x00H\x00R\x10numResponseItems\x88\x01\x01\x12=\n" +
"\x04size\x18\x02 \x01(\v2\x1b.google.protobuf.Int64ValueB\a\xbaH\x04\"\x02(\x00H\x01R\x04size\x88\x01\x01\x12J\n" +
"\aheaders\x18\x03 \x03(\v20.audit.v1.AttributeContext.Response.HeadersEntryR\aheaders\x12;\n" +
"\x04time\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampB\v\xbaH\b\xc8\x01\x01\xb2\x01\x028\x01R\x04time\x1a:\n" +
"\fHeadersEntry\x12\x10\n" +
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01B\x15\n" +
"\x13_num_response_itemsB\a\n" +
"\x05_size\"\x8e\x02\n" +
"\n" +
"HttpMethod\x12\x1b\n" +
"\x17HTTP_METHOD_UNSPECIFIED\x10\x00\x12\x15\n" +
"\x11HTTP_METHOD_OTHER\x10\x01\x12\x13\n" +
"\x0fHTTP_METHOD_GET\x10\x02\x12\x14\n" +
"\x10HTTP_METHOD_HEAD\x10\x03\x12\x14\n" +
"\x10HTTP_METHOD_POST\x10\x04\x12\x13\n" +
"\x0fHTTP_METHOD_PUT\x10\x05\x12\x16\n" +
"\x12HTTP_METHOD_DELETE\x10\x06\x12\x17\n" +
"\x13HTTP_METHOD_CONNECT\x10\a\x12\x17\n" +
"\x13HTTP_METHOD_OPTIONS\x10\b\x12\x15\n" +
"\x11HTTP_METHOD_TRACE\x10\t\x12\x15\n" +
"\x11HTTP_METHOD_PATCH\x10\n" +
"\"\xe1\x01\n" +
"\x0fRequestMetadata\x12'\n" +
"\tcaller_ip\x18\x01 \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02p\x01R\bcallerIp\x12J\n" +
"\x1acaller_supplied_user_agent\x18\x02 \x01(\tB\r\xbaH\n" +
"\xc8\x01\x01r\x05\x10\x01\x18\xff\x01R\x17callerSuppliedUserAgent\x12Y\n" +
"\x12request_attributes\x18\x03 \x01(\v2\".audit.v1.AttributeContext.RequestB\x06\xbaH\x03\xc8\x01\x01R\x11requestAttributes\"\xb4\x02\n" +
"\x10ResponseMetadata\x12H\n" +
"\vstatus_code\x18\x01 \x01(\v2\x1b.google.protobuf.Int32ValueB\n" +
"\xbaH\a\xc8\x01\x01\x1a\x02(\x00R\n" +
"statusCode\x12(\n" +
"\rerror_message\x18\x02 \x01(\tH\x00R\ferrorMessage\x88\x01\x01\x12<\n" +
"\rerror_details\x18\x03 \x03(\v2\x17.google.protobuf.StructR\ferrorDetails\x12\\\n" +
"\x13response_attributes\x18\x04 \x01(\v2#.audit.v1.AttributeContext.ResponseB\x06\xbaH\x03\xc8\x01\x01R\x12responseAttributesB\x10\n" +
"\x0e_error_message\"\xba\x04\n" +
"\x1cServiceAccountDelegationInfo\x12c\n" +
"\x10system_principal\x18\x01 \x01(\v26.audit.v1.ServiceAccountDelegationInfo.SystemPrincipalH\x00R\x0fsystemPrincipal\x12Z\n" +
"\ridp_principal\x18\x02 \x01(\v23.audit.v1.ServiceAccountDelegationInfo.IdpPrincipalH\x00R\fidpPrincipal\x1ao\n" +
"\x0fSystemPrincipal\x12G\n" +
"\x10service_metadata\x18\x01 \x01(\v2\x17.google.protobuf.StructH\x00R\x0fserviceMetadata\x88\x01\x01B\x13\n" +
"\x11_service_metadata\x1a\xd3\x01\n" +
"\fIdpPrincipal\x12-\n" +
"\fprincipal_id\x18\x01 \x01(\tB\n" +
"\xbaH\a\xc8\x01\x01r\x02\x10\x01R\vprincipalId\x126\n" +
"\x0fprincipal_email\x18\x02 \x01(\tB\r\xbaH\n" +
"\xc8\x01\x01r\x05\x10\x01\x18\xff\x01R\x0eprincipalEmail\x12G\n" +
"\x10service_metadata\x18\x03 \x01(\v2\x17.google.protobuf.StructH\x00R\x0fserviceMetadata\x88\x01\x01B\x13\n" +
"\x11_service_metadataB\x12\n" +
"\tauthority\x12\x05\xbaH\x02\b\x01*\x96\x02\n" +
"\vLogSeverity\x12\x1c\n" +
"\x18LOG_SEVERITY_UNSPECIFIED\x10\x00\x12\x18\n" +
"\x14LOG_SEVERITY_DEFAULT\x10d\x12\x17\n" +
"\x12LOG_SEVERITY_DEBUG\x10\xc8\x01\x12\x16\n" +
"\x11LOG_SEVERITY_INFO\x10\xac\x02\x12\x18\n" +
"\x13LOG_SEVERITY_NOTICE\x10\x90\x03\x12\x19\n" +
"\x14LOG_SEVERITY_WARNING\x10\xf4\x03\x12\x17\n" +
"\x12LOG_SEVERITY_ERROR\x10\xd8\x04\x12\x1a\n" +
"\x15LOG_SEVERITY_CRITICAL\x10\xbc\x05\x12\x17\n" +
"\x12LOG_SEVERITY_ALERT\x10\xa0\x06\x12\x1b\n" +
"\x16LOG_SEVERITY_EMERGENCY\x10\x84\aB1\n" +
"\x1ccom.schwarz.stackit.audit.v1P\x01Z\x0f./audit;auditV1b\x06proto3"
var (
file_audit_v1_audit_event_proto_rawDescOnce sync.Once
file_audit_v1_audit_event_proto_rawDescData []byte
)
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(unsafe.Slice(unsafe.StringData(file_audit_v1_audit_event_proto_rawDesc), len(file_audit_v1_audit_event_proto_rawDesc)))
})
return file_audit_v1_audit_event_proto_rawDescData
}
var file_audit_v1_audit_event_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_audit_v1_audit_event_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
var file_audit_v1_audit_event_proto_goTypes = []any{
(LogSeverity)(0), // 0: audit.v1.LogSeverity
(AttributeContext_HttpMethod)(0), // 1: audit.v1.AttributeContext.HttpMethod
(*AuditLogEntry)(nil), // 2: audit.v1.AuditLogEntry
(*AuditLog)(nil), // 3: audit.v1.AuditLog
(*AuthenticationInfo)(nil), // 4: audit.v1.AuthenticationInfo
(*AuthorizationInfo)(nil), // 5: audit.v1.AuthorizationInfo
(*AttributeContext)(nil), // 6: audit.v1.AttributeContext
(*RequestMetadata)(nil), // 7: audit.v1.RequestMetadata
(*ResponseMetadata)(nil), // 8: audit.v1.ResponseMetadata
(*ServiceAccountDelegationInfo)(nil), // 9: audit.v1.ServiceAccountDelegationInfo
nil, // 10: audit.v1.AuditLogEntry.LabelsEntry
(*AttributeContext_Auth)(nil), // 11: audit.v1.AttributeContext.Auth
(*AttributeContext_Request)(nil), // 12: audit.v1.AttributeContext.Request
(*AttributeContext_Response)(nil), // 13: audit.v1.AttributeContext.Response
nil, // 14: audit.v1.AttributeContext.Request.HeadersEntry
nil, // 15: audit.v1.AttributeContext.Response.HeadersEntry
(*ServiceAccountDelegationInfo_SystemPrincipal)(nil), // 16: audit.v1.ServiceAccountDelegationInfo.SystemPrincipal
(*ServiceAccountDelegationInfo_IdpPrincipal)(nil), // 17: audit.v1.ServiceAccountDelegationInfo.IdpPrincipal
(*timestamppb.Timestamp)(nil), // 18: google.protobuf.Timestamp
(*structpb.Struct)(nil), // 19: google.protobuf.Struct
(*wrapperspb.Int32Value)(nil), // 20: google.protobuf.Int32Value
(*wrapperspb.Int64Value)(nil), // 21: google.protobuf.Int64Value
}
var file_audit_v1_audit_event_proto_depIdxs = []int32{
3, // 0: audit.v1.AuditLogEntry.proto_payload:type_name -> audit.v1.AuditLog
10, // 1: audit.v1.AuditLogEntry.labels:type_name -> audit.v1.AuditLogEntry.LabelsEntry
18, // 2: audit.v1.AuditLogEntry.timestamp:type_name -> google.protobuf.Timestamp
0, // 3: audit.v1.AuditLogEntry.severity:type_name -> audit.v1.LogSeverity
4, // 4: audit.v1.AuditLog.authentication_info:type_name -> audit.v1.AuthenticationInfo
5, // 5: audit.v1.AuditLog.authorization_info:type_name -> audit.v1.AuthorizationInfo
7, // 6: audit.v1.AuditLog.request_metadata:type_name -> audit.v1.RequestMetadata
19, // 7: audit.v1.AuditLog.request:type_name -> google.protobuf.Struct
8, // 8: audit.v1.AuditLog.response_metadata:type_name -> audit.v1.ResponseMetadata
19, // 9: audit.v1.AuditLog.response:type_name -> google.protobuf.Struct
19, // 10: audit.v1.AuditLog.metadata:type_name -> google.protobuf.Struct
9, // 11: audit.v1.AuthenticationInfo.service_account_delegation_info:type_name -> audit.v1.ServiceAccountDelegationInfo
12, // 12: audit.v1.RequestMetadata.request_attributes:type_name -> audit.v1.AttributeContext.Request
20, // 13: audit.v1.ResponseMetadata.status_code:type_name -> google.protobuf.Int32Value
19, // 14: audit.v1.ResponseMetadata.error_details:type_name -> google.protobuf.Struct
13, // 15: audit.v1.ResponseMetadata.response_attributes:type_name -> audit.v1.AttributeContext.Response
16, // 16: audit.v1.ServiceAccountDelegationInfo.system_principal:type_name -> audit.v1.ServiceAccountDelegationInfo.SystemPrincipal
17, // 17: audit.v1.ServiceAccountDelegationInfo.idp_principal:type_name -> audit.v1.ServiceAccountDelegationInfo.IdpPrincipal
19, // 18: audit.v1.AttributeContext.Auth.claims:type_name -> google.protobuf.Struct
1, // 19: audit.v1.AttributeContext.Request.method:type_name -> audit.v1.AttributeContext.HttpMethod
14, // 20: audit.v1.AttributeContext.Request.headers:type_name -> audit.v1.AttributeContext.Request.HeadersEntry
18, // 21: audit.v1.AttributeContext.Request.time:type_name -> google.protobuf.Timestamp
11, // 22: audit.v1.AttributeContext.Request.auth:type_name -> audit.v1.AttributeContext.Auth
21, // 23: audit.v1.AttributeContext.Response.num_response_items:type_name -> google.protobuf.Int64Value
21, // 24: audit.v1.AttributeContext.Response.size:type_name -> google.protobuf.Int64Value
15, // 25: audit.v1.AttributeContext.Response.headers:type_name -> audit.v1.AttributeContext.Response.HeadersEntry
18, // 26: audit.v1.AttributeContext.Response.time:type_name -> google.protobuf.Timestamp
19, // 27: audit.v1.ServiceAccountDelegationInfo.SystemPrincipal.service_metadata:type_name -> google.protobuf.Struct
19, // 28: audit.v1.ServiceAccountDelegationInfo.IdpPrincipal.service_metadata:type_name -> google.protobuf.Struct
29, // [29:29] is the sub-list for method output_type
29, // [29:29] is the sub-list for method input_type
29, // [29:29] is the sub-list for extension type_name
29, // [29:29] is the sub-list for extension extendee
0, // [0:29] 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_audit_event_proto_msgTypes[0].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[1].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[2].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[3].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[6].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[7].OneofWrappers = []any{
(*ServiceAccountDelegationInfo_SystemPrincipal_)(nil),
(*ServiceAccountDelegationInfo_IdpPrincipal_)(nil),
}
file_audit_v1_audit_event_proto_msgTypes[10].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[11].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[14].OneofWrappers = []any{}
file_audit_v1_audit_event_proto_msgTypes[15].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_audit_v1_audit_event_proto_rawDesc), len(file_audit_v1_audit_event_proto_rawDesc)),
NumEnums: 2,
NumMessages: 16,
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_goTypes = nil
file_audit_v1_audit_event_proto_depIdxs = nil
}