type: com.google.api.codegen.ConfigProto config_schema_version: 1.0.0 # The settings of generated code in a specific language. language_settings: java: package_name: com.google.cloud.securitycenter.v1 python: package_name: google.cloud.securitycenter_v1.gapic go: package_name: cloud.google.com/go/securitycenter/apiv1 csharp: package_name: Google.Cloud.SecurityCenter.V1 ruby: package_name: Google::Cloud::SecurityCenter::V1 php: package_name: Google\Cloud\SecurityCenter\V1 nodejs: package_name: security-center.v1 domain_layer_location: google-cloud # A list of API interface configurations. interfaces: # The fully qualified name of the API interface. - name: google.cloud.securitycenter.v1.SecurityCenter # A list of resource collection configurations. # Consists of a name_pattern and an entity_name. # The name_pattern is a pattern to describe the names of the resources of this # collection, using the platform's conventions for URI patterns. A generator # may use this to generate methods to compose and decompose such names. The # pattern should use named placeholders as in `shelves/{shelf}/books/{book}`; # those will be taken as hints for the parameter names of the generated # methods. If empty, no name methods are generated. # The entity_name is the name to be used as a basis for generated methods and # classes. collections: - name_pattern: organizations/{organization} entity_name: organization - name_pattern: organizations/{organization}/organizationSettings entity_name: organization_settings - name_pattern: organizations/{organization}/assets/{asset} entity_name: asset - name_pattern: organizations/{organization}/assets/{asset}/securityMarks entity_name: asset_security_marks - name_pattern: organizations/{organization}/sources/{source} entity_name: source - name_pattern: organizations/{organization}/sources/- entity_name: organization_sources - name_pattern: organizations/{organization}/sources/{source}/findings/{finding} entity_name: finding - name_pattern: organizations/{organization}/sources/{source}/findings/{finding}/securityMarks entity_name: finding_security_marks # Definition for retryable codes. retry_codes_def: - name: idempotent retry_codes: - UNAVAILABLE - name: non_idempotent retry_codes: [] # Definition for retry/backoff parameters. retry_params_def: - name: default initial_retry_delay_millis: 100 retry_delay_multiplier: 1.3 max_retry_delay_millis: 60000 initial_rpc_timeout_millis: 20000 rpc_timeout_multiplier: 1 max_rpc_timeout_millis: 20000 total_timeout_millis: 600000 # A list of method configurations. # Common properties: # # name - The simple name of the method. # # flattening - Specifies the configuration for parameter flattening. # Describes the parameter groups for which a generator should produce method # overloads which allow a client to directly pass request message fields as # method parameters. This information may or may not be used, depending on # the target language. # Consists of groups, which each represent a list of parameters to be # flattened. Each parameter listed must be a field of the request message. # # required_fields - Fields that are always required for a request to be # valid. # # resource_name_treatment - An enum that specifies how to treat the resource # name formats defined in the field_name_patterns and # response_field_name_patterns fields. # UNSET: default value # NONE: the collection configs will not be used by the generated code. # VALIDATE: string fields will be validated by the client against the # specified resource name formats. # STATIC_TYPES: the client will use generated types for resource names. # # page_streaming - Specifies the configuration for paging. # Describes information for generating a method which transforms a paging # list RPC into a stream of resources. # Consists of a request and a response. # The request specifies request information of the list method. It defines # which fields match the paging pattern in the request. The request consists # of a page_size_field and a token_field. The page_size_field is the name of # the optional field specifying the maximum number of elements to be # returned in the response. The token_field is the name of the field in the # request containing the page token. # The response specifies response information of the list method. It defines # which fields match the paging pattern in the response. The response # consists of a token_field and a resources_field. The token_field is the # name of the field in the response containing the next page token. The # resources_field is the name of the field in the response containing the # list of resources belonging to the page. # # retry_codes_name - Specifies the configuration for retryable codes. The # name must be defined in interfaces.retry_codes_def. # # retry_params_name - Specifies the configuration for retry/backoff # parameters. The name must be defined in interfaces.retry_params_def. # # field_name_patterns - Maps the field name of the request type to # entity_name of interfaces.collections. # Specifies the string pattern that the field must follow. # # timeout_millis - Specifies the default timeout for a non-retrying call. If # the call is retrying, refer to retry_params_name instead. methods: - name: CreateSource flattening: groups: - parameters: - parent - source required_fields: - parent - source retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: organization timeout_millis: 60000 - name: CreateFinding flattening: groups: - parameters: - parent - finding_id - finding required_fields: - parent - finding_id - finding retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: source timeout_millis: 60000 - name: GetIamPolicy flattening: groups: - parameters: - resource required_fields: - resource retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: resource: source timeout_millis: 60000 - name: GetOrganizationSettings flattening: groups: - parameters: - name required_fields: - name retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: name: organization_settings timeout_millis: 60000 - name: GetSource flattening: groups: - parameters: - name required_fields: - name retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: name: source timeout_millis: 60000 - name: GroupAssets required_fields: - parent - group_by page_streaming: request: page_size_field: page_size token_field: page_token response: token_field: next_page_token resources_field: group_by_results retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: organization timeout_millis: 60000 - name: GroupFindings flattening: groups: - parameters: - parent - group_by required_fields: - parent - group_by page_streaming: request: page_size_field: page_size token_field: page_token response: token_field: next_page_token resources_field: group_by_results retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: source timeout_millis: 60000 - name: ListAssets required_fields: - parent page_streaming: request: page_size_field: page_size token_field: page_token response: token_field: next_page_token resources_field: list_assets_results retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: organization timeout_millis: 60000 - name: ListFindings required_fields: - parent page_streaming: request: page_size_field: page_size token_field: page_token response: token_field: next_page_token resources_field: list_findings_results retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: source timeout_millis: 60000 - name: ListSources flattening: groups: - parameters: - parent required_fields: - parent page_streaming: request: page_size_field: page_size token_field: page_token response: token_field: next_page_token resources_field: sources retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: organization timeout_millis: 60000 - name: RunAssetDiscovery flattening: groups: - parameters: - parent required_fields: - parent retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: parent: organization long_running: return_type: google.cloud.securitycenter.v1.RunAssetDiscoveryResponse metadata_type: google.protobuf.Empty initial_poll_delay_millis: 500 poll_delay_multiplier: 1.5 max_poll_delay_millis: 5000 total_poll_timeout_millis: 300000 timeout_millis: 60000 - name: SetFindingState flattening: groups: - parameters: - name - state - start_time required_fields: - name - state - start_time retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: name: finding timeout_millis: 60000 - name: SetIamPolicy flattening: groups: - parameters: - resource - policy required_fields: - resource - policy retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: resource: source timeout_millis: 60000 - name: TestIamPermissions flattening: groups: - parameters: - resource - permissions required_fields: - resource - permissions retry_codes_name: idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: resource: source timeout_millis: 60000 - name: UpdateFinding flattening: groups: - parameters: - finding required_fields: - finding retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: finding.name: finding timeout_millis: 60000 - name: UpdateOrganizationSettings flattening: groups: - parameters: - organization_settings required_fields: - organization_settings retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: organization_settings.name: organization_settings timeout_millis: 60000 - name: UpdateSource flattening: groups: - parameters: - source required_fields: - source retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: source.name: source timeout_millis: 60000 - name: UpdateSecurityMarks flattening: groups: - parameters: - security_marks required_fields: - security_marks retry_codes_name: non_idempotent retry_params_name: default resource_name_treatment: STATIC_TYPES field_name_patterns: security_marks.name: securitymarks_oneof timeout_millis: 60000 # Mappings for STATIC_TYPES # See https://docs.google.com/document/d/1meVVWXYOGRApOH_fKQf48qjce4ewDv_ZiDRClmmCs2w/edit # collection_oneofs: - oneof_name: securitymarks_oneof collection_names: - asset_security_marks - finding_security_marks resource_name_generation: - message_name: Asset field_entity_map: name: asset - message_name: CreateSourceRequest field_entity_map: parent: organization - message_name: CreateFindingRequest field_entity_map: parent: source - message_name: Finding field_entity_map: name: finding - message_name: google.iam.v1.GetIamPolicyRequest field_entity_map: resource: "*" - message_name: GetOrganizationSettingsRequest field_entity_map: name: organization_settings - message_name: GetSourceRequest field_entity_map: name: source - message_name: GroupAssetsRequest field_entity_map: parent: organization - message_name: GroupFindingsRequest field_entity_map: parent: source - message_name: ListAssetsRequest field_entity_map: parent: organization - message_name: ListFindingsRequest field_entity_map: parent: source - message_name: ListSourcesRequest field_entity_map: parent: organization - message_name: RunAssetDiscoveryRequest field_entity_map: parent: organization - message_name: SetFindingStateRequest field_entity_map: name: finding - message_name: google.iam.v1.SetIamPolicyRequest field_entity_map: resource: "*" - message_name: Source field_entity_map: name: source - message_name: google.iam.v1.TestIamPermissionsRequest field_entity_map: resource: "*" - message_name: UpdateFindingRequest field_entity_map: name: finding - message_name: UpdateOrganizationSettingsRequest field_entity_map: name: organization_settings - message_name: UpdateSourceRequest field_entity_map: name: source - message_name: UpdateSecurityMarksRequest field_entity_map: name: securitymarks_oneof