google-cloud-security_center-v2 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/google/cloud/security_center/v2/security_center/client.rb +4 -8
- data/lib/google/cloud/security_center/v2/security_center/paths.rb +118 -23
- data/lib/google/cloud/security_center/v2/security_center/rest/client.rb +4 -8
- data/lib/google/cloud/security_center/v2/security_center/rest/service_stub.rb +65 -0
- data/lib/google/cloud/security_center/v2/version.rb +1 -1
- data/lib/google/cloud/securitycenter/v2/attack_path_pb.rb +1 -1
- data/lib/google/cloud/securitycenter/v2/cloud_armor_pb.rb +49 -0
- data/lib/google/cloud/securitycenter/v2/finding_pb.rb +5 -1
- data/lib/google/cloud/securitycenter/v2/folder_pb.rb +42 -0
- data/lib/google/cloud/securitycenter/v2/mitre_attack_pb.rb +1 -1
- data/lib/google/cloud/securitycenter/v2/notebook_pb.rb +45 -0
- data/lib/google/cloud/securitycenter/v2/resource_pb.rb +16 -1
- data/lib/google/cloud/securitycenter/v2/resource_value_config_pb.rb +2 -1
- data/lib/google/cloud/securitycenter/v2/securitycenter_service_pb.rb +3 -1
- data/lib/google/cloud/securitycenter/v2/simulation_pb.rb +2 -1
- data/lib/google/cloud/securitycenter/v2/valued_resource_pb.rb +1 -1
- data/proto_docs/google/cloud/securitycenter/v2/cloud_armor.rb +128 -0
- data/proto_docs/google/cloud/securitycenter/v2/finding.rb +6 -0
- data/proto_docs/google/cloud/securitycenter/v2/folder.rb +40 -0
- data/proto_docs/google/cloud/securitycenter/v2/mitre_attack.rb +13 -1
- data/proto_docs/google/cloud/securitycenter/v2/notebook.rb +46 -0
- data/proto_docs/google/cloud/securitycenter/v2/resource.rb +247 -0
- data/proto_docs/google/cloud/securitycenter/v2/resource_value_config.rb +22 -18
- data/proto_docs/google/cloud/securitycenter/v2/securitycenter_service.rb +37 -8
- data/proto_docs/google/cloud/securitycenter/v2/simulation.rb +3 -0
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e79682c37684d3dd49cebcafb353fc3e638c2891e8bd485e19915f13346253b0
|
4
|
+
data.tar.gz: 477e4d287afc8dc91ae0d8f18bbefc9ff98881cc7df85c5029ff7bc9f77b0576
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7389bd7504a1d0cc0e620ec828e30c02214a3538cae227c499ec4b1feba3bb53cef2be52a68f423c7e507e4ac7868941d185b87ef46a5767917798376f55e4c9
|
7
|
+
data.tar.gz: 5582cdf3ef292025c8cdd3a346ff3def07a020bfc937c1d3e45c257bc187a01aa993cd46aaccedbf53805b45a9b2e9557c11ee5103e41c2463f6d7de58c52b8e
|
@@ -2118,14 +2118,6 @@ module Google
|
|
2118
2118
|
# Required. Expression that defines what assets fields to use for grouping.
|
2119
2119
|
# The string value should follow SQL syntax: comma separated list of fields.
|
2120
2120
|
# For example: "parent,resource_name".
|
2121
|
-
#
|
2122
|
-
# The following fields are supported:
|
2123
|
-
#
|
2124
|
-
# * resource_name
|
2125
|
-
# * category
|
2126
|
-
# * state
|
2127
|
-
# * parent
|
2128
|
-
# * severity
|
2129
2121
|
# @param page_token [::String]
|
2130
2122
|
# The value returned by the last `GroupFindingsResponse`; indicates
|
2131
2123
|
# that this is a continuation of a prior `GroupFindings` call, and
|
@@ -4073,6 +4065,10 @@ module Google
|
|
4073
4065
|
# The list of fields to be updated.
|
4074
4066
|
# If empty all mutable fields will be updated.
|
4075
4067
|
#
|
4068
|
+
# To update nested fields, include the top level field in the mask
|
4069
|
+
# For example, to update gcp_metadata.resource_type, include the
|
4070
|
+
# "gcp_metadata" field mask
|
4071
|
+
#
|
4076
4072
|
# @yield [response, operation] Access the result along with the RPC operation
|
4077
4073
|
# @yieldparam response [::Google::Cloud::SecurityCenter::V2::ResourceValueConfig]
|
4078
4074
|
# @yieldparam operation [::GRPC::ActiveCall::Operation]
|
@@ -587,6 +587,27 @@ module Google
|
|
587
587
|
"organizations/#{organization}/locations/#{location}"
|
588
588
|
end
|
589
589
|
|
590
|
+
##
|
591
|
+
# Create a fully-qualified OrganizationValuedResource resource string.
|
592
|
+
#
|
593
|
+
# The resource will be in the following format:
|
594
|
+
#
|
595
|
+
# `organizations/{organization}/locations/{location}/simulations/{simulation}/valuedResources/{valued_resource}`
|
596
|
+
#
|
597
|
+
# @param organization [String]
|
598
|
+
# @param location [String]
|
599
|
+
# @param simulation [String]
|
600
|
+
# @param valued_resource [String]
|
601
|
+
#
|
602
|
+
# @return [::String]
|
603
|
+
def organization_valued_resource_path organization:, location:, simulation:, valued_resource:
|
604
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
605
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
606
|
+
raise ::ArgumentError, "simulation cannot contain /" if simulation.to_s.include? "/"
|
607
|
+
|
608
|
+
"organizations/#{organization}/locations/#{location}/simulations/#{simulation}/valuedResources/#{valued_resource}"
|
609
|
+
end
|
610
|
+
|
590
611
|
##
|
591
612
|
# Create a fully-qualified Policy resource string.
|
592
613
|
#
|
@@ -656,18 +677,42 @@ module Google
|
|
656
677
|
##
|
657
678
|
# Create a fully-qualified ResourceValueConfig resource string.
|
658
679
|
#
|
659
|
-
#
|
680
|
+
# @overload resource_value_config_path(organization:, resource_value_config:)
|
681
|
+
# The resource will be in the following format:
|
660
682
|
#
|
661
|
-
#
|
683
|
+
# `organizations/{organization}/resourceValueConfigs/{resource_value_config}`
|
662
684
|
#
|
663
|
-
#
|
664
|
-
#
|
685
|
+
# @param organization [String]
|
686
|
+
# @param resource_value_config [String]
|
687
|
+
#
|
688
|
+
# @overload resource_value_config_path(organization:, location:, resource_value_config:)
|
689
|
+
# The resource will be in the following format:
|
690
|
+
#
|
691
|
+
# `organizations/{organization}/locations/{location}/resourceValueConfigs/{resource_value_config}`
|
692
|
+
#
|
693
|
+
# @param organization [String]
|
694
|
+
# @param location [String]
|
695
|
+
# @param resource_value_config [String]
|
665
696
|
#
|
666
697
|
# @return [::String]
|
667
|
-
def resource_value_config_path
|
668
|
-
|
698
|
+
def resource_value_config_path **args
|
699
|
+
resources = {
|
700
|
+
"organization:resource_value_config" => (proc do |organization:, resource_value_config:|
|
701
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
702
|
+
|
703
|
+
"organizations/#{organization}/resourceValueConfigs/#{resource_value_config}"
|
704
|
+
end),
|
705
|
+
"location:organization:resource_value_config" => (proc do |organization:, location:, resource_value_config:|
|
706
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
707
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
708
|
+
|
709
|
+
"organizations/#{organization}/locations/#{location}/resourceValueConfigs/#{resource_value_config}"
|
710
|
+
end)
|
711
|
+
}
|
669
712
|
|
670
|
-
"
|
713
|
+
resource = resources[args.keys.sort.join(":")]
|
714
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
715
|
+
resource.call(**args)
|
671
716
|
end
|
672
717
|
|
673
718
|
##
|
@@ -821,18 +866,42 @@ module Google
|
|
821
866
|
##
|
822
867
|
# Create a fully-qualified Simulation resource string.
|
823
868
|
#
|
824
|
-
#
|
869
|
+
# @overload simulation_path(organization:, simulation:)
|
870
|
+
# The resource will be in the following format:
|
825
871
|
#
|
826
|
-
#
|
872
|
+
# `organizations/{organization}/simulations/{simulation}`
|
827
873
|
#
|
828
|
-
#
|
829
|
-
#
|
874
|
+
# @param organization [String]
|
875
|
+
# @param simulation [String]
|
876
|
+
#
|
877
|
+
# @overload simulation_path(organization:, location:, simluation:)
|
878
|
+
# The resource will be in the following format:
|
879
|
+
#
|
880
|
+
# `organizations/{organization}/locations/{location}/simulations/{simluation}`
|
881
|
+
#
|
882
|
+
# @param organization [String]
|
883
|
+
# @param location [String]
|
884
|
+
# @param simluation [String]
|
830
885
|
#
|
831
886
|
# @return [::String]
|
832
|
-
def simulation_path
|
833
|
-
|
887
|
+
def simulation_path **args
|
888
|
+
resources = {
|
889
|
+
"organization:simulation" => (proc do |organization:, simulation:|
|
890
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
891
|
+
|
892
|
+
"organizations/#{organization}/simulations/#{simulation}"
|
893
|
+
end),
|
894
|
+
"location:organization:simluation" => (proc do |organization:, location:, simluation:|
|
895
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
896
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
897
|
+
|
898
|
+
"organizations/#{organization}/locations/#{location}/simulations/#{simluation}"
|
899
|
+
end)
|
900
|
+
}
|
834
901
|
|
835
|
-
"
|
902
|
+
resource = resources[args.keys.sort.join(":")]
|
903
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
904
|
+
resource.call(**args)
|
836
905
|
end
|
837
906
|
|
838
907
|
##
|
@@ -948,20 +1017,46 @@ module Google
|
|
948
1017
|
##
|
949
1018
|
# Create a fully-qualified ValuedResource resource string.
|
950
1019
|
#
|
951
|
-
#
|
1020
|
+
# @overload valued_resource_path(organization:, simulation:, valued_resource:)
|
1021
|
+
# The resource will be in the following format:
|
952
1022
|
#
|
953
|
-
#
|
1023
|
+
# `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}`
|
954
1024
|
#
|
955
|
-
#
|
956
|
-
#
|
957
|
-
#
|
1025
|
+
# @param organization [String]
|
1026
|
+
# @param simulation [String]
|
1027
|
+
# @param valued_resource [String]
|
1028
|
+
#
|
1029
|
+
# @overload valued_resource_path(organization:, location:, simluation:, valued_resource:)
|
1030
|
+
# The resource will be in the following format:
|
1031
|
+
#
|
1032
|
+
# `organizations/{organization}/locations/{location}/simulations/{simluation}/valuedResources/{valued_resource}`
|
1033
|
+
#
|
1034
|
+
# @param organization [String]
|
1035
|
+
# @param location [String]
|
1036
|
+
# @param simluation [String]
|
1037
|
+
# @param valued_resource [String]
|
958
1038
|
#
|
959
1039
|
# @return [::String]
|
960
|
-
def valued_resource_path
|
961
|
-
|
962
|
-
|
1040
|
+
def valued_resource_path **args
|
1041
|
+
resources = {
|
1042
|
+
"organization:simulation:valued_resource" => (proc do |organization:, simulation:, valued_resource:|
|
1043
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
1044
|
+
raise ::ArgumentError, "simulation cannot contain /" if simulation.to_s.include? "/"
|
1045
|
+
|
1046
|
+
"organizations/#{organization}/simulations/#{simulation}/valuedResources/#{valued_resource}"
|
1047
|
+
end),
|
1048
|
+
"location:organization:simluation:valued_resource" => (proc do |organization:, location:, simluation:, valued_resource:|
|
1049
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
1050
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
1051
|
+
raise ::ArgumentError, "simluation cannot contain /" if simluation.to_s.include? "/"
|
963
1052
|
|
964
|
-
|
1053
|
+
"organizations/#{organization}/locations/#{location}/simulations/#{simluation}/valuedResources/#{valued_resource}"
|
1054
|
+
end)
|
1055
|
+
}
|
1056
|
+
|
1057
|
+
resource = resources[args.keys.sort.join(":")]
|
1058
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
1059
|
+
resource.call(**args)
|
965
1060
|
end
|
966
1061
|
|
967
1062
|
extend self
|
@@ -1933,14 +1933,6 @@ module Google
|
|
1933
1933
|
# Required. Expression that defines what assets fields to use for grouping.
|
1934
1934
|
# The string value should follow SQL syntax: comma separated list of fields.
|
1935
1935
|
# For example: "parent,resource_name".
|
1936
|
-
#
|
1937
|
-
# The following fields are supported:
|
1938
|
-
#
|
1939
|
-
# * resource_name
|
1940
|
-
# * category
|
1941
|
-
# * state
|
1942
|
-
# * parent
|
1943
|
-
# * severity
|
1944
1936
|
# @param page_token [::String]
|
1945
1937
|
# The value returned by the last `GroupFindingsResponse`; indicates
|
1946
1938
|
# that this is a continuation of a prior `GroupFindings` call, and
|
@@ -3731,6 +3723,10 @@ module Google
|
|
3731
3723
|
# @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
|
3732
3724
|
# The list of fields to be updated.
|
3733
3725
|
# If empty all mutable fields will be updated.
|
3726
|
+
#
|
3727
|
+
# To update nested fields, include the top level field in the mask
|
3728
|
+
# For example, to update gcp_metadata.resource_type, include the
|
3729
|
+
# "gcp_metadata" field mask
|
3734
3730
|
# @yield [result, operation] Access the result along with the TransportOperation object
|
3735
3731
|
# @yieldparam result [::Google::Cloud::SecurityCenter::V2::ResourceValueConfig]
|
3736
3732
|
# @yieldparam operation [::Gapic::Rest::TransportOperation]
|
@@ -1600,6 +1600,14 @@ module Google
|
|
1600
1600
|
["parent", %r{^organizations/[^/]+/?$}, false]
|
1601
1601
|
]
|
1602
1602
|
)
|
1603
|
+
.with_bindings(
|
1604
|
+
uri_method: :post,
|
1605
|
+
uri_template: "/v2/{parent}/resourceValueConfigs:batchCreate",
|
1606
|
+
body: "*",
|
1607
|
+
matches: [
|
1608
|
+
["parent", %r{^organizations/[^/]+/locations/[^/]+/?$}, false]
|
1609
|
+
]
|
1610
|
+
)
|
1603
1611
|
transcoder.transcode request_pb
|
1604
1612
|
end
|
1605
1613
|
|
@@ -1999,6 +2007,13 @@ module Google
|
|
1999
2007
|
["name", %r{^organizations/[^/]+/resourceValueConfigs/[^/]+/?$}, false]
|
2000
2008
|
]
|
2001
2009
|
)
|
2010
|
+
.with_bindings(
|
2011
|
+
uri_method: :delete,
|
2012
|
+
uri_template: "/v2/{name}",
|
2013
|
+
matches: [
|
2014
|
+
["name", %r{^organizations/[^/]+/locations/[^/]+/resourceValueConfigs/[^/]+/?$}, false]
|
2015
|
+
]
|
2016
|
+
)
|
2002
2017
|
transcoder.transcode request_pb
|
2003
2018
|
end
|
2004
2019
|
|
@@ -2055,6 +2070,13 @@ module Google
|
|
2055
2070
|
["name", %r{^organizations/[^/]+/simulations/[^/]+/?$}, false]
|
2056
2071
|
]
|
2057
2072
|
)
|
2073
|
+
.with_bindings(
|
2074
|
+
uri_method: :get,
|
2075
|
+
uri_template: "/v2/{name}",
|
2076
|
+
matches: [
|
2077
|
+
["name", %r{^organizations/[^/]+/locations/[^/]+/simulations/[^/]+/?$}, false]
|
2078
|
+
]
|
2079
|
+
)
|
2058
2080
|
transcoder.transcode request_pb
|
2059
2081
|
end
|
2060
2082
|
|
@@ -2076,6 +2098,13 @@ module Google
|
|
2076
2098
|
["name", %r{^organizations/[^/]+/simulations/[^/]+/valuedResources/[^/]+/?$}, false]
|
2077
2099
|
]
|
2078
2100
|
)
|
2101
|
+
.with_bindings(
|
2102
|
+
uri_method: :get,
|
2103
|
+
uri_template: "/v2/{name}",
|
2104
|
+
matches: [
|
2105
|
+
["name", %r{^organizations/[^/]+/locations/[^/]+/simulations/[^/]+/valuedResources/[^/]+/?$}, false]
|
2106
|
+
]
|
2107
|
+
)
|
2079
2108
|
transcoder.transcode request_pb
|
2080
2109
|
end
|
2081
2110
|
|
@@ -2210,6 +2239,13 @@ module Google
|
|
2210
2239
|
["name", %r{^organizations/[^/]+/resourceValueConfigs/[^/]+/?$}, false]
|
2211
2240
|
]
|
2212
2241
|
)
|
2242
|
+
.with_bindings(
|
2243
|
+
uri_method: :get,
|
2244
|
+
uri_template: "/v2/{name}",
|
2245
|
+
matches: [
|
2246
|
+
["name", %r{^organizations/[^/]+/locations/[^/]+/resourceValueConfigs/[^/]+/?$}, false]
|
2247
|
+
]
|
2248
|
+
)
|
2213
2249
|
transcoder.transcode request_pb
|
2214
2250
|
end
|
2215
2251
|
|
@@ -2321,6 +2357,13 @@ module Google
|
|
2321
2357
|
["parent", %r{^organizations/[^/]+/simulations/[^/]+/valuedResources/[^/]+/?$}, false]
|
2322
2358
|
]
|
2323
2359
|
)
|
2360
|
+
.with_bindings(
|
2361
|
+
uri_method: :get,
|
2362
|
+
uri_template: "/v2/{parent}/attackPaths",
|
2363
|
+
matches: [
|
2364
|
+
["parent", %r{^organizations/[^/]+/locations/[^/]+/simulations/[^/]+/valuedResources/[^/]+/?$}, false]
|
2365
|
+
]
|
2366
|
+
)
|
2324
2367
|
.with_bindings(
|
2325
2368
|
uri_method: :get,
|
2326
2369
|
uri_template: "/v2/{parent}/attackPaths",
|
@@ -2328,6 +2371,13 @@ module Google
|
|
2328
2371
|
["parent", %r{^organizations/[^/]+/simulations/[^/]+/attackExposureResults/[^/]+/?$}, false]
|
2329
2372
|
]
|
2330
2373
|
)
|
2374
|
+
.with_bindings(
|
2375
|
+
uri_method: :get,
|
2376
|
+
uri_template: "/v2/{parent}/attackPaths",
|
2377
|
+
matches: [
|
2378
|
+
["parent", %r{^organizations/[^/]+/locations/[^/]+/simulations/[^/]+/attackExposureResults/[^/]+/?$}, false]
|
2379
|
+
]
|
2380
|
+
)
|
2331
2381
|
transcoder.transcode request_pb
|
2332
2382
|
end
|
2333
2383
|
|
@@ -2531,6 +2581,13 @@ module Google
|
|
2531
2581
|
["parent", %r{^organizations/[^/]+/?$}, false]
|
2532
2582
|
]
|
2533
2583
|
)
|
2584
|
+
.with_bindings(
|
2585
|
+
uri_method: :get,
|
2586
|
+
uri_template: "/v2/{parent}/resourceValueConfigs",
|
2587
|
+
matches: [
|
2588
|
+
["parent", %r{^organizations/[^/]+/locations/[^/]+/?$}, false]
|
2589
|
+
]
|
2590
|
+
)
|
2534
2591
|
transcoder.transcode request_pb
|
2535
2592
|
end
|
2536
2593
|
|
@@ -3046,6 +3103,14 @@ module Google
|
|
3046
3103
|
["resource_value_config.name", %r{^organizations/[^/]+/resourceValueConfigs/[^/]+/?$}, false]
|
3047
3104
|
]
|
3048
3105
|
)
|
3106
|
+
.with_bindings(
|
3107
|
+
uri_method: :patch,
|
3108
|
+
uri_template: "/v2/{resource_value_config.name}",
|
3109
|
+
body: "resource_value_config",
|
3110
|
+
matches: [
|
3111
|
+
["resource_value_config.name", %r{^organizations/[^/]+/locations/[^/]+/resourceValueConfigs/[^/]+/?$}, false]
|
3112
|
+
]
|
3113
|
+
)
|
3049
3114
|
transcoder.transcode request_pb
|
3050
3115
|
end
|
3051
3116
|
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
7
7
|
require 'google/api/resource_pb'
|
8
8
|
|
9
9
|
|
10
|
-
descriptor_data = "\n0google/cloud/securitycenter/v2/attack_path.proto\x12\x1egoogle.cloud.securitycenter.v2\x1a\x19google/api/resource.proto\"\
|
10
|
+
descriptor_data = "\n0google/cloud/securitycenter/v2/attack_path.proto\x12\x1egoogle.cloud.securitycenter.v2\x1a\x19google/api/resource.proto\"\xf0\n\n\nAttackPath\x12\x0c\n\x04name\x18\x01 \x01(\t\x12M\n\npath_nodes\x18\x02 \x03(\x0b\x32\x39.google.cloud.securitycenter.v2.AttackPath.AttackPathNode\x12H\n\x05\x65\x64ges\x18\x03 \x03(\x0b\x32\x39.google.cloud.securitycenter.v2.AttackPath.AttackPathEdge\x1a\xbd\x06\n\x0e\x41ttackPathNode\x12\x10\n\x08resource\x18\x01 \x01(\t\x12\x15\n\rresource_type\x18\x02 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12p\n\x13\x61ssociated_findings\x18\x04 \x03(\x0b\x32S.google.cloud.securitycenter.v2.AttackPath.AttackPathNode.PathNodeAssociatedFinding\x12\x0c\n\x04uuid\x18\x05 \x01(\t\x12^\n\x0c\x61ttack_steps\x18\x06 \x03(\x0b\x32H.google.cloud.securitycenter.v2.AttackPath.AttackPathNode.AttackStepNode\x1a^\n\x19PathNodeAssociatedFinding\x12\x19\n\x11\x63\x61nonical_finding\x18\x01 \x01(\t\x12\x18\n\x10\x66inding_category\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x1a\xb0\x02\n\x0e\x41ttackStepNode\x12\x0c\n\x04uuid\x18\x01 \x01(\t\x12P\n\x04type\x18\x02 \x01(\x0e\x32\x42.google.cloud.securitycenter.v2.AttackPath.AttackPathNode.NodeType\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\x64\n\x06labels\x18\x04 \x03(\x0b\x32T.google.cloud.securitycenter.v2.AttackPath.AttackPathNode.AttackStepNode.LabelsEntry\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"y\n\x08NodeType\x12\x19\n\x15NODE_TYPE_UNSPECIFIED\x10\x00\x12\x11\n\rNODE_TYPE_AND\x10\x01\x12\x10\n\x0cNODE_TYPE_OR\x10\x02\x12\x15\n\x11NODE_TYPE_DEFENSE\x10\x03\x12\x16\n\x12NODE_TYPE_ATTACKER\x10\x04\x1a\x35\n\x0e\x41ttackPathEdge\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65stination\x18\x02 \x01(\t:\xc3\x02\xea\x41\xbf\x02\n(securitycenter.googleapis.com/AttackPath\x12qorganizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}/attackPaths/{attack_path}\x12\x86\x01organizations/{organization}/locations/{location}/simulations/{simulation}/valuedResources/{valued_resource}/attackPaths/{attack_path}*\x0b\x61ttackPaths2\nattackPathB\xe9\x01\n\"com.google.cloud.securitycenter.v2B\x0f\x41ttackPathProtoP\x01ZJcloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb\xaa\x02\x1eGoogle.Cloud.SecurityCenter.V2\xca\x02\x1eGoogle\\Cloud\\SecurityCenter\\V2\xea\x02!Google::Cloud::SecurityCenter::V2b\x06proto3"
|
11
11
|
|
12
12
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
13
13
|
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: google/cloud/securitycenter/v2/cloud_armor.proto
|
4
|
+
|
5
|
+
require 'google/protobuf'
|
6
|
+
|
7
|
+
require 'google/protobuf/duration_pb'
|
8
|
+
|
9
|
+
|
10
|
+
descriptor_data = "\n0google/cloud/securitycenter/v2/cloud_armor.proto\x12\x1egoogle.cloud.securitycenter.v2\x1a\x1egoogle/protobuf/duration.proto\"\xde\x02\n\nCloudArmor\x12G\n\x0fsecurity_policy\x18\x01 \x01(\x0b\x32..google.cloud.securitycenter.v2.SecurityPolicy\x12:\n\x08requests\x18\x02 \x01(\x0b\x32(.google.cloud.securitycenter.v2.Requests\x12O\n\x13\x61\x64\x61ptive_protection\x18\x03 \x01(\x0b\x32\x32.google.cloud.securitycenter.v2.AdaptiveProtection\x12\x36\n\x06\x61ttack\x18\x04 \x01(\x0b\x32&.google.cloud.securitycenter.v2.Attack\x12\x15\n\rthreat_vector\x18\x05 \x01(\t\x12+\n\x08\x64uration\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\"=\n\x0eSecurityPolicy\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0f\n\x07preview\x18\x03 \x01(\x08\"j\n\x08Requests\x12\r\n\x05ratio\x18\x01 \x01(\x01\x12\x1a\n\x12short_term_allowed\x18\x02 \x01(\x05\x12\x19\n\x11long_term_allowed\x18\x03 \x01(\x05\x12\x18\n\x10long_term_denied\x18\x04 \x01(\x05\"(\n\x12\x41\x64\x61ptiveProtection\x12\x12\n\nconfidence\x18\x01 \x01(\x01\"H\n\x06\x41ttack\x12\x12\n\nvolume_pps\x18\x01 \x01(\x05\x12\x12\n\nvolume_bps\x18\x02 \x01(\x05\x12\x16\n\x0e\x63lassification\x18\x03 \x01(\tB\xe9\x01\n\"com.google.cloud.securitycenter.v2B\x0f\x43loudArmorProtoP\x01ZJcloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb\xaa\x02\x1eGoogle.Cloud.SecurityCenter.V2\xca\x02\x1eGoogle\\Cloud\\SecurityCenter\\V2\xea\x02!Google::Cloud::SecurityCenter::V2b\x06proto3"
|
11
|
+
|
12
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
13
|
+
|
14
|
+
begin
|
15
|
+
pool.add_serialized_file(descriptor_data)
|
16
|
+
rescue TypeError
|
17
|
+
# Compatibility code: will be removed in the next major version.
|
18
|
+
require 'google/protobuf/descriptor_pb'
|
19
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
20
|
+
parsed.clear_dependency
|
21
|
+
serialized = parsed.class.encode(parsed)
|
22
|
+
file = pool.add_serialized_file(serialized)
|
23
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
24
|
+
imports = [
|
25
|
+
["google.protobuf.Duration", "google/protobuf/duration.proto"],
|
26
|
+
]
|
27
|
+
imports.each do |type_name, expected_filename|
|
28
|
+
import_file = pool.lookup(type_name).file_descriptor
|
29
|
+
if import_file.name != expected_filename
|
30
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
34
|
+
warn "This will become an error in the next major version."
|
35
|
+
end
|
36
|
+
|
37
|
+
module Google
|
38
|
+
module Cloud
|
39
|
+
module SecurityCenter
|
40
|
+
module V2
|
41
|
+
CloudArmor = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.CloudArmor").msgclass
|
42
|
+
SecurityPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.SecurityPolicy").msgclass
|
43
|
+
Requests = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Requests").msgclass
|
44
|
+
AdaptiveProtection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.AdaptiveProtection").msgclass
|
45
|
+
Attack = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Attack").msgclass
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -10,6 +10,7 @@ require 'google/cloud/securitycenter/v2/access_pb'
|
|
10
10
|
require 'google/cloud/securitycenter/v2/application_pb'
|
11
11
|
require 'google/cloud/securitycenter/v2/attack_exposure_pb'
|
12
12
|
require 'google/cloud/securitycenter/v2/backup_disaster_recovery_pb'
|
13
|
+
require 'google/cloud/securitycenter/v2/cloud_armor_pb'
|
13
14
|
require 'google/cloud/securitycenter/v2/cloud_dlp_data_profile_pb'
|
14
15
|
require 'google/cloud/securitycenter/v2/cloud_dlp_inspection_pb'
|
15
16
|
require 'google/cloud/securitycenter/v2/compliance_pb'
|
@@ -28,6 +29,7 @@ require 'google/cloud/securitycenter/v2/kubernetes_pb'
|
|
28
29
|
require 'google/cloud/securitycenter/v2/load_balancer_pb'
|
29
30
|
require 'google/cloud/securitycenter/v2/log_entry_pb'
|
30
31
|
require 'google/cloud/securitycenter/v2/mitre_attack_pb'
|
32
|
+
require 'google/cloud/securitycenter/v2/notebook_pb'
|
31
33
|
require 'google/cloud/securitycenter/v2/org_policy_pb'
|
32
34
|
require 'google/cloud/securitycenter/v2/process_pb'
|
33
35
|
require 'google/cloud/securitycenter/v2/security_marks_pb'
|
@@ -38,7 +40,7 @@ require 'google/protobuf/struct_pb'
|
|
38
40
|
require 'google/protobuf/timestamp_pb'
|
39
41
|
|
40
42
|
|
41
|
-
descriptor_data = "\n,google/cloud/securitycenter/v2/finding.proto\x12\x1egoogle.cloud.securitycenter.v2\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a+google/cloud/securitycenter/v2/access.proto\x1a\x30google/cloud/securitycenter/v2/application.proto\x1a\x34google/cloud/securitycenter/v2/attack_exposure.proto\x1a=google/cloud/securitycenter/v2/backup_disaster_recovery.proto\x1a;google/cloud/securitycenter/v2/cloud_dlp_data_profile.proto\x1a\x39google/cloud/securitycenter/v2/cloud_dlp_inspection.proto\x1a/google/cloud/securitycenter/v2/compliance.proto\x1a/google/cloud/securitycenter/v2/connection.proto\x1a\x34google/cloud/securitycenter/v2/contact_details.proto\x1a.google/cloud/securitycenter/v2/container.proto\x1a-google/cloud/securitycenter/v2/database.proto\x1a\x31google/cloud/securitycenter/v2/exfiltration.proto\x1a\x34google/cloud/securitycenter/v2/external_system.proto\x1a)google/cloud/securitycenter/v2/file.proto\x1a\x35google/cloud/securitycenter/v2/group_membership.proto\x1a\x30google/cloud/securitycenter/v2/iam_binding.proto\x1a.google/cloud/securitycenter/v2/indicator.proto\x1a\x33google/cloud/securitycenter/v2/kernel_rootkit.proto\x1a/google/cloud/securitycenter/v2/kubernetes.proto\x1a\x32google/cloud/securitycenter/v2/load_balancer.proto\x1a.google/cloud/securitycenter/v2/log_entry.proto\x1a\x31google/cloud/securitycenter/v2/mitre_attack.proto\x1a/google/cloud/securitycenter/v2/org_policy.proto\x1a,google/cloud/securitycenter/v2/process.proto\x1a\x33google/cloud/securitycenter/v2/security_marks.proto\x1a\x35google/cloud/securitycenter/v2/security_posture.proto\x1a\x36google/cloud/securitycenter/v2/toxic_combination.proto\x1a\x32google/cloud/securitycenter/v2/vulnerability.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\
|
43
|
+
descriptor_data = "\n,google/cloud/securitycenter/v2/finding.proto\x12\x1egoogle.cloud.securitycenter.v2\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a+google/cloud/securitycenter/v2/access.proto\x1a\x30google/cloud/securitycenter/v2/application.proto\x1a\x34google/cloud/securitycenter/v2/attack_exposure.proto\x1a=google/cloud/securitycenter/v2/backup_disaster_recovery.proto\x1a\x30google/cloud/securitycenter/v2/cloud_armor.proto\x1a;google/cloud/securitycenter/v2/cloud_dlp_data_profile.proto\x1a\x39google/cloud/securitycenter/v2/cloud_dlp_inspection.proto\x1a/google/cloud/securitycenter/v2/compliance.proto\x1a/google/cloud/securitycenter/v2/connection.proto\x1a\x34google/cloud/securitycenter/v2/contact_details.proto\x1a.google/cloud/securitycenter/v2/container.proto\x1a-google/cloud/securitycenter/v2/database.proto\x1a\x31google/cloud/securitycenter/v2/exfiltration.proto\x1a\x34google/cloud/securitycenter/v2/external_system.proto\x1a)google/cloud/securitycenter/v2/file.proto\x1a\x35google/cloud/securitycenter/v2/group_membership.proto\x1a\x30google/cloud/securitycenter/v2/iam_binding.proto\x1a.google/cloud/securitycenter/v2/indicator.proto\x1a\x33google/cloud/securitycenter/v2/kernel_rootkit.proto\x1a/google/cloud/securitycenter/v2/kubernetes.proto\x1a\x32google/cloud/securitycenter/v2/load_balancer.proto\x1a.google/cloud/securitycenter/v2/log_entry.proto\x1a\x31google/cloud/securitycenter/v2/mitre_attack.proto\x1a-google/cloud/securitycenter/v2/notebook.proto\x1a/google/cloud/securitycenter/v2/org_policy.proto\x1a,google/cloud/securitycenter/v2/process.proto\x1a\x33google/cloud/securitycenter/v2/security_marks.proto\x1a\x35google/cloud/securitycenter/v2/security_posture.proto\x1a\x36google/cloud/securitycenter/v2/toxic_combination.proto\x1a\x32google/cloud/securitycenter/v2/vulnerability.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xb3\x1f\n\x07\x46inding\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1b\n\x0e\x63\x61nonical_name\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12\x0e\n\x06parent\x18\x03 \x01(\t\x12\x1a\n\rresource_name\x18\x04 \x01(\tB\x03\xe0\x41\x05\x12\x41\n\x05state\x18\x06 \x01(\x0e\x32-.google.cloud.securitycenter.v2.Finding.StateB\x03\xe0\x41\x03\x12\x15\n\x08\x63\x61tegory\x18\x07 \x01(\tB\x03\xe0\x41\x05\x12\x14\n\x0c\x65xternal_uri\x18\x08 \x01(\t\x12X\n\x11source_properties\x18\t \x03(\x0b\x32=.google.cloud.securitycenter.v2.Finding.SourcePropertiesEntry\x12J\n\x0esecurity_marks\x18\n \x01(\x0b\x32-.google.cloud.securitycenter.v2.SecurityMarksB\x03\xe0\x41\x03\x12.\n\nevent_time\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x34\n\x0b\x63reate_time\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x42\n\x08severity\x18\x0e \x01(\x0e\x32\x30.google.cloud.securitycenter.v2.Finding.Severity\x12:\n\x04mute\x18\x0f \x01(\x0e\x32,.google.cloud.securitycenter.v2.Finding.Mute\x12K\n\rfinding_class\x18\x10 \x01(\x0e\x32\x34.google.cloud.securitycenter.v2.Finding.FindingClass\x12<\n\tindicator\x18\x11 \x01(\x0b\x32).google.cloud.securitycenter.v2.Indicator\x12\x44\n\rvulnerability\x18\x12 \x01(\x0b\x32-.google.cloud.securitycenter.v2.Vulnerability\x12\x39\n\x10mute_update_time\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12[\n\x10\x65xternal_systems\x18\x14 \x03(\x0b\x32<.google.cloud.securitycenter.v2.Finding.ExternalSystemsEntryB\x03\xe0\x41\x03\x12\x41\n\x0cmitre_attack\x18\x15 \x01(\x0b\x32+.google.cloud.securitycenter.v2.MitreAttack\x12\x36\n\x06\x61\x63\x63\x65ss\x18\x16 \x01(\x0b\x32&.google.cloud.securitycenter.v2.Access\x12?\n\x0b\x63onnections\x18\x17 \x03(\x0b\x32*.google.cloud.securitycenter.v2.Connection\x12\x16\n\x0emute_initiator\x18\x18 \x01(\t\x12:\n\tprocesses\x18\x19 \x03(\x0b\x32\'.google.cloud.securitycenter.v2.Process\x12L\n\x08\x63ontacts\x18\x1a \x03(\x0b\x32\x35.google.cloud.securitycenter.v2.Finding.ContactsEntryB\x03\xe0\x41\x03\x12?\n\x0b\x63ompliances\x18\x1b \x03(\x0b\x32*.google.cloud.securitycenter.v2.Compliance\x12 \n\x13parent_display_name\x18\x1d \x01(\tB\x03\xe0\x41\x03\x12\x13\n\x0b\x64\x65scription\x18\x1e \x01(\t\x12\x42\n\x0c\x65xfiltration\x18\x1f \x01(\x0b\x32,.google.cloud.securitycenter.v2.Exfiltration\x12@\n\x0ciam_bindings\x18 \x03(\x0b\x32*.google.cloud.securitycenter.v2.IamBinding\x12\x12\n\nnext_steps\x18! \x01(\t\x12\x13\n\x0bmodule_name\x18\" \x01(\t\x12=\n\ncontainers\x18# \x03(\x0b\x32).google.cloud.securitycenter.v2.Container\x12>\n\nkubernetes\x18$ \x01(\x0b\x32*.google.cloud.securitycenter.v2.Kubernetes\x12:\n\x08\x64\x61tabase\x18% \x01(\x0b\x32(.google.cloud.securitycenter.v2.Database\x12G\n\x0f\x61ttack_exposure\x18& \x01(\x0b\x32..google.cloud.securitycenter.v2.AttackExposure\x12\x33\n\x05\x66iles\x18\' \x03(\x0b\x32$.google.cloud.securitycenter.v2.File\x12P\n\x14\x63loud_dlp_inspection\x18( \x01(\x0b\x32\x32.google.cloud.securitycenter.v2.CloudDlpInspection\x12S\n\x16\x63loud_dlp_data_profile\x18) \x01(\x0b\x32\x33.google.cloud.securitycenter.v2.CloudDlpDataProfile\x12\x45\n\x0ekernel_rootkit\x18* \x01(\x0b\x32-.google.cloud.securitycenter.v2.KernelRootkit\x12?\n\x0corg_policies\x18+ \x03(\x0b\x32).google.cloud.securitycenter.v2.OrgPolicy\x12@\n\x0b\x61pplication\x18- \x01(\x0b\x32+.google.cloud.securitycenter.v2.Application\x12X\n\x18\x62\x61\x63kup_disaster_recovery\x18/ \x01(\x0b\x32\x36.google.cloud.securitycenter.v2.BackupDisasterRecovery\x12I\n\x10security_posture\x18\x30 \x01(\x0b\x32/.google.cloud.securitycenter.v2.SecurityPosture\x12=\n\x0blog_entries\x18\x31 \x03(\x0b\x32(.google.cloud.securitycenter.v2.LogEntry\x12\x44\n\x0eload_balancers\x18\x32 \x03(\x0b\x32,.google.cloud.securitycenter.v2.LoadBalancer\x12?\n\x0b\x63loud_armor\x18\x33 \x01(\x0b\x32*.google.cloud.securitycenter.v2.CloudArmor\x12:\n\x08notebook\x18\x37 \x01(\x0b\x32(.google.cloud.securitycenter.v2.Notebook\x12K\n\x11toxic_combination\x18\x38 \x01(\x0b\x32\x30.google.cloud.securitycenter.v2.ToxicCombination\x12J\n\x11group_memberships\x18\x39 \x03(\x0b\x32/.google.cloud.securitycenter.v2.GroupMembership\x1aO\n\x15SourcePropertiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\x1a\x66\n\x14\x45xternalSystemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.securitycenter.v2.ExternalSystem:\x02\x38\x01\x1a_\n\rContactsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.securitycenter.v2.ContactDetails:\x02\x38\x01\"8\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0c\n\x08INACTIVE\x10\x02\"Q\n\x08Severity\x12\x18\n\x14SEVERITY_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43RITICAL\x10\x01\x12\x08\n\x04HIGH\x10\x02\x12\n\n\x06MEDIUM\x10\x03\x12\x07\n\x03LOW\x10\x04\"C\n\x04Mute\x12\x14\n\x10MUTE_UNSPECIFIED\x10\x00\x12\t\n\x05MUTED\x10\x01\x12\x0b\n\x07UNMUTED\x10\x02\x12\r\n\tUNDEFINED\x10\x03\"\xb0\x01\n\x0c\x46indingClass\x12\x1d\n\x19\x46INDING_CLASS_UNSPECIFIED\x10\x00\x12\n\n\x06THREAT\x10\x01\x12\x11\n\rVULNERABILITY\x10\x02\x12\x14\n\x10MISCONFIGURATION\x10\x03\x12\x0f\n\x0bOBSERVATION\x10\x04\x12\r\n\tSCC_ERROR\x10\x05\x12\x15\n\x11POSTURE_VIOLATION\x10\x06\x12\x15\n\x11TOXIC_COMBINATION\x10\x07:\xdd\x03\xea\x41\xd9\x03\n%securitycenter.googleapis.com/Finding\x12@organizations/{organization}/sources/{source}/findings/{finding}\x12Uorganizations/{organization}/sources/{source}/locations/{location}/findings/{finding}\x12\x34\x66olders/{folder}/sources/{source}/findings/{finding}\x12Ifolders/{folder}/sources/{source}/locations/{location}/findings/{finding}\x12\x36projects/{project}/sources/{source}/findings/{finding}\x12Kprojects/{project}/sources/{source}/locations/{location}/findings/{finding}*\x08\x66indings2\x07\x66indingB\xe6\x01\n\"com.google.cloud.securitycenter.v2B\x0c\x46indingProtoP\x01ZJcloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb\xaa\x02\x1eGoogle.Cloud.SecurityCenter.V2\xca\x02\x1eGoogle\\Cloud\\SecurityCenter\\V2\xea\x02!Google::Cloud::SecurityCenter::V2b\x06proto3"
|
42
44
|
|
43
45
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
44
46
|
|
@@ -78,6 +80,8 @@ rescue TypeError
|
|
78
80
|
["google.cloud.securitycenter.v2.SecurityPosture", "google/cloud/securitycenter/v2/security_posture.proto"],
|
79
81
|
["google.cloud.securitycenter.v2.LogEntry", "google/cloud/securitycenter/v2/log_entry.proto"],
|
80
82
|
["google.cloud.securitycenter.v2.LoadBalancer", "google/cloud/securitycenter/v2/load_balancer.proto"],
|
83
|
+
["google.cloud.securitycenter.v2.CloudArmor", "google/cloud/securitycenter/v2/cloud_armor.proto"],
|
84
|
+
["google.cloud.securitycenter.v2.Notebook", "google/cloud/securitycenter/v2/notebook.proto"],
|
81
85
|
["google.cloud.securitycenter.v2.ToxicCombination", "google/cloud/securitycenter/v2/toxic_combination.proto"],
|
82
86
|
["google.cloud.securitycenter.v2.GroupMembership", "google/cloud/securitycenter/v2/group_membership.proto"],
|
83
87
|
["google.protobuf.Value", "google/protobuf/struct.proto"],
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: google/cloud/securitycenter/v2/folder.proto
|
4
|
+
|
5
|
+
require 'google/protobuf'
|
6
|
+
|
7
|
+
|
8
|
+
descriptor_data = "\n+google/cloud/securitycenter/v2/folder.proto\x12\x1egoogle.cloud.securitycenter.v2\"G\n\x06\x46older\x12\x17\n\x0fresource_folder\x18\x01 \x01(\t\x12$\n\x1cresource_folder_display_name\x18\x02 \x01(\tB\xe5\x01\n\"com.google.cloud.securitycenter.v2B\x0b\x46olderProtoP\x01ZJcloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb\xaa\x02\x1eGoogle.Cloud.SecurityCenter.V2\xca\x02\x1eGoogle\\Cloud\\SecurityCenter\\V2\xea\x02!Google::Cloud::SecurityCenter::V2b\x06proto3"
|
9
|
+
|
10
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
11
|
+
|
12
|
+
begin
|
13
|
+
pool.add_serialized_file(descriptor_data)
|
14
|
+
rescue TypeError
|
15
|
+
# Compatibility code: will be removed in the next major version.
|
16
|
+
require 'google/protobuf/descriptor_pb'
|
17
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
18
|
+
parsed.clear_dependency
|
19
|
+
serialized = parsed.class.encode(parsed)
|
20
|
+
file = pool.add_serialized_file(serialized)
|
21
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
22
|
+
imports = [
|
23
|
+
]
|
24
|
+
imports.each do |type_name, expected_filename|
|
25
|
+
import_file = pool.lookup(type_name).file_descriptor
|
26
|
+
if import_file.name != expected_filename
|
27
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
28
|
+
end
|
29
|
+
end
|
30
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
31
|
+
warn "This will become an error in the next major version."
|
32
|
+
end
|
33
|
+
|
34
|
+
module Google
|
35
|
+
module Cloud
|
36
|
+
module SecurityCenter
|
37
|
+
module V2
|
38
|
+
Folder = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.securitycenter.v2.Folder").msgclass
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -5,7 +5,7 @@
|
|
5
5
|
require 'google/protobuf'
|
6
6
|
|
7
7
|
|
8
|
-
descriptor_data = "\n1google/cloud/securitycenter/v2/mitre_attack.proto\x12\x1egoogle.cloud.securitycenter.v2\"\
|
8
|
+
descriptor_data = "\n1google/cloud/securitycenter/v2/mitre_attack.proto\x12\x1egoogle.cloud.securitycenter.v2\"\xec\x12\n\x0bMitreAttack\x12J\n\x0eprimary_tactic\x18\x01 \x01(\x0e\x32\x32.google.cloud.securitycenter.v2.MitreAttack.Tactic\x12Q\n\x12primary_techniques\x18\x02 \x03(\x0e\x32\x35.google.cloud.securitycenter.v2.MitreAttack.Technique\x12N\n\x12\x61\x64\x64itional_tactics\x18\x03 \x03(\x0e\x32\x32.google.cloud.securitycenter.v2.MitreAttack.Tactic\x12T\n\x15\x61\x64\x64itional_techniques\x18\x04 \x03(\x0e\x32\x35.google.cloud.securitycenter.v2.MitreAttack.Technique\x12\x0f\n\x07version\x18\x05 \x01(\t\"\xb4\x02\n\x06Tactic\x12\x16\n\x12TACTIC_UNSPECIFIED\x10\x00\x12\x12\n\x0eRECONNAISSANCE\x10\x01\x12\x18\n\x14RESOURCE_DEVELOPMENT\x10\x02\x12\x12\n\x0eINITIAL_ACCESS\x10\x05\x12\r\n\tEXECUTION\x10\x03\x12\x0f\n\x0bPERSISTENCE\x10\x06\x12\x18\n\x14PRIVILEGE_ESCALATION\x10\x08\x12\x13\n\x0f\x44\x45\x46\x45NSE_EVASION\x10\x07\x12\x15\n\x11\x43REDENTIAL_ACCESS\x10\t\x12\r\n\tDISCOVERY\x10\n\x12\x14\n\x10LATERAL_MOVEMENT\x10\x0b\x12\x0e\n\nCOLLECTION\x10\x0c\x12\x17\n\x13\x43OMMAND_AND_CONTROL\x10\x04\x12\x10\n\x0c\x45XFILTRATION\x10\r\x12\n\n\x06IMPACT\x10\x0e\"\xcf\r\n\tTechnique\x12\x19\n\x15TECHNIQUE_UNSPECIFIED\x10\x00\x12\x10\n\x0cMASQUERADING\x10\x31\x12%\n!MATCH_LEGITIMATE_NAME_OR_LOCATION\x10\x32\x12(\n$BOOT_OR_LOGON_INITIALIZATION_SCRIPTS\x10%\x12\x11\n\rSTARTUP_ITEMS\x10&\x12\x1d\n\x19NETWORK_SERVICE_DISCOVERY\x10 \x12\x15\n\x11PROCESS_DISCOVERY\x10\x38\x12%\n!COMMAND_AND_SCRIPTING_INTERPRETER\x10\x06\x12\x0e\n\nUNIX_SHELL\x10\x07\x12\n\n\x06PYTHON\x10;\x12\x1f\n\x1bPERMISSION_GROUPS_DISCOVERY\x10\x12\x12\x10\n\x0c\x43LOUD_GROUPS\x10\x13\x12\x1e\n\x1a\x41PPLICATION_LAYER_PROTOCOL\x10-\x12\x07\n\x03\x44NS\x10.\x12\x1d\n\x19SOFTWARE_DEPLOYMENT_TOOLS\x10/\x12\x12\n\x0eVALID_ACCOUNTS\x10\x0e\x12\x14\n\x10\x44\x45\x46\x41ULT_ACCOUNTS\x10#\x12\x12\n\x0eLOCAL_ACCOUNTS\x10\x0f\x12\x12\n\x0e\x43LOUD_ACCOUNTS\x10\x10\x12\t\n\x05PROXY\x10\t\x12\x12\n\x0e\x45XTERNAL_PROXY\x10\n\x12\x13\n\x0fMULTI_HOP_PROXY\x10\x0b\x12\x18\n\x14\x41\x43\x43OUNT_MANIPULATION\x10\x16\x12 \n\x1c\x41\x44\x44ITIONAL_CLOUD_CREDENTIALS\x10(\x12\x17\n\x13SSH_AUTHORIZED_KEYS\x10\x17\x12&\n\"ADDITIONAL_CONTAINER_CLUSTER_ROLES\x10:\x12\x19\n\x15INGRESS_TOOL_TRANSFER\x10\x03\x12\x0e\n\nNATIVE_API\x10\x04\x12\x0f\n\x0b\x42RUTE_FORCE\x10,\x12\x12\n\x0eSHARED_MODULES\x10\x05\x12\x1d\n\x19\x41\x43\x43\x45SS_TOKEN_MANIPULATION\x10!\x12 \n\x1cTOKEN_IMPERSONATION_OR_THEFT\x10\'\x12%\n!EXPLOIT_PUBLIC_FACING_APPLICATION\x10\x1b\x12\x1e\n\x1a\x44OMAIN_POLICY_MODIFICATION\x10\x1e\x12\x14\n\x10\x44\x41TA_DESTRUCTION\x10\x1d\x12\x10\n\x0cSERVICE_STOP\x10\x34\x12\x1b\n\x17INHIBIT_SYSTEM_RECOVERY\x10$\x12\x16\n\x12RESOURCE_HIJACKING\x10\x08\x12\x1d\n\x19NETWORK_DENIAL_OF_SERVICE\x10\x11\x12\x1b\n\x17\x43LOUD_SERVICE_DISCOVERY\x10\x30\x12\"\n\x1eSTEAL_APPLICATION_ACCESS_TOKEN\x10*\x12\x1a\n\x16\x41\x43\x43OUNT_ACCESS_REMOVAL\x10\x33\x12\x1c\n\x18STEAL_WEB_SESSION_COOKIE\x10\x19\x12#\n\x1f\x43REATE_OR_MODIFY_SYSTEM_PROCESS\x10\x18\x12%\n!ABUSE_ELEVATION_CONTROL_MECHANISM\x10\"\x12\x19\n\x15UNSECURED_CREDENTIALS\x10\r\x12!\n\x1dMODIFY_AUTHENTICATION_PROCESS\x10\x1c\x12\x13\n\x0fIMPAIR_DEFENSES\x10\x1f\x12\x1b\n\x17\x44ISABLE_OR_MODIFY_TOOLS\x10\x37\x12!\n\x1d\x45XFILTRATION_OVER_WEB_SERVICE\x10\x14\x12!\n\x1d\x45XFILTRATION_TO_CLOUD_STORAGE\x10\x15\x12\x16\n\x12\x44YNAMIC_RESOLUTION\x10\x0c\x12\x19\n\x15LATERAL_TOOL_TRANSFER\x10)\x12\'\n#MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE\x10\x1a\x12\x13\n\x0f\x43REATE_SNAPSHOT\x10\x36\x12\"\n\x1e\x43LOUD_INFRASTRUCTURE_DISCOVERY\x10\x35\x12\x17\n\x13OBTAIN_CAPABILITIES\x10+\x12\x13\n\x0f\x41\x43TIVE_SCANNING\x10\x01\x12\x16\n\x12SCANNING_IP_BLOCKS\x10\x02\x12$\n CONTAINER_ADMINISTRATION_COMMAND\x10<\x12\x12\n\x0e\x45SCAPE_TO_HOST\x10=\x12$\n CONTAINER_AND_RESOURCE_DISCOVERY\x10\x39\x12.\n*STEAL_OR_FORGE_AUTHENTICATION_CERTIFICATES\x10>B\xea\x01\n\"com.google.cloud.securitycenter.v2B\x10MitreAttackProtoP\x01ZJcloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb\xaa\x02\x1eGoogle.Cloud.SecurityCenter.V2\xca\x02\x1eGoogle\\Cloud\\SecurityCenter\\V2\xea\x02!Google::Cloud::SecurityCenter::V2b\x06proto3"
|
9
9
|
|
10
10
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
11
11
|
|