Skip to content

Commit e9975a3

Browse files
Google APIscopybara-github
authored andcommitted
docs: Updated docs for the APIs
feat: Adding client libraries for Deployment API Compliance Manager Service PiperOrigin-RevId: 903655636
1 parent 939ba3b commit e9975a3

6 files changed

Lines changed: 387 additions & 52 deletions

File tree

‎google/cloud/cloudsecuritycompliance/v1/BUILD.bazel‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ proto_library(
3838
"//google/api:resource_proto",
3939
"//google/longrunning:operations_proto",
4040
"//google/type:interval_proto",
41+
"@com_google_protobuf//:duration_proto",
4142
"@com_google_protobuf//:empty_proto",
4243
"@com_google_protobuf//:field_mask_proto",
4344
"@com_google_protobuf//:timestamp_proto",
@@ -164,6 +165,7 @@ go_gapic_library(
164165
"//google/longrunning:longrunning_go_proto",
165166
"@com_google_cloud_go_longrunning//:go_default_library",
166167
"@com_google_cloud_go_longrunning//autogen:go_default_library",
168+
"@io_bazel_rules_go//proto/wkt:duration_go_proto",
167169
],
168170
)
169171

@@ -349,6 +351,7 @@ load(
349351

350352
csharp_proto_library(
351353
name = "cloudsecuritycompliance_csharp_proto",
354+
extra_opts = [],
352355
deps = [":cloudsecuritycompliance_proto"],
353356
)
354357

‎google/cloud/cloudsecuritycompliance/v1/cloudsecuritycompliance_v1.yaml‎

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,23 +18,52 @@ documentation:
1818
description: Gets information about a location.
1919

2020
- selector: google.cloud.location.Locations.ListLocations
21-
description: Lists information about the supported locations for this service.
21+
description: |-
22+
Lists information about the supported locations for this service.
23+
24+
This method lists locations based on the resource scope provided in
25+
the [ListLocationsRequest.name][google.cloud.location.ListLocationsRequest.name] field: *
26+
**Global locations**: If `name` is empty, the method lists the
27+
public locations available to all projects. * **Project-specific
28+
locations**: If `name` follows the format
29+
`projects/{project}`, the method lists locations visible to that
30+
specific project. This includes public, private, or other
31+
project-specific locations enabled for the project.
32+
33+
For gRPC and client library implementations, the resource name is
34+
passed as the `name` field. For direct service calls, the resource
35+
name is
36+
incorporated into the request path based on the specific service
37+
implementation and version.
2238
2339
http:
2440
rules:
2541
- selector: google.cloud.location.Locations.GetLocation
2642
get: '/v1/{name=organizations/*/locations/*}'
43+
additional_bindings:
44+
- get: '/v1/{name=projects/*/locations/*}'
2745
- selector: google.cloud.location.Locations.ListLocations
2846
get: '/v1/{name=organizations/*}/locations'
47+
additional_bindings:
48+
- get: '/v1/{name=projects/*}/locations'
2949
- selector: google.longrunning.Operations.CancelOperation
3050
post: '/v1/{name=organizations/*/locations/*/operations/*}:cancel'
3151
body: '*'
52+
additional_bindings:
53+
- post: '/v1/{name=projects/*/locations/*/operations/*}:cancel'
54+
body: '*'
3255
- selector: google.longrunning.Operations.DeleteOperation
3356
delete: '/v1/{name=organizations/*/locations/*/operations/*}'
57+
additional_bindings:
58+
- delete: '/v1/{name=projects/*/locations/*/operations/*}'
3459
- selector: google.longrunning.Operations.GetOperation
3560
get: '/v1/{name=organizations/*/locations/*/operations/*}'
61+
additional_bindings:
62+
- get: '/v1/{name=projects/*/locations/*/operations/*}'
3663
- selector: google.longrunning.Operations.ListOperations
3764
get: '/v1/{name=organizations/*/locations/*}/operations'
65+
additional_bindings:
66+
- get: '/v1/{name=projects/*/locations/*}/operations'
3867

3968
authentication:
4069
rules:

‎google/cloud/cloudsecuritycompliance/v1/common.proto‎

Lines changed: 181 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2025 Google LLC
1+
// Copyright 2026 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -132,6 +132,18 @@ enum CloudControlCategory {
132132

133133
// The business continuity and disaster recovery (BCDR) category.
134134
CC_CATEGORY_BCDR = 15;
135+
136+
// The admin access category.
137+
CC_CATEGORY_ADMIN_ACCESS = 16;
138+
139+
// DRZ (Data Residency).
140+
CC_CATEGORY_DATA_RESIDENCY = 17;
141+
142+
// RUR (Resource Usage Restriction).
143+
CC_CATEGORY_RESOURCE_USAGE_RESTRICTION = 18;
144+
145+
// SERVICE SPECIFIC
146+
CC_CATEGORY_SERVICE_SPECIFIC = 19;
135147
}
136148

