cerbos 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +9 -0
  3. data/CHANGELOG.md +9 -0
  4. data/LICENSE.txt +190 -0
  5. data/README.md +67 -0
  6. data/cerbos.gemspec +36 -0
  7. data/lib/cerbos/client.rb +188 -0
  8. data/lib/cerbos/error.rb +112 -0
  9. data/lib/cerbos/input/attributes.rb +29 -0
  10. data/lib/cerbos/input/aux_data.rb +26 -0
  11. data/lib/cerbos/input/jwt.rb +38 -0
  12. data/lib/cerbos/input/principal.rb +63 -0
  13. data/lib/cerbos/input/resource.rb +63 -0
  14. data/lib/cerbos/input/resource_check.rb +35 -0
  15. data/lib/cerbos/input/resource_query.rb +55 -0
  16. data/lib/cerbos/input.rb +36 -0
  17. data/lib/cerbos/mutual_tls.rb +33 -0
  18. data/lib/cerbos/output/check_resources.rb +226 -0
  19. data/lib/cerbos/output/plan_resources.rb +149 -0
  20. data/lib/cerbos/output/server_info.rb +38 -0
  21. data/lib/cerbos/output.rb +37 -0
  22. data/lib/cerbos/protobuf/cerbos/audit/v1/audit_pb.rb +48 -0
  23. data/lib/cerbos/protobuf/cerbos/effect/v1/effect_pb.rb +23 -0
  24. data/lib/cerbos/protobuf/cerbos/engine/v1/engine_pb.rb +166 -0
  25. data/lib/cerbos/protobuf/cerbos/policy/v1/policy_pb.rb +247 -0
  26. data/lib/cerbos/protobuf/cerbos/request/v1/request_pb.rb +178 -0
  27. data/lib/cerbos/protobuf/cerbos/response/v1/response_pb.rb +230 -0
  28. data/lib/cerbos/protobuf/cerbos/schema/v1/schema_pb.rb +37 -0
  29. data/lib/cerbos/protobuf/cerbos/svc/v1/svc_pb.rb +21 -0
  30. data/lib/cerbos/protobuf/cerbos/svc/v1/svc_services_pb.rb +73 -0
  31. data/lib/cerbos/protobuf/cerbos/telemetry/v1/telemetry_pb.rb +99 -0
  32. data/lib/cerbos/protobuf/google/api/annotations_pb.rb +17 -0
  33. data/lib/cerbos/protobuf/google/api/expr/v1alpha1/checked_pb.rb +117 -0
  34. data/lib/cerbos/protobuf/google/api/expr/v1alpha1/syntax_pb.rb +113 -0
  35. data/lib/cerbos/protobuf/google/api/field_behavior_pb.rb +27 -0
  36. data/lib/cerbos/protobuf/google/api/http_pb.rb +39 -0
  37. data/lib/cerbos/protobuf/protoc-gen-openapiv2/options/annotations_pb.rb +21 -0
  38. data/lib/cerbos/protobuf/protoc-gen-openapiv2/options/openapiv2_pb.rb +200 -0
  39. data/lib/cerbos/protobuf/validate/validate_pb.rb +293 -0
  40. data/lib/cerbos/protobuf.rb +9 -0
  41. data/lib/cerbos/tls.rb +24 -0
  42. data/lib/cerbos/version.rb +6 -0
  43. data/lib/cerbos.rb +22 -0
  44. data/yard_extensions.rb +33 -0
  45. metadata +107 -0
