firewall.proto 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. // Copyright 2021 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.appengine.v1beta;
  16. option csharp_namespace = "Google.Cloud.AppEngine.V1Beta";
  17. option go_package = "google.golang.org/genproto/googleapis/appengine/v1beta;appengine";
  18. option java_multiple_files = true;
  19. option java_outer_classname = "FirewallProto";
  20. option java_package = "com.google.appengine.v1beta.firewall";
  21. option php_namespace = "Google\\Cloud\\AppEngine\\V1beta";
  22. option ruby_package = "Google::Cloud::AppEngine::V1beta";
  23. // A single firewall rule that is evaluated against incoming traffic
  24. // and provides an action to take on matched requests.
  25. message FirewallRule {
  26. // Available actions to take on matching requests.
  27. enum Action {
  28. UNSPECIFIED_ACTION = 0;
  29. // Matching requests are allowed.
  30. ALLOW = 1;
  31. // Matching requests are denied.
  32. DENY = 2;
  33. }
  34. // A positive integer between [1, Int32.MaxValue-1] that defines the order of
  35. // rule evaluation. Rules with the lowest priority are evaluated first.
  36. //
  37. // A default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic
  38. // when no previous rule matches. Only the action of this rule can be modified
  39. // by the user.
  40. int32 priority = 1;
  41. // The action to take on matched requests.
  42. Action action = 2;
  43. // IP address or range, defined using CIDR notation, of requests that this
  44. // rule applies to. You can use the wildcard character "*" to match all IPs
  45. // equivalent to "0/0" and "::/0" together.
  46. // Examples: `192.168.1.1` or `192.168.0.0/16` or `2001:db8::/32`
  47. // or `2001:0db8:0000:0042:0000:8a2e:0370:7334`.
  48. //
  49. //
  50. // <p>Truncation will be silently performed on addresses which are not
  51. // properly truncated. For example, `1.2.3.4/24` is accepted as the same
  52. // address as `1.2.3.0/24`. Similarly, for IPv6, `2001:db8::1/32` is accepted
  53. // as the same address as `2001:db8::/32`.
  54. string source_range = 3;
  55. // An optional string description of this rule.
  56. // This field has a maximum length of 100 characters.
  57. string description = 4;
  58. }