google-cloud-cloudsecuritycompliance 0.1.0__tar.gz → 0.2.0__tar.gz

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.
Files changed (52) hide show
  1. {google_cloud_cloudsecuritycompliance-0.1.0/google_cloud_cloudsecuritycompliance.egg-info → google_cloud_cloudsecuritycompliance-0.2.0}/PKG-INFO +1 -1
  2. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance/__init__.py +0 -10
  3. google_cloud_cloudsecuritycompliance-0.2.0/google/cloud/cloudsecuritycompliance/gapic_version.py +16 -0
  4. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/__init__.py +0 -10
  5. google_cloud_cloudsecuritycompliance-0.2.0/google/cloud/cloudsecuritycompliance_v1/gapic_version.py +16 -0
  6. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/async_client.py +147 -42
  7. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/client.py +147 -42
  8. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/transports/grpc.py +71 -11
  9. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/transports/grpc_asyncio.py +71 -11
  10. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/transports/rest.py +74 -30
  11. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/async_client.py +52 -36
  12. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/client.py +52 -36
  13. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/transports/grpc.py +8 -6
  14. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/transports/grpc_asyncio.py +8 -6
  15. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/transports/rest.py +19 -12
  16. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/types/__init__.py +0 -10
  17. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/types/common.py +20 -326
  18. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/types/config.py +17 -17
  19. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/types/deployment.py +125 -165
  20. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0/google_cloud_cloudsecuritycompliance.egg-info}/PKG-INFO +1 -1
  21. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/tests/unit/gapic/cloudsecuritycompliance_v1/test_config.py +57 -60
  22. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/tests/unit/gapic/cloudsecuritycompliance_v1/test_deployment.py +4 -94
  23. google_cloud_cloudsecuritycompliance-0.1.0/google/cloud/cloudsecuritycompliance/gapic_version.py +0 -17
  24. google_cloud_cloudsecuritycompliance-0.1.0/google/cloud/cloudsecuritycompliance_v1/gapic_version.py +0 -17
  25. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/LICENSE +0 -0
  26. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/MANIFEST.in +0 -0
  27. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/README.rst +0 -0
  28. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance/py.typed +0 -0
  29. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/gapic_metadata.json +0 -0
  30. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/py.typed +0 -0
  31. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/__init__.py +0 -0
  32. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/__init__.py +0 -0
  33. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/pagers.py +0 -0
  34. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/transports/__init__.py +0 -0
  35. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/transports/base.py +0 -0
  36. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/config/transports/rest_base.py +0 -0
  37. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/__init__.py +0 -0
  38. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/pagers.py +0 -0
  39. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/transports/__init__.py +0 -0
  40. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/transports/base.py +0 -0
  41. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google/cloud/cloudsecuritycompliance_v1/services/deployment/transports/rest_base.py +0 -0
  42. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google_cloud_cloudsecuritycompliance.egg-info/SOURCES.txt +0 -0
  43. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google_cloud_cloudsecuritycompliance.egg-info/dependency_links.txt +0 -0
  44. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google_cloud_cloudsecuritycompliance.egg-info/not-zip-safe +0 -0
  45. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google_cloud_cloudsecuritycompliance.egg-info/requires.txt +0 -0
  46. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/google_cloud_cloudsecuritycompliance.egg-info/top_level.txt +0 -0
  47. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/setup.cfg +0 -0
  48. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/setup.py +0 -0
  49. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/tests/__init__.py +0 -0
  50. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/tests/unit/__init__.py +0 -0
  51. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/tests/unit/gapic/__init__.py +0 -0
  52. {google_cloud_cloudsecuritycompliance-0.1.0 → google_cloud_cloudsecuritycompliance-0.2.0}/tests/unit/gapic/cloudsecuritycompliance_v1/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: google-cloud-cloudsecuritycompliance
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: Google Cloud Cloudsecuritycompliance API client library
5
5
  Home-page: https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-cloudsecuritycompliance
6
6
  Author: Google LLC