@@ -0,0 +1,17 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/api/annotations.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'cerbos/protobuf/google/api/http_pb'
7
+ require 'google/protobuf/descriptor_pb'
8
+
9
+ Google::Protobuf::DescriptorPool.generated_pool.build do
10
+ add_file("google/api/annotations.proto", :syntax => :proto3) do
11
+ end
12
+ end
13
+
14
+ module Cerbos::Protobuf::Google
15
+ module Api
16
+ end
17
+ end
@@ -0,0 +1,117 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/api/expr/v1alpha1/checked.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'cerbos/protobuf/google/api/expr/v1alpha1/syntax_pb'
7
+ require 'google/protobuf/empty_pb'
8
+ require 'google/protobuf/struct_pb'
9
+
10
+ Google::Protobuf::DescriptorPool.generated_pool.build do
11
+ add_file("google/api/expr/v1alpha1/checked.proto", :syntax => :proto3) do
12
+ add_message "google.api.expr.v1alpha1.CheckedExpr" do
13
+ map :reference_map, :int64, :message, 2, "google.api.expr.v1alpha1.Reference"
14
+ map :type_map, :int64, :message, 3, "google.api.expr.v1alpha1.Type"
15
+ optional :source_info, :message, 5, "google.api.expr.v1alpha1.SourceInfo", json_name: "sourceInfo"
16
+ optional :expr_version, :string, 6, json_name: "exprVersion"
17
+ optional :expr, :message, 4, "google.api.expr.v1alpha1.Expr", json_name: "expr"
18
+ end
19
+ add_message "google.api.expr.v1alpha1.Type" do
20
+ oneof :type_kind do
21
+ optional :dyn, :message, 1, "google.protobuf.Empty", json_name: "dyn"
22
+ optional :null, :enum, 2, "google.protobuf.NullValue", json_name: "null"
23
+ optional :primitive, :enum, 3, "google.api.expr.v1alpha1.Type.PrimitiveType", json_name: "primitive"
24
+ optional :wrapper, :enum, 4, "google.api.expr.v1alpha1.Type.PrimitiveType", json_name: "wrapper"
25
+ optional :well_known, :enum, 5, "google.api.expr.v1alpha1.Type.WellKnownType", json_name: "wellKnown"
26
+ optional :list_type, :message, 6, "google.api.expr.v1alpha1.Type.ListType", json_name: "listType"
27
+ optional :map_type, :message, 7, "google.api.expr.v1alpha1.Type.MapType", json_name: "mapType"
28
+ optional :function, :message, 8, "google.api.expr.v1alpha1.Type.FunctionType", json_name: "function"
29
+ optional :message_type, :string, 9, json_name: "messageType"
30
+ optional :type_param, :string, 10, json_name: "typeParam"
31
+ optional :type, :message, 11, "google.api.expr.v1alpha1.Type", json_name: "type"
32
+ optional :error, :message, 12, "google.protobuf.Empty", json_name: "error"
33
+ optional :abstract_type, :message, 14, "google.api.expr.v1alpha1.Type.AbstractType", json_name: "abstractType"
34
+ end
35
+ end
36
+ add_message "google.api.expr.v1alpha1.Type.ListType" do
37
+ optional :elem_type, :message, 1, "google.api.expr.v1alpha1.Type", json_name: "elemType"
38
+ end
39
+ add_message "google.api.expr.v1alpha1.Type.MapType" do
40
+ optional :key_type, :message, 1, "google.api.expr.v1alpha1.Type", json_name: "keyType"
41
+ optional :value_type, :message, 2, "google.api.expr.v1alpha1.Type", json_name: "valueType"
42
+ end
43
+ add_message "google.api.expr.v1alpha1.Type.FunctionType" do
44
+ optional :result_type, :message, 1, "google.api.expr.v1alpha1.Type", json_name: "resultType"
45
+ repeated :arg_types, :message, 2, "google.api.expr.v1alpha1.Type", json_name: "argTypes"
46
+ end
47
+ add_message "google.api.expr.v1alpha1.Type.AbstractType" do
48
+ optional :name, :string, 1, json_name: "name"
49
+ repeated :parameter_types, :message, 2, "google.api.expr.v1alpha1.Type", json_name: "parameterTypes"
50
+ end
51
+ add_enum "google.api.expr.v1alpha1.Type.PrimitiveType" do
52
+ value :PRIMITIVE_TYPE_UNSPECIFIED, 0
53
+ value :BOOL, 1
54
+ value :INT64, 2
55
+ value :UINT64, 3
56
+ value :DOUBLE, 4
57
+ value :STRING, 5
58
+ value :BYTES, 6
59
+ end
60
+ add_enum "google.api.expr.v1alpha1.Type.WellKnownType" do
61
+ value :WELL_KNOWN_TYPE_UNSPECIFIED, 0
62
+ value :ANY, 1
63
+ value :TIMESTAMP, 2
64
+ value :DURATION, 3
65
+ end
66
+ add_message "google.api.expr.v1alpha1.Decl" do
67
+ optional :name, :string, 1, json_name: "name"
68
+ oneof :decl_kind do
69
+ optional :ident, :message, 2, "google.api.expr.v1alpha1.Decl.IdentDecl", json_name: "ident"
70
+ optional :function, :message, 3, "google.api.expr.v1alpha1.Decl.FunctionDecl", json_name: "function"
71
+ end
72
+ end
73
+ add_message "google.api.expr.v1alpha1.Decl.IdentDecl" do
74
+ optional :type, :message, 1, "google.api.expr.v1alpha1.Type", json_name: "type"
75
+ optional :value, :message, 2, "google.api.expr.v1alpha1.Constant", json_name: "value"
76
+ optional :doc, :string, 3, json_name: "doc"
77
+ end
78
+ add_message "google.api.expr.v1alpha1.Decl.FunctionDecl" do
79
+ repeated :overloads, :message, 1, "google.api.expr.v1alpha1.Decl.FunctionDecl.Overload", json_name: "overloads"
80
+ end
81
+ add_message "google.api.expr.v1alpha1.Decl.FunctionDecl.Overload" do
82
+ optional :overload_id, :string, 1, json_name: "overloadId"
83
+ repeated :params, :message, 2, "google.api.expr.v1alpha1.Type", json_name: "params"
84
+ repeated :type_params, :string, 3, json_name: "typeParams"
85
+ optional :result_type, :message, 4, "google.api.expr.v1alpha1.Type", json_name: "resultType"
86
+ optional :is_instance_function, :bool, 5, json_name: "isInstanceFunction"
87
+ optional :doc, :string, 6, json_name: "doc"
88
+ end
89
+ add_message "google.api.expr.v1alpha1.Reference" do
90
+ optional :name, :string, 1, json_name: "name"
91
+ repeated :overload_id, :string, 3, json_name: "overloadId"
92
+ optional :value, :message, 4, "google.api.expr.v1alpha1.Constant", json_name: "value"
93
+ end
94
+ end
95
+ end
96
+
97
+ module Cerbos::Protobuf::Google
98
+ module Api
99
+ module Expr
100
+ module V1alpha1
101
+ CheckedExpr = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.CheckedExpr").msgclass
102
+ Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type").msgclass
103
+ Type::ListType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type.ListType").msgclass
104
+ Type::MapType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type.MapType").msgclass
105
+ Type::FunctionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type.FunctionType").msgclass
106
+ Type::AbstractType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type.AbstractType").msgclass
107
+ Type::PrimitiveType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type.PrimitiveType").enummodule
108
+ Type::WellKnownType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Type.WellKnownType").enummodule
109
+ Decl = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Decl").msgclass
110
+ Decl::IdentDecl = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Decl.IdentDecl").msgclass
111
+ Decl::FunctionDecl = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Decl.FunctionDecl").msgclass
112
+ Decl::FunctionDecl::Overload = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Decl.FunctionDecl.Overload").msgclass
113
+ Reference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Reference").msgclass
114
+ end
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,113 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/api/expr/v1alpha1/syntax.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/protobuf/duration_pb'
7
+ require 'google/protobuf/struct_pb'
8
+ require 'google/protobuf/timestamp_pb'
9
+
10
+ Google::Protobuf::DescriptorPool.generated_pool.build do
11
+ add_file("google/api/expr/v1alpha1/syntax.proto", :syntax => :proto3) do
12
+ add_message "google.api.expr.v1alpha1.ParsedExpr" do
13
+ optional :expr, :message, 2, "google.api.expr.v1alpha1.Expr", json_name: "expr"
14
+ optional :source_info, :message, 3, "google.api.expr.v1alpha1.SourceInfo", json_name: "sourceInfo"
15
+ end
16
+ add_message "google.api.expr.v1alpha1.Expr" do
17
+ optional :id, :int64, 2, json_name: "id"
18
+ oneof :expr_kind do
19
+ optional :const_expr, :message, 3, "google.api.expr.v1alpha1.Constant", json_name: "constExpr"
20
+ optional :ident_expr, :message, 4, "google.api.expr.v1alpha1.Expr.Ident", json_name: "identExpr"
21
+ optional :select_expr, :message, 5, "google.api.expr.v1alpha1.Expr.Select", json_name: "selectExpr"
22
+ optional :call_expr, :message, 6, "google.api.expr.v1alpha1.Expr.Call", json_name: "callExpr"
23
+ optional :list_expr, :message, 7, "google.api.expr.v1alpha1.Expr.CreateList", json_name: "listExpr"
24
+ optional :struct_expr, :message, 8, "google.api.expr.v1alpha1.Expr.CreateStruct", json_name: "structExpr"
25
+ optional :comprehension_expr, :message, 9, "google.api.expr.v1alpha1.Expr.Comprehension", json_name: "comprehensionExpr"
26
+ end
27
+ end
28
+ add_message "google.api.expr.v1alpha1.Expr.Ident" do
29
+ optional :name, :string, 1, json_name: "name"
30
+ end
31
+ add_message "google.api.expr.v1alpha1.Expr.Select" do
32
+ optional :operand, :message, 1, "google.api.expr.v1alpha1.Expr", json_name: "operand"
33
+ optional :field, :string, 2, json_name: "field"
34
+ optional :test_only, :bool, 3, json_name: "testOnly"
35
+ end
36
+ add_message "google.api.expr.v1alpha1.Expr.Call" do
37
+ optional :target, :message, 1, "google.api.expr.v1alpha1.Expr", json_name: "target"
38
+ optional :function, :string, 2, json_name: "function"
39
+ repeated :args, :message, 3, "google.api.expr.v1alpha1.Expr", json_name: "args"
40
+ end
41
+ add_message "google.api.expr.v1alpha1.Expr.CreateList" do
42
+ repeated :elements, :message, 1, "google.api.expr.v1alpha1.Expr", json_name: "elements"
43
+ end
44
+ add_message "google.api.expr.v1alpha1.Expr.CreateStruct" do
45
+ optional :message_name, :string, 1, json_name: "messageName"
46
+ repeated :entries, :message, 2, "google.api.expr.v1alpha1.Expr.CreateStruct.Entry", json_name: "entries"
47
+ end
48
+ add_message "google.api.expr.v1alpha1.Expr.CreateStruct.Entry" do
49
+ optional :id, :int64, 1, json_name: "id"
50
+ optional :value, :message, 4, "google.api.expr.v1alpha1.Expr", json_name: "value"
51
+ oneof :key_kind do
52
+ optional :field_key, :string, 2, json_name: "fieldKey"
53
+ optional :map_key, :message, 3, "google.api.expr.v1alpha1.Expr", json_name: "mapKey"
54
+ end
55
+ end
56
+ add_message "google.api.expr.v1alpha1.Expr.Comprehension" do
57
+ optional :iter_var, :string, 1, json_name: "iterVar"
58
+ optional :iter_range, :message, 2, "google.api.expr.v1alpha1.Expr", json_name: "iterRange"
59
+ optional :accu_var, :string, 3, json_name: "accuVar"
60
+ optional :accu_init, :message, 4, "google.api.expr.v1alpha1.Expr", json_name: "accuInit"
61
+ optional :loop_condition, :message, 5, "google.api.expr.v1alpha1.Expr", json_name: "loopCondition"
62
+ optional :loop_step, :message, 6, "google.api.expr.v1alpha1.Expr", json_name: "loopStep"
63
+ optional :result, :message, 7, "google.api.expr.v1alpha1.Expr", json_name: "result"
64
+ end
65
+ add_message "google.api.expr.v1alpha1.Constant" do
66
+ oneof :constant_kind do
67
+ optional :null_value, :enum, 1, "google.protobuf.NullValue", json_name: "nullValue"
68
+ optional :bool_value, :bool, 2, json_name: "boolValue"
69
+ optional :int64_value, :int64, 3, json_name: "int64Value"
70
+ optional :uint64_value, :uint64, 4, json_name: "uint64Value"
71
+ optional :double_value, :double, 5, json_name: "doubleValue"
72
+ optional :string_value, :string, 6, json_name: "stringValue"
73
+ optional :bytes_value, :bytes, 7, json_name: "bytesValue"
74
+ optional :duration_value, :message, 8, "google.protobuf.Duration", json_name: "durationValue"
75
+ optional :timestamp_value, :message, 9, "google.protobuf.Timestamp", json_name: "timestampValue"
76
+ end
77
+ end
78
+ add_message "google.api.expr.v1alpha1.SourceInfo" do
79
+ optional :syntax_version, :string, 1, json_name: "syntaxVersion"
80
+ optional :location, :string, 2, json_name: "location"
81
+ repeated :line_offsets, :int32, 3, json_name: "lineOffsets"
82
+ map :positions, :int64, :int32, 4
83
+ map :macro_calls, :int64, :message, 5, "google.api.expr.v1alpha1.Expr"
84
+ end
85
+ add_message "google.api.expr.v1alpha1.SourcePosition" do
86
+ optional :location, :string, 1, json_name: "location"
87
+ optional :offset, :int32, 2, json_name: "offset"
88
+ optional :line, :int32, 3, json_name: "line"
89
+ optional :column, :int32, 4, json_name: "column"
90
+ end
91
+ end
92
+ end
93
+
94
+ module Cerbos::Protobuf::Google
95
+ module Api
96
+ module Expr
97
+ module V1alpha1
98
+ ParsedExpr = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.ParsedExpr").msgclass
99
+ Expr = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr").msgclass
100
+ Expr::Ident = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.Ident").msgclass
101
+ Expr::Select = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.Select").msgclass
102
+ Expr::Call = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.Call").msgclass
103
+ Expr::CreateList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.CreateList").msgclass
104
+ Expr::CreateStruct = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.CreateStruct").msgclass
105
+ Expr::CreateStruct::Entry = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.CreateStruct.Entry").msgclass
106
+ Expr::Comprehension = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Expr.Comprehension").msgclass
107
+ Constant = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.Constant").msgclass
108
+ SourceInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.SourceInfo").msgclass
109
+ SourcePosition = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.expr.v1alpha1.SourcePosition").msgclass
110
+ end
111
+ end
112
+ end
113
+ end
@@ -0,0 +1,27 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/api/field_behavior.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/protobuf/descriptor_pb'
7
+
8
+ Google::Protobuf::DescriptorPool.generated_pool.build do
9
+ add_file("google/api/field_behavior.proto", :syntax => :proto3) do
10
+ add_enum "google.api.FieldBehavior" do
11
+ value :FIELD_BEHAVIOR_UNSPECIFIED, 0
12
+ value :OPTIONAL, 1
13
+ value :REQUIRED, 2
14
+ value :OUTPUT_ONLY, 3
15
+ value :INPUT_ONLY, 4
16
+ value :IMMUTABLE, 5
17
+ value :UNORDERED_LIST, 6
18
+ value :NON_EMPTY_DEFAULT, 7
19
+ end
20
+ end
21
+ end
22
+
23
+ module Cerbos::Protobuf::Google
24
+ module Api
25
+ FieldBehavior = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.FieldBehavior").enummodule
26
+ end
27
+ end
@@ -0,0 +1,39 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/api/http.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ Google::Protobuf::DescriptorPool.generated_pool.build do
7
+ add_file("google/api/http.proto", :syntax => :proto3) do
8
+ add_message "google.api.Http" do
9
+ repeated :rules, :message, 1, "google.api.HttpRule", json_name: "rules"
10
+ optional :fully_decode_reserved_expansion, :bool, 2, json_name: "fullyDecodeReservedExpansion"
11
+ end
12
+ add_message "google.api.HttpRule" do
13
+ optional :selector, :string, 1, json_name: "selector"
14
+ optional :body, :string, 7, json_name: "body"
15
+ optional :response_body, :string, 12, json_name: "responseBody"
16
+ repeated :additional_bindings, :message, 11, "google.api.HttpRule", json_name: "additionalBindings"
17
+ oneof :pattern do
18
+ optional :get, :string, 2, json_name: "get"
19
+ optional :put, :string, 3, json_name: "put"
20
+ optional :post, :string, 4, json_name: "post"
21
+ optional :delete, :string, 5, json_name: "delete"
22
+ optional :patch, :string, 6, json_name: "patch"
23
+ optional :custom, :message, 8, "google.api.CustomHttpPattern", json_name: "custom"
24
+ end
25
+ end
26
+ add_message "google.api.CustomHttpPattern" do
27
+ optional :kind, :string, 1, json_name: "kind"
28
+ optional :path, :string, 2, json_name: "path"
29
+ end
30
+ end
31
+ end
32
+
33
+ module Cerbos::Protobuf::Google
34
+ module Api
35
+ Http = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.Http").msgclass
36
+ HttpRule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.HttpRule").msgclass
37
+ CustomHttpPattern = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.CustomHttpPattern").msgclass
38
+ end
39
+ end
@@ -0,0 +1,21 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: protoc-gen-openapiv2/options/annotations.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/protobuf/descriptor_pb'
7
+ require 'cerbos/protobuf/protoc-gen-openapiv2/options/openapiv2_pb'
8
+
9
+ Google::Protobuf::DescriptorPool.generated_pool.build do
10
+ add_file("protoc-gen-openapiv2/options/annotations.proto", :syntax => :proto3) do
11
+ end
12
+ end
13
+
14
+ module Cerbos::Protobuf::Grpc
15
+ module Gateway
16
+ module ProtocGenOpenapiv2
17
+ module Options
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,200 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: protoc-gen-openapiv2/options/openapiv2.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/protobuf/struct_pb'
7
+
8
+ Google::Protobuf::DescriptorPool.generated_pool.build do
9
+ add_file("protoc-gen-openapiv2/options/openapiv2.proto", :syntax => :proto3) do
10
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Swagger" do
11
+ optional :swagger, :string, 1, json_name: "swagger"
12
+ optional :info, :message, 2, "grpc.gateway.protoc_gen_openapiv2.options.Info", json_name: "info"
13
+ optional :host, :string, 3, json_name: "host"
14
+ optional :base_path, :string, 4, json_name: "basePath"
15
+ repeated :schemes, :enum, 5, "grpc.gateway.protoc_gen_openapiv2.options.Scheme", json_name: "schemes"
16
+ repeated :consumes, :string, 6, json_name: "consumes"
17
+ repeated :produces, :string, 7, json_name: "produces"
18
+ map :responses, :string, :message, 10, "grpc.gateway.protoc_gen_openapiv2.options.Response"
19
+ optional :security_definitions, :message, 11, "grpc.gateway.protoc_gen_openapiv2.options.SecurityDefinitions", json_name: "securityDefinitions"
20
+ repeated :security, :message, 12, "grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement", json_name: "security"
21
+ optional :external_docs, :message, 14, "grpc.gateway.protoc_gen_openapiv2.options.ExternalDocumentation", json_name: "externalDocs"
22
+ map :extensions, :string, :message, 15, "google.protobuf.Value"
23
+ end
24
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Operation" do
25
+ repeated :tags, :string, 1, json_name: "tags"
26
+ optional :summary, :string, 2, json_name: "summary"
27
+ optional :description, :string, 3, json_name: "description"
28
+ optional :external_docs, :message, 4, "grpc.gateway.protoc_gen_openapiv2.options.ExternalDocumentation", json_name: "externalDocs"
29
+ optional :operation_id, :string, 5, json_name: "operationId"
30
+ repeated :consumes, :string, 6, json_name: "consumes"
31
+ repeated :produces, :string, 7, json_name: "produces"
32
+ map :responses, :string, :message, 9, "grpc.gateway.protoc_gen_openapiv2.options.Response"
33
+ repeated :schemes, :enum, 10, "grpc.gateway.protoc_gen_openapiv2.options.Scheme", json_name: "schemes"
34
+ optional :deprecated, :bool, 11, json_name: "deprecated"
35
+ repeated :security, :message, 12, "grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement", json_name: "security"
36
+ map :extensions, :string, :message, 13, "google.protobuf.Value"
37
+ end
38
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Header" do
39
+ optional :description, :string, 1, json_name: "description"
40
+ optional :type, :string, 2, json_name: "type"
41
+ optional :format, :string, 3, json_name: "format"
42
+ optional :default, :string, 6, json_name: "default"
43
+ optional :pattern, :string, 13, json_name: "pattern"
44
+ end
45
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Response" do
46
+ optional :description, :string, 1, json_name: "description"
47
+ optional :schema, :message, 2, "grpc.gateway.protoc_gen_openapiv2.options.Schema", json_name: "schema"
48
+ map :headers, :string, :message, 3, "grpc.gateway.protoc_gen_openapiv2.options.Header"
49
+ map :examples, :string, :string, 4
50
+ map :extensions, :string, :message, 5, "google.protobuf.Value"
51
+ end
52
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Info" do
53
+ optional :title, :string, 1, json_name: "title"
54
+ optional :description, :string, 2, json_name: "description"
55
+ optional :terms_of_service, :string, 3, json_name: "termsOfService"
56
+ optional :contact, :message, 4, "grpc.gateway.protoc_gen_openapiv2.options.Contact", json_name: "contact"
57
+ optional :license, :message, 5, "grpc.gateway.protoc_gen_openapiv2.options.License", json_name: "license"
58
+ optional :version, :string, 6, json_name: "version"
59
+ map :extensions, :string, :message, 7, "google.protobuf.Value"
60
+ end
61
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Contact" do
62
+ optional :name, :string, 1, json_name: "name"
63
+ optional :url, :string, 2, json_name: "url"
64
+ optional :email, :string, 3, json_name: "email"
65
+ end
66
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.License" do
67
+ optional :name, :string, 1, json_name: "name"
68
+ optional :url, :string, 2, json_name: "url"
69
+ end
70
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.ExternalDocumentation" do
71
+ optional :description, :string, 1, json_name: "description"
72
+ optional :url, :string, 2, json_name: "url"
73
+ end
74
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Schema" do
75
+ optional :json_schema, :message, 1, "grpc.gateway.protoc_gen_openapiv2.options.JSONSchema", json_name: "jsonSchema"
76
+ optional :discriminator, :string, 2, json_name: "discriminator"
77
+ optional :read_only, :bool, 3, json_name: "readOnly"
78
+ optional :external_docs, :message, 5, "grpc.gateway.protoc_gen_openapiv2.options.ExternalDocumentation", json_name: "externalDocs"
79
+ optional :example, :string, 6, json_name: "example"
80
+ end
81
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.JSONSchema" do
82
+ optional :ref, :string, 3, json_name: "ref"
83
+ optional :title, :string, 5, json_name: "title"
84
+ optional :description, :string, 6, json_name: "description"
85
+ optional :default, :string, 7, json_name: "default"
86
+ optional :read_only, :bool, 8, json_name: "readOnly"
87
+ optional :example, :string, 9, json_name: "example"
88
+ optional :multiple_of, :double, 10, json_name: "multipleOf"
89
+ optional :maximum, :double, 11, json_name: "maximum"
90
+ optional :exclusive_maximum, :bool, 12, json_name: "exclusiveMaximum"
91
+ optional :minimum, :double, 13, json_name: "minimum"
92
+ optional :exclusive_minimum, :bool, 14, json_name: "exclusiveMinimum"
93
+ optional :max_length, :uint64, 15, json_name: "maxLength"
94
+ optional :min_length, :uint64, 16, json_name: "minLength"
95
+ optional :pattern, :string, 17, json_name: "pattern"
96
+ optional :max_items, :uint64, 20, json_name: "maxItems"
97
+ optional :min_items, :uint64, 21, json_name: "minItems"
98
+ optional :unique_items, :bool, 22, json_name: "uniqueItems"
99
+ optional :max_properties, :uint64, 24, json_name: "maxProperties"
100
+ optional :min_properties, :uint64, 25, json_name: "minProperties"
101
+ repeated :required, :string, 26, json_name: "required"
102
+ repeated :array, :string, 34, json_name: "array"
103
+ repeated :type, :enum, 35, "grpc.gateway.protoc_gen_openapiv2.options.JSONSchema.JSONSchemaSimpleTypes", json_name: "type"
104
+ optional :format, :string, 36, json_name: "format"
105
+ repeated :enum, :string, 46, json_name: "enum"
106
+ end
107
+ add_enum "grpc.gateway.protoc_gen_openapiv2.options.JSONSchema.JSONSchemaSimpleTypes" do
108
+ value :UNKNOWN, 0
109
+ value :ARRAY, 1
110
+ value :BOOLEAN, 2
111
+ value :INTEGER, 3
112
+ value :NULL, 4
113
+ value :NUMBER, 5
114
+ value :OBJECT, 6
115
+ value :STRING, 7
116
+ end
117
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Tag" do
118
+ optional :description, :string, 2, json_name: "description"
119
+ optional :external_docs, :message, 3, "grpc.gateway.protoc_gen_openapiv2.options.ExternalDocumentation", json_name: "externalDocs"
120
+ end
121
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.SecurityDefinitions" do
122
+ map :security, :string, :message, 1, "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme"
123
+ end
124
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme" do
125
+ optional :type, :enum, 1, "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.Type", json_name: "type"
126
+ optional :description, :string, 2, json_name: "description"
127
+ optional :name, :string, 3, json_name: "name"
128
+ optional :in, :enum, 4, "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.In", json_name: "in"
129
+ optional :flow, :enum, 5, "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.Flow", json_name: "flow"
130
+ optional :authorization_url, :string, 6, json_name: "authorizationUrl"
131
+ optional :token_url, :string, 7, json_name: "tokenUrl"
132
+ optional :scopes, :message, 8, "grpc.gateway.protoc_gen_openapiv2.options.Scopes", json_name: "scopes"
133
+ map :extensions, :string, :message, 9, "google.protobuf.Value"
134
+ end
135
+ add_enum "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.Type" do
136
+ value :TYPE_INVALID, 0
137
+ value :TYPE_BASIC, 1
138
+ value :TYPE_API_KEY, 2
139
+ value :TYPE_OAUTH2, 3
140
+ end
141
+ add_enum "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.In" do
142
+ value :IN_INVALID, 0
143
+ value :IN_QUERY, 1
144
+ value :IN_HEADER, 2
145
+ end
146
+ add_enum "grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.Flow" do
147
+ value :FLOW_INVALID, 0
148
+ value :FLOW_IMPLICIT, 1
149
+ value :FLOW_PASSWORD, 2
150
+ value :FLOW_APPLICATION, 3
151
+ value :FLOW_ACCESS_CODE, 4
152
+ end
153
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement" do
154
+ map :security_requirement, :string, :message, 1, "grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement.SecurityRequirementValue"
155
+ end
156
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement.SecurityRequirementValue" do
157
+ repeated :scope, :string, 1, json_name: "scope"
158
+ end
159
+ add_message "grpc.gateway.protoc_gen_openapiv2.options.Scopes" do
160
+ map :scope, :string, :string, 1
161
+ end
162
+ add_enum "grpc.gateway.protoc_gen_openapiv2.options.Scheme" do
163
+ value :UNKNOWN, 0
164
+ value :HTTP, 1
165
+ value :HTTPS, 2
166
+ value :WS, 3
167
+ value :WSS, 4
168
+ end
169
+ end
170
+ end
171
+
172
+ module Cerbos::Protobuf::Grpc
173
+ module Gateway
174
+ module ProtocGenOpenapiv2
175
+ module Options
176
+ Swagger = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Swagger").msgclass
177
+ Operation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Operation").msgclass
178
+ Header = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Header").msgclass
179
+ Response = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Response").msgclass
180
+ Info = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Info").msgclass
181
+ Contact = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Contact").msgclass
182
+ License = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.License").msgclass
183
+ ExternalDocumentation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.ExternalDocumentation").msgclass
184
+ Schema = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Schema").msgclass
185
+ JSONSchema = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.JSONSchema").msgclass
186
+ JSONSchema::JSONSchemaSimpleTypes = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.JSONSchema.JSONSchemaSimpleTypes").enummodule
187
+ Tag = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Tag").msgclass
188
+ SecurityDefinitions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityDefinitions").msgclass
189
+ SecurityScheme = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme").msgclass
190
+ SecurityScheme::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.Type").enummodule
191
+ SecurityScheme::In = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.In").enummodule
192
+ SecurityScheme::Flow = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityScheme.Flow").enummodule
193
+ SecurityRequirement = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement").msgclass
194
+ SecurityRequirement::SecurityRequirementValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.SecurityRequirement.SecurityRequirementValue").msgclass
195
+ Scopes = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Scopes").msgclass
196
+ Scheme = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.gateway.protoc_gen_openapiv2.options.Scheme").enummodule
197
+ end
198
+ end
199
+ end
200
+ end