Class: Google::Cloud::SecurityCenter::V1::Finding

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/securitycenter/v1/finding.rb

Overview

Security Command Center finding.

A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.

Defined Under Namespace

Modules: FindingClass, Mute, Severity, State Classes: ContactsEntry, ExternalSystemsEntry, MuteInfo, SourcePropertiesEntry

Instance Attribute Summary collapse

Instance Attribute Details

#access::Google::Cloud::SecurityCenter::V1::Access

Returns Access details associated with the finding, such as more information on the caller, which method was accessed, and from where.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#application::Google::Cloud::SecurityCenter::V1::Application

Returns Represents an application associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#attack_exposure::Google::Cloud::SecurityCenter::V1::AttackExposure

Returns The results of an attack path simulation relevant to this finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#backup_disaster_recovery::Google::Cloud::SecurityCenter::V1::BackupDisasterRecovery

Returns Fields related to Backup and DR findings.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#canonical_name::String

Returns The canonical name of the finding. It's either "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}", "folders/{folder_id}/sources/{source_id}/findings/{finding_id}" or "projects/{project_number}/sources/{source_id}/findings/{finding_id}", depending on the closest CRM ancestor of the resource associated with the finding.

Returns:

  • (::String)

    The canonical name of the finding. It's either "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}", "folders/{folder_id}/sources/{source_id}/findings/{finding_id}" or "projects/{project_number}/sources/{source_id}/findings/{finding_id}", depending on the closest CRM ancestor of the resource associated with the finding.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#category::String

Returns The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION".

Returns:

  • (::String)

    The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION"



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#cloud_armor::Google::Cloud::SecurityCenter::V1::CloudArmor

Returns Fields related to Cloud Armor findings.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#cloud_dlp_data_profile::Google::Cloud::SecurityCenter::V1::CloudDlpDataProfile

Returns Cloud DLP data profile that is associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#cloud_dlp_inspection::Google::Cloud::SecurityCenter::V1::CloudDlpInspection

Returns Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#compliances::Array<::Google::Cloud::SecurityCenter::V1::Compliance>

Returns Contains compliance information for security standards associated to the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#connections::Array<::Google::Cloud::SecurityCenter::V1::Connection>

Returns Contains information about the IP connection associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#contacts::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V1::ContactDetails} (readonly)

Returns Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories

{
  "security": {
    "contacts": [
      {
        "email": "[email protected]"
      },
      {
        "email": "[email protected]"
      }
    ]
  }
}.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#containers::Array<::Google::Cloud::SecurityCenter::V1::Container>

Returns Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#create_time::Google::Protobuf::Timestamp

Returns The time at which the finding was created in Security Command Center.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#database::Google::Cloud::SecurityCenter::V1::Database

Returns Database associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#description::String

Returns Contains more details about the finding.

Returns:

  • (::String)

    Contains more details about the finding.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#event_time::Google::Protobuf::Timestamp

Returns The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.

Returns:

  • (::Google::Protobuf::Timestamp)

    The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#exfiltration::Google::Cloud::SecurityCenter::V1::Exfiltration

Returns Represents exfiltrations associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#external_systems::Google::Protobuf::Map{::String => ::Google::Cloud::SecurityCenter::V1::ExternalSystem} (readonly)

Returns Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#external_uri::String

Returns The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.

Returns:

  • (::String)

    The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#files::Array<::Google::Cloud::SecurityCenter::V1::File>

Returns File associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#finding_class::Google::Cloud::SecurityCenter::V1::Finding::FindingClass

Returns The class of the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#group_memberships::Array<::Google::Cloud::SecurityCenter::V1::GroupMembership>

Returns Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.

Returns:

  • (::Array<::Google::Cloud::SecurityCenter::V1::GroupMembership>)

    Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#iam_bindings::Array<::Google::Cloud::SecurityCenter::V1::IamBinding>

Returns Represents IAM bindings associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#indicator::Google::Cloud::SecurityCenter::V1::Indicator

Returns Represents what's commonly known as an indicator of compromise (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see Indicator of compromise.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#kernel_rootkit::Google::Cloud::SecurityCenter::V1::KernelRootkit

Returns Signature of the kernel rootkit.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#kubernetes::Google::Cloud::SecurityCenter::V1::Kubernetes

Returns Kubernetes resources associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#load_balancers::Array<::Google::Cloud::SecurityCenter::V1::LoadBalancer>