@@ -35,10 +35,7 @@ from google.cloud.cloudsecuritycompliance_v1.types.common import (
35
35
  CloudControl,
36
36
  CloudControlCategory,
37
37
  CloudControlDetails,
38
- CloudControlGroup,
39
38
  CloudProvider,
40
- Control,
41
- ControlFamily,
42
39
  EnforcementMode,
43
40
  Framework,
44
41
  FrameworkCategory,
@@ -51,7 +48,6 @@ from google.cloud.cloudsecuritycompliance_v1.types.common import (
51
48
  ParamValue,
52
49
  PlaceholderSubstitutionRule,
53
50
  RegexpPattern,
54
- RegulatoryControlResponsibilityType,
55
51
  Rule,
56
52
  RuleActionType,
57
53
  Severity,
@@ -76,7 +72,6 @@ from google.cloud.cloudsecuritycompliance_v1.types.config import (
76
72
  from google.cloud.cloudsecuritycompliance_v1.types.deployment import (
77
73
  CloudControlDeployment,
78
74
  CloudControlDeploymentReference,
79
- CloudControlGroupDeployment,
80
75
  CloudControlMetadata,
81
76
  CreateFrameworkDeploymentRequest,
82
77
  DeleteFrameworkDeploymentRequest,
@@ -105,9 +100,6 @@ __all__ = (
105
100
  "CELExpression",
106
101
  "CloudControl",
107
102
  "CloudControlDetails",
108
- "CloudControlGroup",
109
- "Control",
110
- "ControlFamily",
111
103
  "Framework",
112
104
  "FrameworkReference",
113
105
  "IntRange",
@@ -125,7 +117,6 @@ __all__ = (
125
117
  "CloudProvider",
126
118
  "EnforcementMode",
127
119
  "FrameworkCategory",
128
- "RegulatoryControlResponsibilityType",
129
120
  "RuleActionType",
130
121
  "Severity",
131
122
  "TargetResourceType",
@@ -143,7 +134,6 @@ __all__ = (
143
134
  "UpdateFrameworkRequest",
144
135
  "CloudControlDeployment",
145
136
  "CloudControlDeploymentReference",
146
- "CloudControlGroupDeployment",
147
137
  "CloudControlMetadata",
148
138
  "CreateFrameworkDeploymentRequest",
149
139
  "DeleteFrameworkDeploymentRequest",
@@ -0,0 +1,16 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright 2025 Google LLC
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ #
16
+ __version__ = "0.2.0" # {x-release-please-version}
@@ -27,10 +27,7 @@ from .types.common import (
27
27
  CloudControl,
28
28
  CloudControlCategory,
29
29
  CloudControlDetails,
30
- CloudControlGroup,
31
30
  CloudProvider,
32
- Control,
33
- ControlFamily,
34
31
  EnforcementMode,
35
32
  Framework,
36
33
  FrameworkCategory,
@@ -43,7 +40,6 @@ from .types.common import (
43
40
  ParamValue,
44
41
  PlaceholderSubstitutionRule,
45
42
  RegexpPattern,
46
- RegulatoryControlResponsibilityType,
47
43
  Rule,
48
44
  RuleActionType,
49
45
  Severity,
@@ -68,7 +64,6 @@ from .types.config import (
68
64
  from .types.deployment import (
69
65
  CloudControlDeployment,
70
66
  CloudControlDeploymentReference,
71
- CloudControlGroupDeployment,
72
67
  CloudControlMetadata,
73
68
  CreateFrameworkDeploymentRequest,
74
69
  DeleteFrameworkDeploymentRequest,
@@ -98,13 +93,9 @@ __all__ = (
98
93
  "CloudControlDeployment",
99
94
  "CloudControlDeploymentReference",
100
95
  "CloudControlDetails",
101
- "CloudControlGroup",
102
- "CloudControlGroupDeployment",
103
96
  "CloudControlMetadata",
104
97
  "CloudProvider",
105
98
  "ConfigClient",
106
- "Control",
107
- "ControlFamily",
108
99
  "CreateCloudControlRequest",
109
100
  "CreateFrameworkDeploymentRequest",
110
101
  "CreateFrameworkRequest",
@@ -141,7 +132,6 @@ __all__ = (
141
132
  "PlaceholderSubstitutionRule",
142
133
  "ProjectCreationConfig",
143
134
  "RegexpPattern",
144
- "RegulatoryControlResponsibilityType",
145
135
  "Rule",
146
136
  "RuleActionType",
147
137
  "Severity",
@@ -0,0 +1,16 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright 2025 Google LLC
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+ #
16
+ __version__ = "0.2.0" # {x-release-please-version}
@@ -67,7 +67,9 @@ _LOGGER = std_logging.getLogger(__name__)
67
67
 
68
68
 
69
69
  class ConfigAsyncClient:
70
- """Service describing handlers for config resources"""
70
+ """Config Service manages compliance frameworks, cloud controls,
71
+ and their configurations.
72
+ """
71
73
 
72
74
  _client: ConfigClient
73
75
 
@@ -293,7 +295,10 @@ class ConfigAsyncClient:
293
295
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
294
296
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
295
297
  ) -> pagers.ListFrameworksAsyncPager:
296
- r"""Lists Frameworks in a given organization.
298
+ r"""Lists all Frameworks (both Built-in and Custom)
299
+ available within a given parent resource. This method
300
+ supports pagination. The latest major version of each
301
+ Framework is returned.
297
302
 
298
303
  .. code-block:: python
299
304
 
@@ -324,10 +329,12 @@ class ConfigAsyncClient:
324
329
 
325
330
  Args:
326
331
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.ListFrameworksRequest, dict]]):
327
- The request object. Request message for [ListFrameworks][].
332
+ The request object. Request message for listing
333
+ Frameworks.
328
334
  parent (:class:`str`):
329
335
  Required. The parent resource name, in the format
330
336
  ``organizations/{organization}/locations/{location}``.
337
+ Only global location is supported.
331
338
 
332
339
  This corresponds to the ``parent`` field
333
340
  on the ``request`` instance; if ``request`` is provided, this
@@ -342,10 +349,13 @@ class ConfigAsyncClient:
342
349
 
343
350
  Returns:
344
351
  google.cloud.cloudsecuritycompliance_v1.services.config.pagers.ListFrameworksAsyncPager:
345
- Response message for [ListFrameworks][].
352
+ Response message for listing
353
+ Frameworks. Contains a paginated list of
354
+ Framework resources.
346
355
 
347
- Iterating over this object will yield results and
348
- resolve additional pages automatically.
356
+ Iterating over this object will yield
357
+ results and resolve additional pages
358
+ automatically.
349
359
 
350
360
  """
351
361
  # Create or coerce a protobuf request object.
@@ -417,7 +427,13 @@ class ConfigAsyncClient:
417
427
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
418
428
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
419
429
  ) -> common.Framework:
420
- r"""Gets details of a single Framework.
430
+ r"""Gets details of a single Framework. This method retrieves a
431
+ Framework resource, which can be either Built-in or Custom,
432
+ identified by its name.
433
+
434
+ By default, the latest major version of the Framework is
435
+ returned. A specific major version can be retrieved by
436
+ specifying the ``major_revision_id`` in the request.
421
437
 
422
438
  .. code-block:: python
423
439
 
@@ -447,7 +463,8 @@ class ConfigAsyncClient:
447
463
 
448
464
  Args:
449
465
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.GetFrameworkRequest, dict]]):
450
- The request object. Message for getting a Framework.
466
+ The request object. Request message for getting a
467
+ Framework.
451
468
  name (:class:`str`):
452
469
  Required. The name of the framework to retrieve. Format:
453
470
  organizations/{organization}/locations/{location}/frameworks/{framework_id}
@@ -465,9 +482,14 @@ class ConfigAsyncClient:
465
482
 
466
483
  Returns:
467
484
  google.cloud.cloudsecuritycompliance_v1.types.Framework:
468
- Framework is a collection of
469
- CloudControls which represents
470
- industry/GCP/Customer defined
485
+ A Framework is a collection of
486
+ CloudControls to address security and
487
+ compliance requirements. Frameworks can
488
+ be used for prevention, detection, and
489
+ auditing. They can be either built-in,
490
+ industry-standard frameworks provided by
491
+ GCP/AZURE/AWS (e.g., NIST, FedRAMP) or
492
+ custom frameworks created by users.
471
493
 
472
494
  """
473
495
  # Create or coerce a protobuf request object.
@@ -530,7 +552,9 @@ class ConfigAsyncClient:
530
552
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
531
553
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
532
554
  ) -> common.Framework:
533
- r"""Creates a single framework for a given resource.
555
+ r"""Creates a new Framework with type ``Custom`` under a given
556
+ parent resource. Frameworks with type ``Built-in`` are managed
557
+ by Google and cannot be created through this API.
534
558
 
535
559
  .. code-block:: python
536
560
 
@@ -565,7 +589,8 @@ class ConfigAsyncClient:
565
589
 
566
590
  Args:
567
591
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.CreateFrameworkRequest, dict]]):
568
- The request object. Message for creating a Framework
592
+ The request object. Request message for creating a
593
+ Framework
569
594
  parent (:class:`str`):
570
595
  Required. The parent resource name, in the format
571
596
  ``organizations/{organization}/locations/{location}``.
@@ -597,9 +622,14 @@ class ConfigAsyncClient:
597
622
 
598
623
  Returns:
599
624
  google.cloud.cloudsecuritycompliance_v1.types.Framework:
600
- Framework is a collection of
601
- CloudControls which represents
602
- industry/GCP/Customer defined
625
+ A Framework is a collection of
626
+ CloudControls to address security and
627
+ compliance requirements. Frameworks can
628
+ be used for prevention, detection, and
629
+ auditing. They can be either built-in,
630
+ industry-standard frameworks provided by
631
+ GCP/AZURE/AWS (e.g., NIST, FedRAMP) or
632
+ custom frameworks created by users.
603
633
 
604
634
  """
605
635
  # Create or coerce a protobuf request object.
@@ -665,7 +695,19 @@ class ConfigAsyncClient:
665
695
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
666
696
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
667
697
  ) -> common.Framework:
668
- r"""Updates a single Framework.
698
+ r"""Updates a single Framework. This method allows for partial
699
+ updates of a Framework resource. The fields to be updated are
700
+ specified using the ``update_mask``.
701
+
702
+ - If an ``update_mask`` is provided, only the fields specified
703
+ in the mask will be updated.
704
+ - If no ``update_mask`` is provided, all fields present in the
705
+ request's ``framework`` body will be used to overwrite the
706
+ existing resource.
707
+
708
+ This operation can only be performed on Frameworks with type
709
+ ``CUSTOM``. A successful update will result in a new version of
710
+ the Framework.
669
711
 
670
712
  .. code-block:: python
671
713
 
@@ -698,7 +740,8 @@ class ConfigAsyncClient:
698
740
 
699
741
  Args:
700
742
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.UpdateFrameworkRequest, dict]]):
701
- The request object. Message for updating a Framework
743
+ The request object. Request message for updating a
744
+ Framework.
702
745
  framework (:class:`google.cloud.cloudsecuritycompliance_v1.types.Framework`):
703
746
  Required. The resource being updated
704
747
  This corresponds to the ``framework`` field
@@ -726,9 +769,14 @@ class ConfigAsyncClient:
726
769
 
727
770
  Returns:
728
771
  google.cloud.cloudsecuritycompliance_v1.types.Framework:
729
- Framework is a collection of
730
- CloudControls which represents
731
- industry/GCP/Customer defined
772
+ A Framework is a collection of
773
+ CloudControls to address security and
774
+ compliance requirements. Frameworks can
775
+ be used for prevention, detection, and
776
+ auditing. They can be either built-in,
777
+ industry-standard frameworks provided by
778
+ GCP/AZURE/AWS (e.g., NIST, FedRAMP) or
779
+ custom frameworks created by users.
732
780
 
733
781
  """
734
782
  # Create or coerce a protobuf request object.
@@ -793,7 +841,14 @@ class ConfigAsyncClient:
793
841
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
794
842
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
795
843
  ) -> None:
796
- r"""Deletes a single Framework.
844
+ r"""Deletes a single Custom Framework, including all its minor and
845
+ minor revisions.
846
+
847
+ - This operation can only be performed on Frameworks with type
848
+ ``CUSTOM``. Built-in Frameworks cannot be deleted.
849
+ - The Framework cannot be deleted if it is currently deployed on
850
+ any resource.
851
+ - This action is permanent and cannot be undone.
797
852
 
798
853
  .. code-block:: python
799
854
 
@@ -820,7 +875,8 @@ class ConfigAsyncClient:
820
875
 
821
876
  Args:
822
877
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.DeleteFrameworkRequest, dict]]):
823
- The request object. Message for deleting a Framework
878
+ The request object. Request message for deleting a
879
+ Framework.
824
880
  name (:class:`str`):
825
881
  Required. Name of the resource, in the format
826
882
  ``organizations/{organization}/locations/{location}/frameworks/{framework}``.
@@ -891,7 +947,10 @@ class ConfigAsyncClient:
891
947
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
892
948
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
893
949
  ) -> pagers.ListCloudControlsAsyncPager:
894
- r"""Lists CloudControls in a given organization.
950
+ r"""Lists all CloudControls (both Built-in and Custom)
951
+ available within a given parent resource. This method
952
+ supports pagination. The latest major version of each
953
+ CloudControl is returned.
895
954
 
896
955
  .. code-block:: python
897
956
 
@@ -922,7 +981,8 @@ class ConfigAsyncClient:
922
981
 
923
982
  Args:
924
983
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.ListCloudControlsRequest, dict]]):
925
- The request object. Request message for [ListCloudControls][].
984
+ The request object. Request message for listing
985
+ CloudControls.
926
986
  parent (:class:`str`):
927
987
  Required. The parent resource name, in the format
928
988
  ``organizations/{organization}/locations/{location}``.
@@ -1016,7 +1076,13 @@ class ConfigAsyncClient:
1016
1076
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
1017
1077
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
1018
1078
  ) -> common.CloudControl:
1019
- r"""Gets details of a single CloudControl.
1079
+ r"""Gets details of a single CloudControl. This method retrieves a
1080
+ CloudControl resource, which can be either Built-in or Custom,
1081
+ identified by its name.
1082
+
1083
+ By default, the latest major version of the CloudControl is
1084
+ returned. A specific major version can be retrieved by
1085
+ specifying the ``major_revision_id`` in the request.
1020
1086
 
