google-cloud-security_center-v1 0.12.1 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/security_center/v1/security_center/client.rb +510 -3
  3. data/lib/google/cloud/security_center/v1/security_center/paths.rb +52 -0
  4. data/lib/google/cloud/security_center/v1/version.rb +1 -1
  5. data/lib/google/cloud/security_center/v1.rb +2 -0
  6. data/lib/google/cloud/securitycenter/v1/access_pb.rb +0 -1
  7. data/lib/google/cloud/securitycenter/v1/asset_pb.rb +0 -1
  8. data/lib/google/cloud/securitycenter/v1/bigquery_export_pb.rb +32 -0
  9. data/lib/google/cloud/securitycenter/v1/connection_pb.rb +35 -0
  10. data/lib/google/cloud/securitycenter/v1/external_system_pb.rb +0 -1
  11. data/lib/google/cloud/securitycenter/v1/finding_pb.rb +9 -1
  12. data/lib/google/cloud/securitycenter/v1/folder_pb.rb +0 -1
  13. data/lib/google/cloud/securitycenter/v1/iam_binding_pb.rb +30 -0
  14. data/lib/google/cloud/securitycenter/v1/indicator_pb.rb +0 -1
  15. data/lib/google/cloud/securitycenter/v1/mitre_attack_pb.rb +78 -0
  16. data/lib/google/cloud/securitycenter/v1/mute_config_pb.rb +0 -1
  17. data/lib/google/cloud/securitycenter/v1/notification_config_pb.rb +0 -1
  18. data/lib/google/cloud/securitycenter/v1/notification_message_pb.rb +0 -1
  19. data/lib/google/cloud/securitycenter/v1/organization_settings_pb.rb +0 -1
  20. data/lib/google/cloud/securitycenter/v1/resource_pb.rb +2 -3
  21. data/lib/google/cloud/securitycenter/v1/run_asset_discovery_response_pb.rb +0 -1
  22. data/lib/google/cloud/securitycenter/v1/security_marks_pb.rb +0 -1
  23. data/lib/google/cloud/securitycenter/v1/securitycenter_service_pb.rb +34 -3
  24. data/lib/google/cloud/securitycenter/v1/securitycenter_service_services_pb.rb +14 -0
  25. data/lib/google/cloud/securitycenter/v1/source_pb.rb +0 -1
  26. data/lib/google/cloud/securitycenter/v1/vulnerability_pb.rb +1 -1
  27. data/proto_docs/google/cloud/securitycenter/v1/bigquery_export.rb +92 -0
  28. data/proto_docs/google/cloud/securitycenter/v1/connection.rb +70 -0
  29. data/proto_docs/google/cloud/securitycenter/v1/external_system.rb +2 -1
  30. data/proto_docs/google/cloud/securitycenter/v1/finding.rb +21 -2
  31. data/proto_docs/google/cloud/securitycenter/v1/iam_binding.rb +56 -0
  32. data/proto_docs/google/cloud/securitycenter/v1/mitre_attack.rb +201 -0
  33. data/proto_docs/google/cloud/securitycenter/v1/resource.rb +7 -7
  34. data/proto_docs/google/cloud/securitycenter/v1/securitycenter_service.rb +102 -8
  35. data/proto_docs/google/cloud/securitycenter/v1/vulnerability.rb +3 -0
  36. data/proto_docs/google/iam/v1/iam_policy.rb +8 -1
  37. data/proto_docs/google/iam/v1/options.rb +14 -4
  38. data/proto_docs/google/iam/v1/policy.rb +208 -38
  39. metadata +14 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e24117360e90449681a0e6a6971df5ccc6e7bb4df9237c1fc219c5b65d7f287d
4
- data.tar.gz: b7456370268c1a0fe7565632baef80c86105fffb7ef6a812ed79b11ec6ceba78
3
+ metadata.gz: 2e076d4ef7cbe91cbc324dcaac83a995972beea85684c518ac3668a447df1c8a
4
+ data.tar.gz: d16d7825935dce6d4ec720d16331465f5d0d6e81e44a180402c9f6d4c58a0985
5
5
  SHA512:
6
- metadata.gz: 166ce6a7c082afd825e53c785db136ea34c8d239f2032ec07f7c0601c23382832a82d33e3c60e01c0a7d22baa28728809c929cd01e2c2c4c099617c3e1461324
7
- data.tar.gz: c01c8d120a795db95c068c5e0c130e72cde6a5929d8aefaef852019ea4d10395587cd53b61879e35b3585741796814757bade2fef48a084bb7f38aea69f59ab9
6
+ metadata.gz: 8d21ed604c50aea3a14d0a48228189c03757043ec36e16092875c327e9755dffcec94481bbc3cc257b3f9164538e643e4775d6ee73d7e0e072861a6dbed9213a
7
+ data.tar.gz: f5ab76e336bd03be585a10e49e479d2adc37d4c176c689b5547dcd6adfe12ecf4430d9d4e7043e03a2edfb8204ee45841394c43a92e7915218b8529da06c3dc6
@@ -902,6 +902,94 @@ module Google
902
902
  raise ::Google::Cloud::Error.from_error(e)
903
903
  end
904
904
 
905
+ ##
906
+ # Gets a big query export.
907
+ #
908
+ # @overload get_big_query_export(request, options = nil)
909
+ # Pass arguments to `get_big_query_export` via a request object, either of type
910
+ # {::Google::Cloud::SecurityCenter::V1::GetBigQueryExportRequest} or an equivalent Hash.
911
+ #
912
+ # @param request [::Google::Cloud::SecurityCenter::V1::GetBigQueryExportRequest, ::Hash]
913
+ # A request object representing the call parameters. Required. To specify no
914
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
915
+ # @param options [::Gapic::CallOptions, ::Hash]
916
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
917
+ #
918
+ # @overload get_big_query_export(name: nil)
919
+ # Pass arguments to `get_big_query_export` via keyword arguments. Note that at
920
+ # least one keyword argument is required. To specify no parameters, or to keep all
921
+ # the default parameter values, pass an empty Hash as a request object (see above).
922
+ #
923
+ # @param name [::String]
924
+ # Required. Name of the big query export to retrieve. Its format is
925
+ # organizations/\\{organization}/bigQueryExports/\\{export_id},
926
+ # folders/\\{folder}/bigQueryExports/\\{export_id}, or
927
+ # projects/\\{project}/bigQueryExports/\\{export_id}
928
+ #
929
+ # @yield [response, operation] Access the result along with the RPC operation
930
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::BigQueryExport]
931
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
932
+ #
933
+ # @return [::Google::Cloud::SecurityCenter::V1::BigQueryExport]
934
+ #
935
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
936
+ #
937
+ # @example Basic example
938
+ # require "google/cloud/security_center/v1"
939
+ #
940
+ # # Create a client object. The client can be reused for multiple calls.
941
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
942
+ #
943
+ # # Create a request. To set request fields, pass in keyword arguments.
944
+ # request = Google::Cloud::SecurityCenter::V1::GetBigQueryExportRequest.new
945
+ #
946
+ # # Call the get_big_query_export method.
947
+ # result = client.get_big_query_export request
948
+ #
949
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::BigQueryExport.
950
+ # p result
951
+ #
952
+ def get_big_query_export request, options = nil
953
+ raise ::ArgumentError, "request must be provided" if request.nil?
954
+
955
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::GetBigQueryExportRequest
956
+
957
+ # Converts hash and nil to an options object
958
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
959
+
960
+ # Customize the options with defaults
961
+ metadata = @config.rpcs.get_big_query_export.metadata.to_h
962
+
963
+ # Set x-goog-api-client and x-goog-user-project headers
964
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
965
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
966
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
967
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
968
+
969
+ header_params = {}
970
+ if request.name
971
+ header_params["name"] = request.name
972
+ end
973
+
974
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
975
+ metadata[:"x-goog-request-params"] ||= request_params_header
976
+
977
+ options.apply_defaults timeout: @config.rpcs.get_big_query_export.timeout,
978
+ metadata: metadata,
979
+ retry_policy: @config.rpcs.get_big_query_export.retry_policy
980
+
981
+ options.apply_defaults timeout: @config.timeout,
982
+ metadata: @config.metadata,
983
+ retry_policy: @config.retry_policy
984
+
985
+ @security_center_stub.call_rpc :get_big_query_export, request, options: options do |response, operation|
986
+ yield response, operation if block_given?
987
+ return response
988
+ end
989
+ rescue ::GRPC::BadStatus => e
990
+ raise ::Google::Cloud::Error.from_error(e)
991
+ end
992
+
905
993
  ##
