Class: Google::Apis::SecuritycenterV1beta1::Access

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/securitycenter_v1beta1/classes.rb,
lib/google/apis/securitycenter_v1beta1/representations.rb,
lib/google/apis/securitycenter_v1beta1/representations.rb

Overview

Represents an access event.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Access

Returns a new instance of Access.



94
95
96
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 94

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#caller_ipString

Caller's IP address, such as "1.1.1.1". Corresponds to the JSON property callerIp

Returns:

  • (String)


32
33
34
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 32

def caller_ip
  @caller_ip
end

#caller_ip_geoGoogle::Apis::SecuritycenterV1beta1::Geolocation

Represents a geographical location for a given access. Corresponds to the JSON property callerIpGeo



37
38
39
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 37

def caller_ip_geo
  @caller_ip_geo
end

#method_nameString

The method that the service account called, e.g. "SetIamPolicy". Corresponds to the JSON property methodName

Returns:

  • (String)


42
43
44
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 42

def method_name
  @method_name
end

#principal_emailString

Associated email, such as "foo@google.com". 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. Corresponds to the JSON property principalEmail

Returns:

  • (String)


52
53
54
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 52

def principal_email
  @principal_email
end

#principal_subjectString

A string representing the principal_subject associated with the identity. As compared to principal_email, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be principal://iam.googleapis.com/identity pool name/subject/ subject)except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy formatserviceAccount: identity pool name[subject] Corresponds to the JSON propertyprincipalSubject`

Returns:

  • (String)


63
64
65
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 63

def principal_subject
  @principal_subject
end

#service_account_delegation_infoArray<Google::Apis::SecuritycenterV1beta1::ServiceAccountDelegationInfo>

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 are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. Corresponds to the JSON property serviceAccountDelegationInfo



72
73
74
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 72

def 
  @service_account_delegation_info
end

#service_account_key_nameString

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" Corresponds to the JSON property serviceAccountKeyName

Returns:

  • (String)


80
81
82
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 80

def 
  @service_account_key_name
end

#service_nameString

This is the API service that the service account made a call to, e.g. "iam. googleapis.com" Corresponds to the JSON property serviceName

Returns:

  • (String)


86
87
88
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 86

def service_name
  @service_name
end

#user_agent_familyString

What kind of user agent is associated, e.g. operating system shells, embedded or stand-alone applications, etc. Corresponds to the JSON property userAgentFamily

Returns:

  • (String)


92
93
94
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 92

def user_agent_family
  @user_agent_family
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



99
100
101
102
103
104
105
106
107
108
109
# File 'lib/google/apis/securitycenter_v1beta1/classes.rb', line 99

def update!(**args)
  @caller_ip = args[:caller_ip] if args.key?(:caller_ip)
  @caller_ip_geo = args[:caller_ip_geo] if args.key?(:caller_ip_geo)
  @method_name = args[:method_name] if args.key?(:method_name)
  @principal_email = args[:principal_email] if args.key?(:principal_email)
  @principal_subject = args[:principal_subject] if args.key?(:principal_subject)
  @service_account_delegation_info = args[:service_account_delegation_info] if args.key?(:service_account_delegation_info)
  @service_account_key_name = args[:service_account_key_name] if args.key?(:service_account_key_name)
  @service_name = args[:service_name] if args.key?(:service_name)
  @user_agent_family = args[:user_agent_family] if args.key?(:user_agent_family)
end