1021
1087
  .. code-block:: python
1022
1088
 
@@ -1046,7 +1112,8 @@ class ConfigAsyncClient:
1046
1112
 
1047
1113
  Args:
1048
1114
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.GetCloudControlRequest, dict]]):
1049
- The request object. Message for getting a CloudControl.
1115
+ The request object. Request message for getting a
1116
+ CloudControl.
1050
1117
  name (:class:`str`):
1051
1118
  Required. The name of the cloudcontrol to retrieve in
1052
1119
  the format:
@@ -1065,9 +1132,14 @@ class ConfigAsyncClient:
1065
1132
 
1066
1133
  Returns:
1067
1134
  google.cloud.cloudsecuritycompliance_v1.types.CloudControl:
1068
- A CloudControl is a GCP-provided
1069
- parameterized concept which is used to
1070
- satisfy a Security or Compliance intent.
1135
+ A CloudControl is the fundamental unit encapsulating the rules
1136
+ to meet a specific security or compliance intent. It
1137
+ can contain various rule types (like Organization
1138
+ Policies, CEL expressions, etc.) enabling different
1139
+ enforcement modes (Preventive, Detective, Audit).
1140
+ CloudControls are often parameterized for reusability
1141
+ and can be either BUILT_IN (provided by Google) or
1142
+ CUSTOM (defined by the user).
1071
1143
 
