Skip to content
This repository has been archived by the owner on Sep 5, 2023. It is now read-only.

Commit

Permalink
feat: add v1 (#42)
Browse files Browse the repository at this point in the history
  • Loading branch information
busunkim96 committed Mar 30, 2021
1 parent 838be24 commit 8993d41
Show file tree
Hide file tree
Showing 41 changed files with 11,281 additions and 7 deletions.
16 changes: 13 additions & 3 deletions docs/index.rst
Expand Up @@ -2,17 +2,27 @@

.. include:: multiprocessing.rst

Api Reference
API Reference
-------------
This package includes clients for multiple versions of the Web Security Scanner API. By default, you will get ``v1beta``, the latest version.
This package includes clients for multiple versions of the Web Security Scanner API. By default, you will get ``v1``, the latest version.

.. toctree::
:maxdepth: 2

websecurityscanner_v1/services
websecurityscanner_v1/types

The previous releases spelled ``v1beta`` and ``v1alpha`` are provided to continue to support code previously written against it. In order to use it, you will want to import from it e.g., ``google.cloud.websecurityscanner_v1alpha`` in lieu of ``google.cloud.websecurityscanner`` (or the equivalent ``google.cloud.websecurityscanner_v1``).


v1beta
~~~~~~~
.. toctree::
:maxdepth: 2

websecurityscanner_v1beta/services
websecurityscanner_v1beta/types

The previous alpha release, spelled ``v1alpha`` is provided to continue to support code previously written against it. In order to use it, you will want to import from it e.g., ``google.cloud.websecurityscanner_v1alpha`` in lieu of ``google.cloud.websecurityscanner`` (or the equivalent ``google.cloud.websecurityscanner_v1beta``).

v1alpha
~~~~~~~
Expand Down
6 changes: 6 additions & 0 deletions docs/websecurityscanner_v1/services.rst
@@ -0,0 +1,6 @@
Services for Google Cloud Websecurityscanner v1 API
===================================================
.. toctree::
:maxdepth: 2

web_security_scanner
7 changes: 7 additions & 0 deletions docs/websecurityscanner_v1/types.rst
@@ -0,0 +1,7 @@
Types for Google Cloud Websecurityscanner v1 API
================================================

.. automodule:: google.cloud.websecurityscanner_v1.types
:members:
:undoc-members:
:show-inheritance:
11 changes: 11 additions & 0 deletions docs/websecurityscanner_v1/web_security_scanner.rst
@@ -0,0 +1,11 @@
WebSecurityScanner
------------------------------------

.. automodule:: google.cloud.websecurityscanner_v1.services.web_security_scanner
:members:
:inherited-members:


.. automodule:: google.cloud.websecurityscanner_v1.services.web_security_scanner.pagers
:members:
:inherited-members:
87 changes: 87 additions & 0 deletions google/cloud/websecurityscanner_v1/__init__.py
@@ -0,0 +1,87 @@
# -*- coding: utf-8 -*-

# Copyright 2020 Google LLC
#
# 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.
#

from .services.web_security_scanner import WebSecurityScannerClient
from .types.crawled_url import CrawledUrl
from .types.finding import Finding
from .types.finding_addon import Form
from .types.finding_addon import OutdatedLibrary
from .types.finding_addon import ViolatingResource
from .types.finding_addon import VulnerableHeaders
from .types.finding_addon import VulnerableParameters
from .types.finding_addon import Xss
from .types.finding_type_stats import FindingTypeStats
from .types.scan_config import ScanConfig
from .types.scan_config_error import ScanConfigError
from .types.scan_run import ScanRun
from .types.scan_run_error_trace import ScanRunErrorTrace
from .types.scan_run_warning_trace import ScanRunWarningTrace
from .types.web_security_scanner import CreateScanConfigRequest
from .types.web_security_scanner import DeleteScanConfigRequest
from .types.web_security_scanner import GetFindingRequest
from .types.web_security_scanner import GetScanConfigRequest
from .types.web_security_scanner import GetScanRunRequest
from .types.web_security_scanner import ListCrawledUrlsRequest
from .types.web_security_scanner import ListCrawledUrlsResponse
from .types.web_security_scanner import ListFindingTypeStatsRequest
from .types.web_security_scanner import ListFindingTypeStatsResponse
from .types.web_security_scanner import ListFindingsRequest
from .types.web_security_scanner import ListFindingsResponse
from .types.web_security_scanner import ListScanConfigsRequest
from .types.web_security_scanner import ListScanConfigsResponse
from .types.web_security_scanner import ListScanRunsRequest
from .types.web_security_scanner import ListScanRunsResponse
from .types.web_security_scanner import StartScanRunRequest
from .types.web_security_scanner import StopScanRunRequest
from .types.web_security_scanner import UpdateScanConfigRequest


__all__ = (
"CrawledUrl",
"CreateScanConfigRequest",
"DeleteScanConfigRequest",
"Finding",
"FindingTypeStats",
"Form",
"GetFindingRequest",
"GetScanConfigRequest",
"GetScanRunRequest",
"ListCrawledUrlsRequest",
"ListCrawledUrlsResponse",
"ListFindingTypeStatsRequest",
"ListFindingTypeStatsResponse",
"ListFindingsRequest",
"ListFindingsResponse",
"ListScanConfigsRequest",
"ListScanConfigsResponse",
"ListScanRunsRequest",
"ListScanRunsResponse",
"OutdatedLibrary",
"ScanConfig",
"ScanConfigError",
"ScanRun",
"ScanRunErrorTrace",
"ScanRunWarningTrace",
"StartScanRunRequest",
"StopScanRunRequest",
"UpdateScanConfigRequest",
"ViolatingResource",
"VulnerableHeaders",
"VulnerableParameters",
"Xss",
"WebSecurityScannerClient",
)
40 changes: 40 additions & 0 deletions google/cloud/websecurityscanner_v1/proto/crawled_url.proto
@@ -0,0 +1,40 @@
// Copyright 2020 Google LLC
//
// 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.v1;

option csharp_namespace = "Google.Cloud.WebSecurityScanner.V1";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "CrawledUrlProto";
option java_package = "com.google.cloud.websecurityscanner.v1";
option php_namespace = "Google\\Cloud\\WebSecurityScanner\\V1";
option ruby_package = "Google::Cloud::WebSecurityScanner::V1";

// 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;
}
119 changes: 119 additions & 0 deletions google/cloud/websecurityscanner_v1/proto/finding.proto
@@ -0,0 +1,119 @@
// Copyright 2020 Google LLC
//
// 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.v1;