Returns The load balancers associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#log_entries::Array<::Google::Cloud::SecurityCenter::V1::LogEntry>

Returns Log entries that are relevant to the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#mitre_attack::Google::Cloud::SecurityCenter::V1::MitreAttack

Returns MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#module_name::String

Returns Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885.

Returns:

  • (::String)

    Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#mute::Google::Cloud::SecurityCenter::V1::Finding::Mute

Returns Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#mute_info::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo (readonly)

Returns Output only. The mute information regarding this finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#mute_initiator::String

Returns Records additional information about the mute operation, for example, the mute configuration that muted the finding and the user who muted the finding.

Returns:

  • (::String)

    Records additional information about the mute operation, for example, the mute configuration that muted the finding and the user who muted the finding.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#mute_update_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. The most recent time this finding was muted or unmuted.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#name::String

Returns The relative resource name of the finding. Example: "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}", "folders/{folder_id}/sources/{source_id}/findings/{finding_id}", "projects/{project_id}/sources/{source_id}/findings/{finding_id}".

Returns:

  • (::String)

    The relative resource name of the finding. Example: "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}", "folders/{folder_id}/sources/{source_id}/findings/{finding_id}", "projects/{project_id}/sources/{source_id}/findings/{finding_id}".



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#next_steps::String

Returns Steps to address the finding.

Returns:

  • (::String)

    Steps to address the finding.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#notebook::Google::Cloud::SecurityCenter::V1::Notebook

Returns Notebook associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#org_policies::Array<::Google::Cloud::SecurityCenter::V1::OrgPolicy>

Returns Contains information about the org policies associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#parent::String

Returns The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id}/sources/{source_id}".

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#parent_display_name::String (readonly)

Returns Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics".

Returns:

  • (::String)

    Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics".



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#processes::Array<::Google::Cloud::SecurityCenter::V1::Process>

Returns Represents operating system processes associated with the Finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#resource_name::String

Returns For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.

Returns:

  • (::String)

    For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#security_marks::Google::Cloud::SecurityCenter::V1::SecurityMarks (readonly)

Returns Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#security_posture::Google::Cloud::SecurityCenter::V1::SecurityPosture

Returns The security posture associated with the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#severity::Google::Cloud::SecurityCenter::V1::Finding::Severity

Returns The severity of the finding. This field is managed by the source that writes the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#source_properties::Google::Protobuf::Map{::String => ::Google::Protobuf::Value}

Returns Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.

Returns:

  • (::Google::Protobuf::Map{::String => ::Google::Protobuf::Value})

    Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#state::Google::Cloud::SecurityCenter::V1::Finding::State

Returns The state of the finding.

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#toxic_combination::Google::Cloud::SecurityCenter::V1::ToxicCombination

Returns Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests.

Returns:

  • (::Google::Cloud::SecurityCenter::V1::ToxicCombination)

    Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests.



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end

#vulnerability::Google::Cloud::SecurityCenter::V1::Vulnerability

Returns Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/).

Returns:



257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
# File 'proto_docs/google/cloud/securitycenter/v1/finding.rb', line 257