137149
// The cloud provider that's associated with the cloud control.
@@ -240,6 +252,7 @@ message Framework {
240252
option (google.api.resource) = {
241253
type: "cloudsecuritycompliance.googleapis.com/Framework"
242254
pattern: "organizations/{organization}/locations/{location}/frameworks/{framework}"
255+
pattern: "projects/{project}/locations/{location}/frameworks/{framework}"
243256
plural: "frameworks"
244257
singular: "framework"
245258
};
@@ -256,8 +269,12 @@ message Framework {
256269
CUSTOM = 2;
257270
}
258271

259-
// Required. Identifier. The name of the framework, in the format
260-
// `organizations/{organization}/locations/{location}/frameworks/{framework_id}`.
272+
// Required. Identifier. The name of the framework, in one of the following
273+
// formats:
274+
// `organizations/{organization}/locations/{location}/frameworks/{framework}`
275+
// or
276+
// `projects/{project}/locations/{location}/frameworks/{framework}`.
277+
//
261278
// The only supported location is `global`.
262279
string name = 1 [
263280
(google.api.field_behavior) = REQUIRED,
@@ -303,8 +320,11 @@ message Framework {
303320

304321
// The details of a cloud control.
305322
message CloudControlDetails {
306-
// Required. The name of the cloud control, in the format
307-
// `organizations/{organization}/locations/{location}/cloudControls/{cloud-control}`.
323+
// Required. The name of the cloud control, in one of the following formats:
324+
// `organizations/{organization}/locations/{location}/cloudControls/{cloud_control}`
325+
// or
326+
// `projects/{project}/locations/{location}/cloudControls/{cloud_control}`.
327+
//
308328
// The only supported location is `global`.
309329
string name = 1 [(google.api.field_behavior) = REQUIRED];
310330

@@ -318,13 +338,20 @@ message CloudControlDetails {
318338
repeated Parameter parameters = 4 [(google.api.field_behavior) = OPTIONAL];
319339
}
320340

321-
// The reference of a framework, in the format
322-
// `organizations/{organization}/locations/{location}/frameworks/{framework}`.
341+
// The reference of a framework, in one of the following formats:
342+
// - `organizations/{organization}/locations/{location}/frameworks/{framework}`
343+
// - `projects/{project}/locations/{location}/frameworks/{framework}`.
344+
//
323345
// The only supported location is `global`.
324346
message FrameworkReference {
325347
// Required. The major version of the framework. If not specified, the version
326348
// corresponds to the latest version of the framework.
327-
string framework = 1 [(google.api.field_behavior) = REQUIRED];
349+
string framework = 1 [
350+
(google.api.field_behavior) = REQUIRED,
351+
(google.api.resource_reference) = {
352+
type: "cloudsecuritycompliance.googleapis.com/Framework"
353+
}
354+
];
328355

329356
// Optional. The major version of the framework. If not specified, the version
330357
// corresponds to the latest version of the framework.
@@ -348,6 +375,7 @@ message CloudControl {
348375
option (google.api.resource) = {
349376
type: "cloudsecuritycompliance.googleapis.com/CloudControl"
350377
pattern: "organizations/{organization}/locations/{location}/cloudControls/{cloud_control}"
378+
pattern: "projects/{project}/locations/{location}/cloudControls/{cloud_control}"
351379
plural: "cloudControls"
352380
singular: "cloudControl"
353381
};
@@ -364,8 +392,12 @@ message CloudControl {
364392
BUILT_IN = 2;
365393
}
366394

367-
// Required. Identifier. The name of the cloud control, in the format
368-
// `organizations/{organization}/locations/{location}/cloudControls/{cloud_control_id}`.
395+
// Required. Identifier. The name of the cloud control, in either of the
396+
// formats:
397+
// `organizations/{organization}/locations/{location}/cloudControls/{cloud_control}`
398+
// or
399+
// `projects/{project}/locations/{location}/cloudControls/{cloud_control}`.
400+
//
369401
// The only supported location is `global`.
370402
string name = 1 [
371403
(google.api.field_behavior) = REQUIRED,
@@ -535,20 +567,20 @@ message StringList {
535567
message ParamValue {
536568
// The list of possible parameter value types.
537569
oneof kind {
538-
// A string value.
539-
string string_value = 3;
570+
// Optional. A string value.
571+
string string_value = 3 [(google.api.field_behavior) = OPTIONAL];
540572

541-
// A boolean value.
542-
bool bool_value = 4;
573+
// Optional. A boolean value.
574+
bool bool_value = 4 [(google.api.field_behavior) = OPTIONAL];
543575

544-
// A repeated string.
545-
StringList string_list_value = 5;
576+
// Optional. A repeated string.
577+
StringList string_list_value = 5 [(google.api.field_behavior) = OPTIONAL];
546578

547-
// A double value.
548-
double number_value = 6;
579+
// Optional. A double value.
580+
double number_value = 6 [(google.api.field_behavior) = OPTIONAL];
549581

550-
// Sub-parameter values.
551-
Parameter oneof_value = 7;
582+
// Optional. Sub-parameter values.
583+
Parameter oneof_value = 7 [(google.api.field_behavior) = OPTIONAL];
552584
}
553585
}
554586

@@ -639,6 +671,135 @@ message OperationMetadata {
639671
string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
640672
}
641673

674+
// The regulatory control.
675+
message Control {
676+
option (google.api.resource) = {
677+
type: "cloudsecuritycompliance.googleapis.com/Control"
678+
pattern: "organizations/{organization}/locations/{location}/controls/{control}"
679+
pattern: "projects/{project}/locations/{location}/controls/{control}"
680+
plural: "controls"
681+
singular: "control"
682+
};
683+
684+
// The regulatory control family.
685+
enum Family {
686+
// Default value. This value is unused.
687+
FAMILY_UNSPECIFIED = 0;
688+
689+
// Access control
690+
AC = 1;
691+
692+
// Awareness and araining
693+
AT = 2;
694+
695+
// Audit and accountability
696+
AU = 3;
697+
698+
// Certification, accreditation, and security assessments
699+
CA = 4;
700+
701+
// Configuration management
702+
CM = 5;
703+
704+
// Contingency planning
705+
CP = 6;
706+
707+
// Identification and authentication
708+
IA = 7;
709+
710+
// Incident response
711+
IR = 8;
712+
713+
// Maintenance
714+
MA = 9;
715+
716+
// Media protection
717+
MP = 10;
718+
719+
// Physical and environmental protection
720+
PE = 11;
721+
722+
// Security planning
723+
PL = 12;
724+
725+
// Personnel aecurity
726+
PS = 13;
727+
728+
// Risk assessment
729+
RA = 14;
730+
731+
// System services and acquisition
732+
SA = 15;
733+
734+
// System and communications protection
735+
SC = 16;
736+
737+
// System and information integrity
738+
SI = 17;
739+
740+
// Supply chain risk management
741+
SR = 18;
742+
}
743+
744+
// Output only. The name of a regulatory control, in one of the following
745+
// formats:
746+
// - `organizations/{organization}/locations/{location}/controls/{control}`
747+
// - `projects/{project}/locations/{location}/controls/{control}`.
748+
//
749+
// The only supported location is `global`.
750+
string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
751+
752+
// Output only. The friendly name for the regulatory control.
753+
string display_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
754+
755+
// Output only. The description of the regulatory control.
756+
string description = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
757+
758+
// Output only. The regulatory group that the control belongs to.
759+
Family family = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
760+
761+
// Output only. The regulatory family that the control belongs to.
762+
ControlFamily control_family = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
763+
764+
// Output only. The entity that's responsible for the control, whether Google,
765+
// you as the customer, or both.
766+
RegulatoryControlResponsibilityType responsibility_type = 7
767+
[(google.api.field_behavior) = OUTPUT_ONLY];
768+
769+
// Output only. A description of Google's responsibility for the regulatory
770+
// control.
771+
string google_responsibility_description = 8
772+
[(google.api.field_behavior) = OUTPUT_ONLY];
773+
774+
// Output only. A description of Google's responsibility for implementing the
775+
// regulatory control.
776+
string google_responsibility_implementation = 9
777+
[(google.api.field_behavior) = OUTPUT_ONLY];
778+
779+
// Output only. A description of your responsibility for the regulatory
780+
// control.
781+
string customer_responsibility_description = 10
782+
[(google.api.field_behavior) = OUTPUT_ONLY];
783+
784+
// Output only. A description of the your responsibility for implementing the
785+
// regulatory control.
786+
string customer_responsibility_implementation = 11
787+
[(google.api.field_behavior) = OUTPUT_ONLY];
788+
789+
// Output only. A description of the responsibility that's shared between
790+
// Google and you in implementing this control.
791+
string shared_responsibility_description = 12
792+
[(google.api.field_behavior) = OUTPUT_ONLY];
793+
794+
// Output only. A link to the documentation that's related to this control.
795+
string additional_content_uri = 13
796+
[(google.api.field_behavior) = OUTPUT_ONLY];
797+
798+
// Output only. The frameworks that include this control.
799+
repeated string related_frameworks = 14
800+
[(google.api.field_behavior) = OUTPUT_ONLY];
801+
}
802+
642803
// The regulatory family of the control.
643804
message ControlFamily {
644805
// The identifier for the regulatory control family.

0 commit comments

Comments
 (0)