import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/cloud/websecurityscanner/v1/finding_addon.proto";

option csharp_namespace = "Google.Cloud.WebSecurityScanner.V1";
option go_package = "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1;websecurityscanner";
option java_multiple_files = true;
option java_outer_classname = "FindingProto";
option java_package = "com.google.cloud.websecurityscanner.v1";
option php_namespace = "Google\\Cloud\\WebSecurityScanner\\V1";
option ruby_package = "Google::Cloud::WebSecurityScanner::V1";

// A Finding resource represents a vulnerability instance identified during a
// ScanRun.
message Finding {
option (google.api.resource) = {
type: "websecurityscanner.googleapis.com/Finding"
pattern: "projects/{project}/scanConfigs/{scan_config}/scanRuns/{scan_run}/findings/{finding}"
};

// The severity level of a vulnerability.
enum Severity {
// No severity specified. The default value.
SEVERITY_UNSPECIFIED = 0;

// Critical severity.
CRITICAL = 1;

// High severity.
HIGH = 2;

// Medium severity.
MEDIUM = 3;

// Low severity.
LOW = 4;
}

// 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.
// Detailed and up-to-date information on findings can be found here:
// https://cloud.google.com/security-command-center/docs/how-to-remediate-web-security-scanner-findings
string finding_type = 2;

// Output only. The severity level of the reported vulnerability.
Severity severity = 17 [(google.api.field_behavior) = OUTPUT_ONLY];

// 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 reported for a vulnerability with an HTML
// form, if any.
Form form = 16;

// 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 vulnerable or missing HTTP headers.
VulnerableHeaders vulnerable_headers = 15;

// 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;
}

0 comments on commit 8993d41

Please sign in to comment.