class Finding
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Mute information about the finding, including whether the finding has a
  # static mute or any matching dynamic mute rules.
  # @!attribute [rw] static_mute
  #   @return [::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::StaticMute]
  #     If set, the static mute applied to this finding. Static mutes override
  #     dynamic mutes. If unset, there is no static mute.
  # @!attribute [rw] dynamic_mute_records
  #   @return [::Array<::Google::Cloud::SecurityCenter::V1::Finding::MuteInfo::DynamicMuteRecord>]
  #     The list of dynamic mute rules that currently match the finding.
  class MuteInfo
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about the static mute state. A static mute state overrides
    # any dynamic mute rules that apply to this finding. The static mute state
    # can be set by a static mute rule or by muting the finding directly.
    # @!attribute [rw] state
    #   @return [::Google::Cloud::SecurityCenter::V1::Finding::Mute]
    #     The static mute state. If the value is `MUTED` or `UNMUTED`, then the
    #     finding's overall mute state will have the same value.
    # @!attribute [rw] apply_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the static mute was applied.
    class StaticMute
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # The record of a dynamic mute rule that matches the finding.
    # @!attribute [rw] mute_config
    #   @return [::String]
    #     The relative resource name of the mute rule, represented by a mute
    #     config, that created this record, for example
    #     `organizations/123/muteConfigs/mymuteconfig` or
    #     `organizations/123/locations/global/muteConfigs/mymuteconfig`.
    # @!attribute [rw] match_time
    #   @return [::Google::Protobuf::Timestamp]
    #     When the dynamic mute rule first matched the finding.
    class DynamicMuteRecord
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Protobuf::Value]
  class SourcePropertiesEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ExternalSystem]
  class ExternalSystemsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] key
  #   @return [::String]
  # @!attribute [rw] value
  #   @return [::Google::Cloud::SecurityCenter::V1::ContactDetails]
  class ContactsEntry
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The state of the finding.
  module State
    # Unspecified state.
    STATE_UNSPECIFIED = 0

    # The finding requires attention and has not been addressed yet.
    ACTIVE = 1

    # The finding has been fixed, triaged as a non-issue or otherwise addressed
    # and is no longer active.
    INACTIVE = 2
  end

  # The severity of the finding.
  module Severity
    # This value is used for findings when a source doesn't write a severity
    # value.
    SEVERITY_UNSPECIFIED = 0

    # Vulnerability:
    # A critical vulnerability is easily discoverable by an external actor,
    # exploitable, and results in the direct ability to execute arbitrary code,
    # exfiltrate data, and otherwise gain additional access and privileges to
    # cloud resources and workloads. Examples include publicly accessible
    # unprotected user data and public SSH access with weak or no
    # passwords.
    #
    # Threat:
    # Indicates a threat that is able to access, modify, or delete data or
    # execute unauthorized code within existing resources.
    CRITICAL = 1

    # Vulnerability:
    # A high risk vulnerability can be easily discovered and exploited in
    # combination with other vulnerabilities in order to gain direct access and
    # the ability to execute arbitrary code, exfiltrate data, and otherwise
    # gain additional access and privileges to cloud resources and workloads.
    # An example is a database with weak or no passwords that is only
    # accessible internally. This database could easily be compromised by an
    # actor that had access to the internal network.
    #
    # Threat:
    # Indicates a threat that is able to create new computational resources in
    # an environment but not able to access data or execute code in existing
    # resources.
    HIGH = 2

    # Vulnerability:
    # A medium risk vulnerability could be used by an actor to gain access to
    # resources or privileges that enable them to eventually (through multiple
    # steps or a complex exploit) gain access and the ability to execute
    # arbitrary code or exfiltrate data. An example is a service account with
    # access to more projects than it should have. If an actor gains access to
    # the service account, they could potentially use that access to manipulate
    # a project the service account was not intended to.
    #
    # Threat:
    # Indicates a threat that is able to cause operational impact but may not
    # access data or execute unauthorized code.
    MEDIUM = 3

    # Vulnerability:
    # A low risk vulnerability hampers a security organization's ability to
    # detect vulnerabilities or active threats in their deployment, or prevents
    # the root cause investigation of security issues. An example is monitoring
    # and logs being disabled for resource configurations and access.
    #
    # Threat:
    # Indicates a threat that has obtained minimal access to an environment but
    # is not able to access data, execute code, or create resources.
    LOW = 4
  end

  # Mute state a finding can be in.
  module Mute
    # Unspecified.
    MUTE_UNSPECIFIED = 0

    # Finding has been muted.
    MUTED = 1

    # Finding has been unmuted.
    UNMUTED = 2

    # Finding has never been muted/unmuted.
    UNDEFINED = 4
  end

  # Represents what kind of Finding it is.
  module FindingClass
    # Unspecified finding class.
    FINDING_CLASS_UNSPECIFIED = 0

    # Describes unwanted or malicious activity.
    THREAT = 1

    # Describes a potential weakness in software that increases risk to
    # Confidentiality & Integrity & Availability.
    VULNERABILITY = 2

    # Describes a potential weakness in cloud resource/asset configuration that
    # increases risk.
    MISCONFIGURATION = 3

    # Describes a security observation that is for informational purposes.
    OBSERVATION = 4

    # Describes an error that prevents some SCC functionality.
    SCC_ERROR = 5

    # Describes a potential security risk due to a change in the security
    # posture.
    POSTURE_VIOLATION = 6

    # Describes a group of security issues that, when the issues
    # occur together, represent a greater risk than when the issues occur
    # independently. A group of such issues is referred to as a toxic
    # combination.
    TOXIC_COMBINATION = 7
  end
end