1072
1144
  """
1073
1145
  # Create or coerce a protobuf request object.
@@ -1130,7 +1202,9 @@ class ConfigAsyncClient:
1130
1202
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
1131
1203
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
1132
1204
  ) -> common.CloudControl:
1133
- r"""Creates a single CloudControl for a given resource.
1205
+ r"""Creates a new CloudControl with type ``Custom`` under a given
1206
+ parent resource. ``Built-in`` CloudControls are managed by
1207
+ Google and cannot be created through this API.
1134
1208
 
1135
1209
  .. code-block:: python
1136
1210
 
@@ -1165,7 +1239,8 @@ class ConfigAsyncClient:
1165
1239
 
1166
1240
  Args:
1167
1241
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.CreateCloudControlRequest, dict]]):
1168
- The request object. Message for creating a CloudControl
1242
+ The request object. Request message for creating a
1243
+ CloudControl
1169
1244
  parent (:class:`str`):
1170
1245
  Required. The parent resource name, in the format
1171
1246
  ``organizations/{organization}/locations/{location}``.
@@ -1196,9 +1271,14 @@ class ConfigAsyncClient:
1196
1271
 
1197
1272
  Returns:
1198
1273
  google.cloud.cloudsecuritycompliance_v1.types.CloudControl:
1199
- A CloudControl is a GCP-provided
1200
- parameterized concept which is used to
1201
- satisfy a Security or Compliance intent.
1274
+ A CloudControl is the fundamental unit encapsulating the rules
1275
+ to meet a specific security or compliance intent. It
1276
+ can contain various rule types (like Organization
1277
+ Policies, CEL expressions, etc.) enabling different
1278
+ enforcement modes (Preventive, Detective, Audit).
1279
+ CloudControls are often parameterized for reusability
1280
+ and can be either BUILT_IN (provided by Google) or
1281
+ CUSTOM (defined by the user).
1202
1282
 
1203
1283
  """