906
994
  # Gets the access control policy on the specified Source.
907
995
  #
@@ -925,7 +1013,7 @@ module Google
925
1013
  # See the operation documentation for the appropriate value for this field.
926
1014
  # @param options [::Google::Iam::V1::GetPolicyOptions, ::Hash]
927
1015
  # OPTIONAL: A `GetPolicyOptions` object for specifying options to
928
- # `GetIamPolicy`. This field is only used by Cloud IAM.
1016
+ # `GetIamPolicy`.
929
1017
  #
930
1018
  # @yield [response, operation] Access the result along with the RPC operation
931
1019
  # @yieldparam response [::Google::Iam::V1::Policy]
@@ -2829,7 +2917,7 @@ module Google
2829
2917
  # @param options [::Gapic::CallOptions, ::Hash]
2830
2918
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2831
2919
  #
2832
- # @overload set_iam_policy(resource: nil, policy: nil)
2920
+ # @overload set_iam_policy(resource: nil, policy: nil, update_mask: nil)
2833
2921
  # Pass arguments to `set_iam_policy` via keyword arguments. Note that at
2834
2922
  # least one keyword argument is required. To specify no parameters, or to keep all
2835
2923
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -2842,6 +2930,12 @@ module Google
2842
2930
  # the policy is limited to a few 10s of KB. An empty policy is a
2843
2931
  # valid policy but certain Cloud Platform services (such as Projects)
2844
2932
  # might reject them.
2933
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
2934
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2935
+ # the fields in the mask will be modified. If no mask is provided, the
2936
+ # following default mask is used:
2937
+ #
2938
+ # `paths: "bindings, etag"`
2845
2939
  #
2846
2940
  # @yield [response, operation] Access the result along with the RPC operation
2847
2941
  # @yieldparam response [::Google::Iam::V1::Policy]
@@ -3572,7 +3666,7 @@ module Google
3572
3666
  # The time at which the updated SecurityMarks take effect.
3573
3667
  # If not set uses current server time. Updates will be applied to the
3574
3668
  # SecurityMarks that are active immediately preceding this time. Must be
3575
- # smaller or equal to the server time.
3669
+ # earlier or equal to the server time.
3576
3670
  #
3577
3671
  # @yield [response, operation] Access the result along with the RPC operation
3578
3672
  # @yieldparam response [::Google::Cloud::SecurityCenter::V1::SecurityMarks]
@@ -3638,6 +3732,384 @@ module Google
3638
3732
  raise ::Google::Cloud::Error.from_error(e)
3639
3733
  end
3640
3734
 
