push all website files

This commit is contained in:
Jacob Levine
2019-01-06 13:14:45 -06:00
parent d7301e26c3
commit d2d5d4c04e
15662 changed files with 2166516 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "CrawledUrlProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// A CrawledUrl resource represents a URL that was crawled during a ScanRun. Web
// Security Scanner Service crawls the web applications, following all links
// within the scope of sites, to find the URLs to test against.
message CrawledUrl {
// Output only.
// The http method of the request that was used to visit the URL, in
// uppercase.
string http_method = 1;
// Output only.
// The URL that was crawled.
string url = 2;
// Output only.
// The body of the request that was used to visit the URL.
string body = 3;
}

View File

@@ -0,0 +1,141 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
import "google/cloud/websecurityscanner/v1alpha/finding_addon.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "FindingProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// A Finding resource represents a vulnerability instance identified during a
// ScanRun.
message Finding {
// Types of Findings.
enum FindingType {
// The invalid finding type.
FINDING_TYPE_UNSPECIFIED = 0;
// A page that was served over HTTPS also resources over HTTP. A
// man-in-the-middle attacker could tamper with the HTTP resource and gain
// full access to the website that loads the resource or to monitor the
// actions taken by the user.
MIXED_CONTENT = 1;
// The version of an included library is known to contain a security issue.
// The scanner checks the version of library in use against a known list of
// vulnerable libraries. False positives are possible if the version
// detection fails or if the library has been manually patched.
OUTDATED_LIBRARY = 2;
// This type of vulnerability occurs when the value of a request parameter
// is reflected at the beginning of the response, for example, in requests
// using JSONP. Under certain circumstances, an attacker may be able to
// supply an alphanumeric-only Flash file in the vulnerable parameter
// causing the browser to execute the Flash file as if it originated on the
// vulnerable server.
ROSETTA_FLASH = 5;
// A cross-site scripting (XSS) bug is found via JavaScript callback. For
// detailed explanations on XSS, see
// https://www.google.com/about/appsecurity/learning/xss/.
XSS_CALLBACK = 3;
// A potential cross-site scripting (XSS) bug due to JavaScript breakage.
// In some circumstances, the application under test might modify the test
// string before it is parsed by the browser. When the browser attempts to
// runs this modified test string, it will likely break and throw a
// JavaScript execution error, thus an injection issue is occurring.
// However, it may not be exploitable. Manual verification is needed to see
// if the test string modifications can be evaded and confirm that the issue
// is in fact an XSS vulnerability. For detailed explanations on XSS, see
// https://www.google.com/about/appsecurity/learning/xss/.
XSS_ERROR = 4;
// An application appears to be transmitting a password field in clear text.
// An attacker can eavesdrop network traffic and sniff the password field.
CLEAR_TEXT_PASSWORD = 6;
}
// Output only.
// The resource name of the Finding. The name follows the format of
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanruns/{scanRunId}/findings/{findingId}'.
// The finding IDs are generated by the system.
string name = 1;
// Output only.
// The type of the Finding.
FindingType finding_type = 2;
// Output only.
// The http method of the request that triggered the vulnerability, in
// uppercase.
string http_method = 3;
// Output only.
// The URL produced by the server-side fuzzer and used in the request that
// triggered the vulnerability.
string fuzzed_url = 4;
// Output only.
// The body of the request that triggered the vulnerability.
string body = 5;
// Output only.
// The description of the vulnerability.
string description = 6;
// Output only.
// The URL containing human-readable payload that user can leverage to
// reproduce the vulnerability.
string reproduction_url = 7;
// Output only.
// If the vulnerability was originated from nested IFrame, the immediate
// parent IFrame is reported.
string frame_url = 8;
// Output only.
// The URL where the browser lands when the vulnerability is detected.
string final_url = 9;
// Output only.
// The tracking ID uniquely identifies a vulnerability instance across
// multiple ScanRuns.
string tracking_id = 10;
// Output only.
// An addon containing information about outdated libraries.
OutdatedLibrary outdated_library = 11;
// Output only.
// An addon containing detailed information regarding any resource causing the
// vulnerability such as JavaScript sources, image, audio files, etc.
ViolatingResource violating_resource = 12;
// Output only.
// An addon containing information about request parameters which were found
// to be vulnerable.
VulnerableParameters vulnerable_parameters = 13;
// Output only.
// An addon containing information reported for an XSS, if any.
Xss xss = 14;
}