1204
1284
  # Create or coerce a protobuf request object.
@@ -1264,7 +1344,18 @@ class ConfigAsyncClient:
1264
1344
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
1265
1345
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
1266
1346
  ) -> common.CloudControl:
1267
- r"""Updates a single CloudControl.
1347
+ r"""Updates a single CloudControl. This method allows for partial
1348
+ updates of a Custom CloudControl resource. Built-in
1349
+ CloudControls cannot be updated.
1350
+
1351
+ - If an ``update_mask`` is provided, only the fields specified
1352
+ in the mask will be updated.
1353
+ - If no ``update_mask`` is provided, all fields present in the
1354
+ request's ``cloud_control`` body will be used to overwrite the
1355
+ existing resource.
1356
+
1357
+ A successful update will result in a new version of the
1358
+ CloudControl.
1268
1359
 
1269
1360
  .. code-block:: python
1270
1361
 
@@ -1297,7 +1388,8 @@ class ConfigAsyncClient:
1297
1388
 
1298
1389
  Args:
1299
1390
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.UpdateCloudControlRequest, dict]]):
1300
- The request object. Message for updating a CloudControl.
1391
+ The request object. Request message for
1392
+ UpdateCloudControl.
1301
1393
  cloud_control (:class:`google.cloud.cloudsecuritycompliance_v1.types.CloudControl`):
1302
1394
  Required. The resource being updated
1303
1395
  This corresponds to the ``cloud_control`` field
@@ -1331,9 +1423,14 @@ class ConfigAsyncClient:
1331
1423
 
1332
1424
  Returns:
1333
1425
  google.cloud.cloudsecuritycompliance_v1.types.CloudControl:
1334
- A CloudControl is a GCP-provided
1335
- parameterized concept which is used to
1336
- satisfy a Security or Compliance intent.
1426
+ A CloudControl is the fundamental unit encapsulating the rules
1427
+ to meet a specific security or compliance intent. It
1428
+ can contain various rule types (like Organization
1429
+ Policies, CEL expressions, etc.) enabling different
1430
+ enforcement modes (Preventive, Detective, Audit).
1431
+ CloudControls are often parameterized for reusability
1432
+ and can be either BUILT_IN (provided by Google) or
1433
+ CUSTOM (defined by the user).
1337
1434
 
1338
1435
  """
1339
1436
  # Create or coerce a protobuf request object.
@@ -1398,7 +1495,14 @@ class ConfigAsyncClient:
1398
1495
  timeout: Union[float, object] = gapic_v1.method.DEFAULT,
1399
1496
  metadata: Sequence[Tuple[str, Union[str, bytes]]] = (),
1400
1497
  ) -> None:
1401
- r"""Deletes a single CloudControl.
1498
+ r"""Deletes a single Custom CloudControl, including all its major
1499
+ and minor revisions.
1500
+
1501
+ - This operation can only be performed on CloudControls with
1502
+ type ``CUSTOM``. Built-in CloudControls cannot be deleted.
1503
+ - The CloudControl cannot be deleted if any of its revisions are
1504
+ currently referenced by any Framework.
1505
+ - This action is permanent and cannot be undone.
1402
1506
 
1403
1507
  .. code-block:: python
1404
1508
 
@@ -1425,7 +1529,8 @@ class ConfigAsyncClient:
1425
1529
 
1426
1530
  Args:
1427
1531
  request (Optional[Union[google.cloud.cloudsecuritycompliance_v1.types.DeleteCloudControlRequest, dict]]):
1428
- The request object. Message for deleting a CloudControl.
1532
+ The request object. Request message for deleting a
1533
+ CloudControl.
1429
1534
  name (:class:`str`):
1430
1535
  Required. Name of the resource, in the format
1431
1536
  ``organizations/{organization}/locations/{location}/CloudControls/{CloudControl}``.