3735
+ ##
3736
+ # Creates a big query export.
3737
+ #
3738
+ # @overload create_big_query_export(request, options = nil)
3739
+ # Pass arguments to `create_big_query_export` via a request object, either of type
3740
+ # {::Google::Cloud::SecurityCenter::V1::CreateBigQueryExportRequest} or an equivalent Hash.
3741
+ #
3742
+ # @param request [::Google::Cloud::SecurityCenter::V1::CreateBigQueryExportRequest, ::Hash]
3743
+ # A request object representing the call parameters. Required. To specify no
3744
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
3745
+ # @param options [::Gapic::CallOptions, ::Hash]
3746
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
3747
+ #
3748
+ # @overload create_big_query_export(parent: nil, big_query_export: nil, big_query_export_id: nil)
3749
+ # Pass arguments to `create_big_query_export` via keyword arguments. Note that at
3750
+ # least one keyword argument is required. To specify no parameters, or to keep all
3751
+ # the default parameter values, pass an empty Hash as a request object (see above).
3752
+ #
3753
+ # @param parent [::String]
3754
+ # Required. Resource name of the new big query export's parent. Its format is
3755
+ # "organizations/[organization_id]", "folders/[folder_id]", or
3756
+ # "projects/[project_id]".
3757
+ # @param big_query_export [::Google::Cloud::SecurityCenter::V1::BigQueryExport, ::Hash]
3758
+ # Required. The big query export being created.
3759
+ # @param big_query_export_id [::String]
3760
+ # Required. Unique identifier provided by the client within the parent scope.
3761
+ # It must consist of lower case letters, numbers, and hyphen, with the first
3762
+ # character a letter, the last a letter or a number, and a 63 character
3763
+ # maximum.
3764
+ #
3765
+ # @yield [response, operation] Access the result along with the RPC operation
3766
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::BigQueryExport]
3767
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
3768
+ #
3769
+ # @return [::Google::Cloud::SecurityCenter::V1::BigQueryExport]
3770
+ #
3771
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
3772
+ #
3773
+ # @example Basic example
3774
+ # require "google/cloud/security_center/v1"
3775
+ #
3776
+ # # Create a client object. The client can be reused for multiple calls.
3777
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
3778
+ #
3779
+ # # Create a request. To set request fields, pass in keyword arguments.
3780
+ # request = Google::Cloud::SecurityCenter::V1::CreateBigQueryExportRequest.new
3781
+ #
3782
+ # # Call the create_big_query_export method.
3783
+ # result = client.create_big_query_export request
3784
+ #
3785
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::BigQueryExport.
3786
+ # p result
3787
+ #
3788
+ def create_big_query_export request, options = nil
3789
+ raise ::ArgumentError, "request must be provided" if request.nil?
3790
+
3791
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::CreateBigQueryExportRequest
3792
+
3793
+ # Converts hash and nil to an options object
3794
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
3795
+
3796
+ # Customize the options with defaults
3797
+ metadata = @config.rpcs.create_big_query_export.metadata.to_h
3798
+
3799
+ # Set x-goog-api-client and x-goog-user-project headers
3800
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
3801
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
3802
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
3803
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
3804
+
3805
+ header_params = {}
3806
+ if request.parent
3807
+ header_params["parent"] = request.parent
3808
+ end
3809
+
3810
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3811
+ metadata[:"x-goog-request-params"] ||= request_params_header
3812
+
3813
+ options.apply_defaults timeout: @config.rpcs.create_big_query_export.timeout,
3814
+ metadata: metadata,
3815
+ retry_policy: @config.rpcs.create_big_query_export.retry_policy
3816
+
3817
+ options.apply_defaults timeout: @config.timeout,
3818
+ metadata: @config.metadata,
3819
+ retry_policy: @config.retry_policy
3820
+
3821
+ @security_center_stub.call_rpc :create_big_query_export, request, options: options do |response, operation|
3822
+ yield response, operation if block_given?
3823
+ return response
3824
+ end
3825
+ rescue ::GRPC::BadStatus => e
3826
+ raise ::Google::Cloud::Error.from_error(e)
3827
+ end
3828
+
3829
+ ##
3830
+ # Deletes an existing big query export.
3831
+ #
3832
+ # @overload delete_big_query_export(request, options = nil)
3833
+ # Pass arguments to `delete_big_query_export` via a request object, either of type
3834
+ # {::Google::Cloud::SecurityCenter::V1::DeleteBigQueryExportRequest} or an equivalent Hash.
3835
+ #
3836
+ # @param request [::Google::Cloud::SecurityCenter::V1::DeleteBigQueryExportRequest, ::Hash]
3837
+ # A request object representing the call parameters. Required. To specify no
3838
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
3839
+ # @param options [::Gapic::CallOptions, ::Hash]
3840
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
3841
+ #
3842
+ # @overload delete_big_query_export(name: nil)
3843
+ # Pass arguments to `delete_big_query_export` via keyword arguments. Note that at
3844
+ # least one keyword argument is required. To specify no parameters, or to keep all
3845
+ # the default parameter values, pass an empty Hash as a request object (see above).
3846
+ #
3847
+ # @param name [::String]
3848
+ # Required. Name of the big query export to delete. Its format is
3849
+ # organizations/\\{organization}/bigQueryExports/\\{export_id},
3850
+ # folders/\\{folder}/bigQueryExports/\\{export_id}, or
3851
+ # projects/\\{project}/bigQueryExports/\\{export_id}
3852
+ #
3853
+ # @yield [response, operation] Access the result along with the RPC operation
3854
+ # @yieldparam response [::Google::Protobuf::Empty]
3855
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
3856
+ #
3857
+ # @return [::Google::Protobuf::Empty]
3858
+ #
3859
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
3860
+ #
3861
+ # @example Basic example
3862
+ # require "google/cloud/security_center/v1"
3863
+ #
3864
+ # # Create a client object. The client can be reused for multiple calls.
3865
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
3866
+ #
3867
+ # # Create a request. To set request fields, pass in keyword arguments.
3868
+ # request = Google::Cloud::SecurityCenter::V1::DeleteBigQueryExportRequest.new
3869
+ #
3870
+ # # Call the delete_big_query_export method.
3871
+ # result = client.delete_big_query_export request
3872
+ #
3873
+ # # The returned object is of type Google::Protobuf::Empty.
3874
+ # p result
3875
+ #
3876
+ def delete_big_query_export request, options = nil
3877
+ raise ::ArgumentError, "request must be provided" if request.nil?
3878
+
3879
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::DeleteBigQueryExportRequest
3880
+
3881
+ # Converts hash and nil to an options object
3882
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
3883
+
3884
+ # Customize the options with defaults
3885
+ metadata = @config.rpcs.delete_big_query_export.metadata.to_h
3886
+
3887
+ # Set x-goog-api-client and x-goog-user-project headers
3888
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
3889
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
3890
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
3891
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
3892
+
3893
+ header_params = {}
3894
+ if request.name
3895
+ header_params["name"] = request.name
3896
+ end
3897
+
3898
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3899
+ metadata[:"x-goog-request-params"] ||= request_params_header
3900
+
3901
+ options.apply_defaults timeout: @config.rpcs.delete_big_query_export.timeout,
3902
+ metadata: metadata,
3903
+ retry_policy: @config.rpcs.delete_big_query_export.retry_policy
3904
+
3905
+ options.apply_defaults timeout: @config.timeout,
3906
+ metadata: @config.metadata,
3907
+ retry_policy: @config.retry_policy
3908
+
3909
+ @security_center_stub.call_rpc :delete_big_query_export, request, options: options do |response, operation|
3910
+ yield response, operation if block_given?
3911
+ return response
3912
+ end
3913
+ rescue ::GRPC::BadStatus => e
3914
+ raise ::Google::Cloud::Error.from_error(e)
3915
+ end
3916
+
3917
+ ##
3918
+ # Updates a BigQuery export.
3919
+ #
3920
+ # @overload update_big_query_export(request, options = nil)
3921
+ # Pass arguments to `update_big_query_export` via a request object, either of type
3922
+ # {::Google::Cloud::SecurityCenter::V1::UpdateBigQueryExportRequest} or an equivalent Hash.
3923
+ #
3924
+ # @param request [::Google::Cloud::SecurityCenter::V1::UpdateBigQueryExportRequest, ::Hash]
3925
+ # A request object representing the call parameters. Required. To specify no
3926
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
3927
+ # @param options [::Gapic::CallOptions, ::Hash]
3928
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
3929
+ #
3930
+ # @overload update_big_query_export(big_query_export: nil, update_mask: nil)
3931
+ # Pass arguments to `update_big_query_export` via keyword arguments. Note that at
3932
+ # least one keyword argument is required. To specify no parameters, or to keep all
3933
+ # the default parameter values, pass an empty Hash as a request object (see above).
3934
+ #
3935
+ # @param big_query_export [::Google::Cloud::SecurityCenter::V1::BigQueryExport, ::Hash]
3936
+ # Required. The BigQuery export being updated.
3937
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
3938
+ # The list of fields to be updated.
3939
+ # If empty all mutable fields will be updated.
3940
+ #
3941
+ # @yield [response, operation] Access the result along with the RPC operation
3942
+ # @yieldparam response [::Google::Cloud::SecurityCenter::V1::BigQueryExport]
3943
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
3944
+ #
3945
+ # @return [::Google::Cloud::SecurityCenter::V1::BigQueryExport]
3946
+ #
3947
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
3948
+ #
3949
+ # @example Basic example
3950
+ # require "google/cloud/security_center/v1"
3951
+ #
3952
+ # # Create a client object. The client can be reused for multiple calls.
3953
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
3954
+ #
3955
+ # # Create a request. To set request fields, pass in keyword arguments.
3956
+ # request = Google::Cloud::SecurityCenter::V1::UpdateBigQueryExportRequest.new
3957
+ #
3958
+ # # Call the update_big_query_export method.
3959
+ # result = client.update_big_query_export request
3960
+ #
3961
+ # # The returned object is of type Google::Cloud::SecurityCenter::V1::BigQueryExport.
3962
+ # p result
3963
+ #
3964
+ def update_big_query_export request, options = nil
3965
+ raise ::ArgumentError, "request must be provided" if request.nil?
3966
+
3967
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::UpdateBigQueryExportRequest
3968
+
3969
+ # Converts hash and nil to an options object
3970
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
3971
+
3972
+ # Customize the options with defaults
3973
+ metadata = @config.rpcs.update_big_query_export.metadata.to_h
3974
+
3975
+ # Set x-goog-api-client and x-goog-user-project headers
3976
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
3977
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
3978
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
3979
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
3980
+
3981
+ header_params = {}
3982
+ if request.big_query_export&.name
3983
+ header_params["big_query_export.name"] = request.big_query_export.name
3984
+ end
3985
+
3986
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3987
+ metadata[:"x-goog-request-params"] ||= request_params_header
3988
+
3989
+ options.apply_defaults timeout: @config.rpcs.update_big_query_export.timeout,
3990
+ metadata: metadata,
3991
+ retry_policy: @config.rpcs.update_big_query_export.retry_policy
3992
+
3993
+ options.apply_defaults timeout: @config.timeout,
3994
+ metadata: @config.metadata,
3995
+ retry_policy: @config.retry_policy
3996
+
3997
+ @security_center_stub.call_rpc :update_big_query_export, request, options: options do |response, operation|
3998
+ yield response, operation if block_given?
3999
+ return response
4000
+ end
4001
+ rescue ::GRPC::BadStatus => e
4002
+ raise ::Google::Cloud::Error.from_error(e)
4003
+ end
4004
+
4005
+ ##
4006
+ # Lists BigQuery exports. Note that when requesting BigQuery exports at a
4007
+ # given level all exports under that level are also returned e.g. if
4008
+ # requesting BigQuery exports under a folder, then all BigQuery exports
4009
+ # immediately under the folder plus the ones created under the projects
4010
+ # within the folder are returned.
4011
+ #
4012
+ # @overload list_big_query_exports(request, options = nil)
4013
+ # Pass arguments to `list_big_query_exports` via a request object, either of type
4014
+ # {::Google::Cloud::SecurityCenter::V1::ListBigQueryExportsRequest} or an equivalent Hash.
4015
+ #
4016
+ # @param request [::Google::Cloud::SecurityCenter::V1::ListBigQueryExportsRequest, ::Hash]
4017
+ # A request object representing the call parameters. Required. To specify no
4018
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
4019
+ # @param options [::Gapic::CallOptions, ::Hash]
4020
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
4021
+ #
4022
+ # @overload list_big_query_exports(parent: nil, page_size: nil, page_token: nil)
4023
+ # Pass arguments to `list_big_query_exports` via keyword arguments. Note that at
4024
+ # least one keyword argument is required. To specify no parameters, or to keep all
4025
+ # the default parameter values, pass an empty Hash as a request object (see above).
4026
+ #
4027
+ # @param parent [::String]
4028
+ # Required. The parent, which owns the collection of BigQuery exports. Its format is
4029
+ # "organizations/[organization_id]", "folders/[folder_id]",
4030
+ # "projects/[project_id]".
4031
+ # @param page_size [::Integer]
4032
+ # The maximum number of configs to return. The service may return fewer than
4033
+ # this value.
4034
+ # If unspecified, at most 10 configs will be returned.
4035
+ # The maximum value is 1000; values above 1000 will be coerced to 1000.
4036
+ # @param page_token [::String]
4037
+ # A page token, received from a previous `ListBigQueryExports` call.
4038
+ # Provide this to retrieve the subsequent page.
4039
+ # When paginating, all other parameters provided to `ListBigQueryExports`
4040
+ # must match the call that provided the page token.
4041
+ #
4042
+ # @yield [response, operation] Access the result along with the RPC operation
4043
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::BigQueryExport>]
4044
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
4045
+ #
4046
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::SecurityCenter::V1::BigQueryExport>]
4047
+ #
4048
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
4049
+ #
4050
+ # @example Basic example
4051
+ # require "google/cloud/security_center/v1"
4052
+ #
4053
+ # # Create a client object. The client can be reused for multiple calls.
4054
+ # client = Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
4055
+ #
4056
+ # # Create a request. To set request fields, pass in keyword arguments.
4057
+ # request = Google::Cloud::SecurityCenter::V1::ListBigQueryExportsRequest.new
4058
+ #
4059
+ # # Call the list_big_query_exports method.
4060
+ # result = client.list_big_query_exports request
4061
+ #
4062
+ # # The returned object is of type Gapic::PagedEnumerable. You can
4063
+ # # iterate over all elements by calling #each, and the enumerable
4064
+ # # will lazily make API calls to fetch subsequent pages. Other
4065
+ # # methods are also available for managing paging directly.
4066
+ # result.each do |response|
4067
+ # # Each element is of type ::Google::Cloud::SecurityCenter::V1::BigQueryExport.
4068
+ # p response
4069
+ # end
4070
+ #
4071
+ def list_big_query_exports request, options = nil
4072
+ raise ::ArgumentError, "request must be provided" if request.nil?
4073
+
4074
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::SecurityCenter::V1::ListBigQueryExportsRequest
4075
+
4076
+ # Converts hash and nil to an options object
4077
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
4078
+
4079
+ # Customize the options with defaults
4080
+ metadata = @config.rpcs.list_big_query_exports.metadata.to_h
4081
+
4082
+ # Set x-goog-api-client and x-goog-user-project headers
4083
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
4084
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
4085
+ gapic_version: ::Google::Cloud::SecurityCenter::V1::VERSION
4086
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
4087
+
4088
+ header_params = {}
4089
+ if request.parent
4090
+ header_params["parent"] = request.parent
4091
+ end
4092
+
4093
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
4094
+ metadata[:"x-goog-request-params"] ||= request_params_header
4095
+
4096
+ options.apply_defaults timeout: @config.rpcs.list_big_query_exports.timeout,
4097
+ metadata: metadata,
4098
+ retry_policy: @config.rpcs.list_big_query_exports.retry_policy
4099
+
4100
+ options.apply_defaults timeout: @config.timeout,
4101
+ metadata: @config.metadata,
4102
+ retry_policy: @config.retry_policy
4103
+
4104
+ @security_center_stub.call_rpc :list_big_query_exports, request, options: options do |response, operation|
4105
+ response = ::Gapic::PagedEnumerable.new @security_center_stub, :list_big_query_exports, request, response, operation, options
4106
+ yield response, operation if block_given?
4107
+ return response
4108
+ end
4109
+ rescue ::GRPC::BadStatus => e
4110
+ raise ::Google::Cloud::Error.from_error(e)
4111
+ end
4112
+
3641
4113
  ##