View File

@@ -0,0 +1,62 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "FindingAddonProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// Information reported for an outdated library.
message OutdatedLibrary {
// The name of the outdated library.
string library_name = 1;
// The version number.
string version = 2;
// URLs to learn more information about the vulnerabilities in the library.
repeated string learn_more_urls = 3;
}
// Information regarding any resource causing the vulnerability such
// as JavaScript sources, image, audio files, etc.
message ViolatingResource {
// The MIME type of this resource.
string content_type = 1;
// URL of this violating resource.
string resource_url = 2;
}
// Information about vulnerable request parameters.
message VulnerableParameters {
// The vulnerable parameter names.
repeated string parameter_names = 1;
}
// Information reported for an XSS.
message Xss {
// Stack traces leading to the point where the XSS occurred.
repeated string stack_traces = 1;
// An error message generated by a javascript breakage.
string error_message = 2;
}

View File

@@ -0,0 +1,38 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
import "google/cloud/websecurityscanner/v1alpha/finding.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "FindingTypeStatsProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// A FindingTypeStats resource represents stats regarding a specific FindingType
// of Findings under a given ScanRun.
message FindingTypeStats {
// Output only.
// The finding type associated with the stats.
Finding.FindingType finding_type = 1;
// Output only.
// The count of findings belonging to this finding type.
int32 finding_count = 2;
}

View File

@@ -0,0 +1,150 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
import "google/protobuf/timestamp.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "ScanConfigProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// A ScanConfig resource contains the configurations to launch a scan.
message ScanConfig {
// Scan authentication configuration.
message Authentication {
// Describes authentication configuration that uses a Google account.
message GoogleAccount {
// Required.
// The user name of the Google account.
string username = 1;
// Input only.
// Required.
// The password of the Google account. The credential is stored encrypted
// and not returned in any response.
string password = 2;
}
// Describes authentication configuration that uses a custom account.
message CustomAccount {
// Required.
// The user name of the custom account.
string username = 1;
// Input only.
// Required.
// The password of the custom account. The credential is stored encrypted
// and not returned in any response.
string password = 2;
// Required.
// The login form URL of the website.
string login_url = 3;
}
// Required.
// Authentication configuration
oneof authentication {
// Authentication using a Google account.
GoogleAccount google_account = 1;
// Authentication using a custom account.
CustomAccount custom_account = 2;
}
}
// Scan schedule configuration.
message Schedule {
// A timestamp indicates when the next run will be scheduled. The value is
// refreshed by the server after each run. If unspecified, it will default
// to current server time, which means the scan will be scheduled to start
// immediately.
google.protobuf.Timestamp schedule_time = 1;
// Required.
// The duration of time between executions in days.
int32 interval_duration_days = 2;
}
// Type of user agents used for scanning.
enum UserAgent {
// The user agent is unknown. Service will default to CHROME_LINUX.
USER_AGENT_UNSPECIFIED = 0;
// Chrome on Linux. This is the service default if unspecified.
CHROME_LINUX = 1;
// Chrome on Android.
CHROME_ANDROID = 2;
// Safari on IPhone.
SAFARI_IPHONE = 3;
}
// Cloud platforms supported by Cloud Web Security Scanner.
enum TargetPlatform {
// The target platform is unknown. Requests with this enum value will be
// rejected with INVALID_ARGUMENT error.
TARGET_PLATFORM_UNSPECIFIED = 0;
// Google App Engine service.
APP_ENGINE = 1;
// Google Compute Engine service.
COMPUTE = 2;
}
// The resource name of the ScanConfig. The name follows the format of
// 'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are
// generated by the system.
string name = 1;
// Required.
// The user provided display name of the ScanConfig.
string display_name = 2;
// The maximum QPS during scanning. A valid value ranges from 5 to 20
// inclusively. If the field is unspecified or its value is set 0, server will
// default to 15. Other values outside of [5, 20] range will be rejected with
// INVALID_ARGUMENT error.
int32 max_qps = 3;
// Required.
// The starting URLs from which the scanner finds site pages.
repeated string starting_urls = 4;
// The authentication configuration. If specified, service will use the
// authentication configuration during scanning.
Authentication authentication = 5;
// The user agent used during scanning.
UserAgent user_agent = 6;
// The blacklist URL patterns as described in
// https://cloud.google.com/security-scanner/docs/excluded-urls
repeated string blacklist_patterns = 7;
// The schedule of the ScanConfig.
Schedule schedule = 8;
// Set of Cloud Platforms targeted by the scan. If empty, APP_ENGINE will be
// used as a default.
repeated TargetPlatform target_platforms = 9;
}

View File

@@ -0,0 +1,108 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
import "google/protobuf/timestamp.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "ScanRunProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// A ScanRun is a output-only resource representing an actual run of the scan.
message ScanRun {
// Types of ScanRun execution state.
enum ExecutionState {
// Represents an invalid state caused by internal server error. This value
// should never be returned.
EXECUTION_STATE_UNSPECIFIED = 0;
// The scan is waiting in the queue.
QUEUED = 1;
// The scan is in progress.
SCANNING = 2;
// The scan is either finished or stopped by user.
FINISHED = 3;
}
// Types of ScanRun result state.
enum ResultState {
// Default value. This value is returned when the ScanRun is not yet
// finished.
RESULT_STATE_UNSPECIFIED = 0;
// The scan finished without errors.
SUCCESS = 1;
// The scan finished with errors.
ERROR = 2;
// The scan was terminated by user.
KILLED = 3;
}
// Output only.
// The resource name of the ScanRun. The name follows the format of
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.
// The ScanRun IDs are generated by the system.
string name = 1;
// Output only.
// The execution state of the ScanRun.
ExecutionState execution_state = 2;
// Output only.
// The result state of the ScanRun. This field is only available after the
// execution state reaches "FINISHED".
ResultState result_state = 3;
// Output only.
// The time at which the ScanRun started.
google.protobuf.Timestamp start_time = 4;
// Output only.
// The time at which the ScanRun reached termination state - that the ScanRun
// is either finished or stopped by user.
google.protobuf.Timestamp end_time = 5;
// Output only.
// The number of URLs crawled during this ScanRun. If the scan is in progress,
// the value represents the number of URLs crawled up to now.
int64 urls_crawled_count = 6;
// Output only.
// The number of URLs tested during this ScanRun. If the scan is in progress,
// the value represents the number of URLs tested up to now. The number of
// URLs tested is usually larger than the number URLS crawled because
// typically a crawled URL is tested with multiple test payloads.
int64 urls_tested_count = 7;
// Output only.
// Whether the scan run has found any vulnerabilities.
bool has_vulnerabilities = 8;
// Output only.
// The percentage of total completion ranging from 0 to 100.
// If the scan is in queue, the value is 0.
// If the scan is running, the value ranges from 0 to 100.
// If the scan is finished, the value is 100.
int32 progress_percent = 9;
}

View File