3642
4114
  # Configuration class for the SecurityCenter API.
3643
4115
  #
@@ -3809,6 +4281,11 @@ module Google
3809
4281
  #
3810
4282
  attr_reader :delete_notification_config
3811
4283
  ##
4284
+ # RPC-specific configuration for `get_big_query_export`
4285
+ # @return [::Gapic::Config::Method]
4286
+ #
4287
+ attr_reader :get_big_query_export
4288
+ ##
3812
4289
  # RPC-specific configuration for `get_iam_policy`
3813
4290
  # @return [::Gapic::Config::Method]
3814
4291
  #
@@ -3928,6 +4405,26 @@ module Google
3928
4405
  # @return [::Gapic::Config::Method]
3929
4406
  #
3930
4407
  attr_reader :update_security_marks
4408
+ ##
4409
+ # RPC-specific configuration for `create_big_query_export`
4410
+ # @return [::Gapic::Config::Method]
4411
+ #
4412
+ attr_reader :create_big_query_export
4413
+ ##
4414
+ # RPC-specific configuration for `delete_big_query_export`
4415
+ # @return [::Gapic::Config::Method]
4416
+ #
4417
+ attr_reader :delete_big_query_export
4418
+ ##
4419
+ # RPC-specific configuration for `update_big_query_export`
4420
+ # @return [::Gapic::Config::Method]
4421
+ #
4422
+ attr_reader :update_big_query_export
4423
+ ##
4424
+ # RPC-specific configuration for `list_big_query_exports`
4425
+ # @return [::Gapic::Config::Method]
4426
+ #
4427
+ attr_reader :list_big_query_exports
3931
4428
 
3932
4429
  # @private
3933
4430
  def initialize parent_rpcs = nil
@@ -3945,6 +4442,8 @@ module Google
3945
4442
  @delete_mute_config = ::Gapic::Config::Method.new delete_mute_config_config
3946
4443
  delete_notification_config_config = parent_rpcs.delete_notification_config if parent_rpcs.respond_to? :delete_notification_config
3947
4444
  @delete_notification_config = ::Gapic::Config::Method.new delete_notification_config_config
4445
+ get_big_query_export_config = parent_rpcs.get_big_query_export if parent_rpcs.respond_to? :get_big_query_export
4446
+ @get_big_query_export = ::Gapic::Config::Method.new get_big_query_export_config
3948
4447
  get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy
3949
4448
  @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config
3950
4449
  get_mute_config_config = parent_rpcs.get_mute_config if parent_rpcs.respond_to? :get_mute_config
@@ -3993,6 +4492,14 @@ module Google
3993
4492
  @update_source = ::Gapic::Config::Method.new update_source_config
3994
4493
  update_security_marks_config = parent_rpcs.update_security_marks if parent_rpcs.respond_to? :update_security_marks
3995
4494
  @update_security_marks = ::Gapic::Config::Method.new update_security_marks_config
4495
+ create_big_query_export_config = parent_rpcs.create_big_query_export if parent_rpcs.respond_to? :create_big_query_export
4496
+ @create_big_query_export = ::Gapic::Config::Method.new create_big_query_export_config
4497
+ delete_big_query_export_config = parent_rpcs.delete_big_query_export if parent_rpcs.respond_to? :delete_big_query_export
4498
+ @delete_big_query_export = ::Gapic::Config::Method.new delete_big_query_export_config
4499
+ update_big_query_export_config = parent_rpcs.update_big_query_export if parent_rpcs.respond_to? :update_big_query_export
4500
+ @update_big_query_export = ::Gapic::Config::Method.new update_big_query_export_config
4501
+ list_big_query_exports_config = parent_rpcs.list_big_query_exports if parent_rpcs.respond_to? :list_big_query_exports
4502
+ @list_big_query_exports = ::Gapic::Config::Method.new list_big_query_exports_config
3996
4503
 