@@ -0,0 +1,346 @@
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.websecurityscanner.v1alpha;
import "google/api/annotations.proto";
import "google/cloud/websecurityscanner/v1alpha/crawled_url.proto";
import "google/cloud/websecurityscanner/v1alpha/finding.proto";
import "google/cloud/websecurityscanner/v1alpha/finding_type_stats.proto";
import "google/cloud/websecurityscanner/v1alpha/scan_config.proto";
import "google/cloud/websecurityscanner/v1alpha/scan_run.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/field_mask.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "WebSecurityScannerProto";
option java_package = "com.google.cloud.websecurityscanner.v1alpha";
// Cloud Web Security Scanner Service identifies security vulnerabilities in web
// applications hosted on Google Cloud Platform. It crawls your application, and
// attempts to exercise as many user inputs and event handlers as possible.
service WebSecurityScanner {
// Creates a new ScanConfig.
rpc CreateScanConfig(CreateScanConfigRequest) returns (ScanConfig) {
option (google.api.http) = {
post: "/v1alpha/{parent=projects/*}/scanConfigs"
body: "scan_config"
};
}
// Deletes an existing ScanConfig and its child resources.
rpc DeleteScanConfig(DeleteScanConfigRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1alpha/{name=projects/*/scanConfigs/*}"
};
}
// Gets a ScanConfig.
rpc GetScanConfig(GetScanConfigRequest) returns (ScanConfig) {
option (google.api.http) = {
get: "/v1alpha/{name=projects/*/scanConfigs/*}"
};
}
// Lists ScanConfigs under a given project.
rpc ListScanConfigs(ListScanConfigsRequest) returns (ListScanConfigsResponse) {
option (google.api.http) = {
get: "/v1alpha/{parent=projects/*}/scanConfigs"
};
}
// Updates a ScanConfig. This method support partial update of a ScanConfig.
rpc UpdateScanConfig(UpdateScanConfigRequest) returns (ScanConfig) {
option (google.api.http) = {
patch: "/v1alpha/{scan_config.name=projects/*/scanConfigs/*}"
body: "scan_config"
};
}
// Start a ScanRun according to the given ScanConfig.
rpc StartScanRun(StartScanRunRequest) returns (ScanRun) {
option (google.api.http) = {
post: "/v1alpha/{name=projects/*/scanConfigs/*}:start"
body: "*"
};
}
// Gets a ScanRun.
rpc GetScanRun(GetScanRunRequest) returns (ScanRun) {
option (google.api.http) = {
get: "/v1alpha/{name=projects/*/scanConfigs/*/scanRuns/*}"
};
}
// Lists ScanRuns under a given ScanConfig, in descending order of ScanRun
// stop time.
rpc ListScanRuns(ListScanRunsRequest) returns (ListScanRunsResponse) {
option (google.api.http) = {
get: "/v1alpha/{parent=projects/*/scanConfigs/*}/scanRuns"
};
}
// Stops a ScanRun. The stopped ScanRun is returned.
rpc StopScanRun(StopScanRunRequest) returns (ScanRun) {
option (google.api.http) = {
post: "/v1alpha/{name=projects/*/scanConfigs/*/scanRuns/*}:stop"
body: "*"
};
}
// List CrawledUrls under a given ScanRun.
rpc ListCrawledUrls(ListCrawledUrlsRequest) returns (ListCrawledUrlsResponse) {
option (google.api.http) = {
get: "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/crawledUrls"
};
}
// Gets a Finding.
rpc GetFinding(GetFindingRequest) returns (Finding) {
option (google.api.http) = {
get: "/v1alpha/{name=projects/*/scanConfigs/*/scanRuns/*/findings/*}"
};
}
// List Findings under a given ScanRun.
rpc ListFindings(ListFindingsRequest) returns (ListFindingsResponse) {
option (google.api.http) = {
get: "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings"
};
}
// List all FindingTypeStats under a given ScanRun.
rpc ListFindingTypeStats(ListFindingTypeStatsRequest) returns (ListFindingTypeStatsResponse) {
option (google.api.http) = {
get: "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats"
};
}
}
// Request for the `CreateScanConfig` method.
message CreateScanConfigRequest {
// Required.
// The parent resource name where the scan is created, which should be a
// project resource name in the format 'projects/{projectId}'.
string parent = 1;
// Required.
// The ScanConfig to be created.
ScanConfig scan_config = 2;
}
// Request for the `DeleteScanConfig` method.
message DeleteScanConfigRequest {
// Required.
// The resource name of the ScanConfig to be deleted. The name follows the
// format of 'projects/{projectId}/scanConfigs/{scanConfigId}'.
string name = 1;
}
// Request for the `GetScanConfig` method.
message GetScanConfigRequest {
// Required.
// The resource name of the ScanConfig to be returned. The name follows the
// format of 'projects/{projectId}/scanConfigs/{scanConfigId}'.
string name = 1;
}
// Request for the `ListScanConfigs` method.
message ListScanConfigsRequest {
// Required.
// The parent resource name, which should be a project resource name in the
// format 'projects/{projectId}'.
string parent = 1;
// A token identifying a page of results to be returned. This should be a
// `next_page_token` value returned from a previous List request.
// If unspecified, the first page of results is returned.
string page_token = 2;
// The maximum number of ScanConfigs to return, can be limited by server.
// If not specified or not positive, the implementation will select a
// reasonable value.
int32 page_size = 3;
}
// Request for the `UpdateScanConfigRequest` method.
message UpdateScanConfigRequest {
// Required.
// The ScanConfig to be updated. The name field must be set to identify the
// resource to be updated. The values of fields not covered by the mask
// will be ignored.
ScanConfig scan_config = 2;
// Required.
// The update mask applies to the resource. For the `FieldMask` definition,
// see
// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
google.protobuf.FieldMask update_mask = 3;
}
// Response for the `ListScanConfigs` method.
message ListScanConfigsResponse {
// The list of ScanConfigs returned.
repeated ScanConfig scan_configs = 1;
// Token to retrieve the next page of results, or empty if there are no
// more results in the list.
string next_page_token = 2;
}
// Request for the `StartScanRun` method.
message StartScanRunRequest {
// Required.
// The resource name of the ScanConfig to be used. The name follows the
// format of 'projects/{projectId}/scanConfigs/{scanConfigId}'.
string name = 1;
}
// Request for the `GetScanRun` method.
message GetScanRunRequest {
// Required.
// The resource name of the ScanRun to be returned. The name follows the
// format of
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.
string name = 1;
}
// Request for the `ListScanRuns` method.
message ListScanRunsRequest {
// Required.
// The parent resource name, which should be a scan resource name in the
// format 'projects/{projectId}/scanConfigs/{scanConfigId}'.
string parent = 1;
// A token identifying a page of results to be returned. This should be a
// `next_page_token` value returned from a previous List request.
// If unspecified, the first page of results is returned.
string page_token = 2;
// The maximum number of ScanRuns to return, can be limited by server.
// If not specified or not positive, the implementation will select a
// reasonable value.
int32 page_size = 3;
}
// Response for the `ListScanRuns` method.
message ListScanRunsResponse {
// The list of ScanRuns returned.
repeated ScanRun scan_runs = 1;
// Token to retrieve the next page of results, or empty if there are no
// more results in the list.
string next_page_token = 2;
}
// Request for the `StopScanRun` method.
message StopScanRunRequest {
// Required.
// The resource name of the ScanRun to be stopped. The name follows the
// format of
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.
string name = 1;
}
// Request for the `ListCrawledUrls` method.
message ListCrawledUrlsRequest {
// Required.
// The parent resource name, which should be a scan run resource name in the
// format
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.
string parent = 1;
// A token identifying a page of results to be returned. This should be a
// `next_page_token` value returned from a previous List request.
// If unspecified, the first page of results is returned.
string page_token = 2;
// The maximum number of CrawledUrls to return, can be limited by server.
// If not specified or not positive, the implementation will select a
// reasonable value.
int32 page_size = 3;
}
// Response for the `ListCrawledUrls` method.
message ListCrawledUrlsResponse {
// The list of CrawledUrls returned.
repeated CrawledUrl crawled_urls = 1;
// Token to retrieve the next page of results, or empty if there are no
// more results in the list.
string next_page_token = 2;
}
// Request for the `GetFinding` method.
message GetFindingRequest {
// Required.
// The resource name of the Finding to be returned. The name follows the
// format of
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}/findings/{findingId}'.
string name = 1;
}
// Request for the `ListFindings` method.
message ListFindingsRequest {
// Required.
// The parent resource name, which should be a scan run resource name in the
// format
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.
string parent = 1;
// The filter expression. The expression must be in the format: <field>
// <operator> <value>.
// Supported field: 'finding_type'.
// Supported operator: '='.
string filter = 2;
// A token identifying a page of results to be returned. This should be a
// `next_page_token` value returned from a previous List request.
// If unspecified, the first page of results is returned.
string page_token = 3;
// The maximum number of Findings to return, can be limited by server.
// If not specified or not positive, the implementation will select a
// reasonable value.
int32 page_size = 4;
}
// Response for the `ListFindings` method.
message ListFindingsResponse {
// The list of Findings returned.
repeated Finding findings = 1;
// Token to retrieve the next page of results, or empty if there are no
// more results in the list.
string next_page_token = 2;
}
// Request for the `ListFindingTypeStats` method.
message ListFindingTypeStatsRequest {
// Required.
// The parent resource name, which should be a scan run resource name in the
// format
// 'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.
string parent = 1;
}
// Response for the `ListFindingTypeStats` method.
message ListFindingTypeStatsResponse {
// The list of FindingTypeStats returned.
repeated FindingTypeStats finding_type_stats = 1;
}