3997
4504
  yield self if block_given?
3998
4505
  end
@@ -24,6 +24,58 @@ module Google
24
24
  module SecurityCenter
25
25
  # Path helper methods for the SecurityCenter API.
26
26
  module Paths
27
+ ##
28
+ # Create a fully-qualified BigQueryExport resource string.
29
+ #
30
+ # @overload big_query_export_path(organization:, export:)
31
+ # The resource will be in the following format:
32
+ #
33
+ # `organizations/{organization}/bigQueryExports/{export}`
34
+ #
35
+ # @param organization [String]
36
+ # @param export [String]
37
+ #
38
+ # @overload big_query_export_path(folder:, export:)
39
+ # The resource will be in the following format:
40
+ #
41
+ # `folders/{folder}/bigQueryExports/{export}`
42
+ #
43
+ # @param folder [String]
44
+ # @param export [String]
45
+ #
46
+ # @overload big_query_export_path(project:, export:)
47
+ # The resource will be in the following format:
48
+ #
49
+ # `projects/{project}/bigQueryExports/{export}`
50
+ #
51
+ # @param project [String]
52
+ # @param export [String]
53
+ #
54
+ # @return [::String]
55
+ def big_query_export_path **args
56
+ resources = {
57
+ "export:organization" => (proc do |organization:, export:|
58
+ raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
59
+
60
+ "organizations/#{organization}/bigQueryExports/#{export}"
61
+ end),
62
+ "export:folder" => (proc do |folder:, export:|
63
+ raise ::ArgumentError, "folder cannot contain /" if folder.to_s.include? "/"
64
+
65
+ "folders/#{folder}/bigQueryExports/#{export}"
66
+ end),
67
+ "export:project" => (proc do |project:, export:|
68
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
69
+
70
+ "projects/#{project}/bigQueryExports/#{export}"
71
+ end)
72
+ }
73
+
74
+ resource = resources[args.keys.sort.join(":")]
75
+ raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
76
+ resource.call(**args)
77
+ end
78
+
27
79
  ##
28
80
  # Create a fully-qualified ExternalSystem resource string.
29
81
  #
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module SecurityCenter
23
23
  module V1
24
- VERSION = "0.12.1"
24
+ VERSION = "0.15.0"
25
25
  end
26
26
  end
27
27
  end
@@ -25,6 +25,8 @@ module Google
25
25
  ##
26
26
  # To load this package, including all its services, and instantiate a client:
27
27
  #
28
+ # @example
29
+ #
28
30
  # require "google/cloud/security_center/v1"
29
31
  # client = ::Google::Cloud::SecurityCenter::V1::SecurityCenter::Client.new
30
32
  #