otdf-python 0.4.1__py3-none-any.whl → 0.4.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. otdf_python/autoconfigure_utils.py +0 -2
  2. otdf_python/collection_store.py +0 -1
  3. otdf_python/ecdh.py +0 -6
  4. otdf_python/kas_client.py +18 -0
  5. otdf_python/kas_connect_rpc_client.py +59 -19
  6. otdf_python/nanotdf.py +0 -8
  7. otdf_python/nanotdf_ecdsa_struct.py +0 -2
  8. otdf_python/nanotdf_type.py +1 -1
  9. otdf_python/sdk.py +2 -16
  10. otdf_python/sdk_builder.py +2 -6
  11. {otdf_python-0.4.1.dist-info → otdf_python-0.4.2.dist-info}/METADATA +3 -2
  12. {otdf_python-0.4.1.dist-info → otdf_python-0.4.2.dist-info}/RECORD +43 -34
  13. otdf_python_proto/__init__.py +2 -6
  14. otdf_python_proto/authorization/__init__.py +10 -0
  15. otdf_python_proto/authorization/authorization_connect.py +250 -0
  16. otdf_python_proto/authorization/v2/authorization_connect.py +315 -0
  17. otdf_python_proto/entityresolution/__init__.py +10 -0
  18. otdf_python_proto/entityresolution/entity_resolution_connect.py +185 -0
  19. otdf_python_proto/entityresolution/v2/entity_resolution_connect.py +185 -0
  20. otdf_python_proto/kas/__init__.py +2 -2
  21. otdf_python_proto/kas/kas_connect.py +259 -0
  22. otdf_python_proto/policy/actions/__init__.py +11 -0
  23. otdf_python_proto/policy/actions/actions_connect.py +380 -0
  24. otdf_python_proto/policy/attributes/__init__.py +11 -0
  25. otdf_python_proto/policy/attributes/attributes_connect.py +1310 -0
  26. otdf_python_proto/policy/kasregistry/__init__.py +11 -0
  27. otdf_python_proto/policy/kasregistry/key_access_server_registry_connect.py +912 -0
  28. otdf_python_proto/policy/keymanagement/__init__.py +11 -0
  29. otdf_python_proto/policy/keymanagement/key_management_connect.py +380 -0
  30. otdf_python_proto/policy/namespaces/__init__.py +11 -0
  31. otdf_python_proto/policy/namespaces/namespaces_connect.py +648 -0
  32. otdf_python_proto/policy/registeredresources/__init__.py +11 -0
  33. otdf_python_proto/policy/registeredresources/registered_resources_connect.py +770 -0
  34. otdf_python_proto/policy/resourcemapping/__init__.py +11 -0
  35. otdf_python_proto/policy/resourcemapping/resource_mapping_connect.py +790 -0
  36. otdf_python_proto/policy/subjectmapping/__init__.py +11 -0
  37. otdf_python_proto/policy/subjectmapping/subject_mapping_connect.py +851 -0
  38. otdf_python_proto/policy/unsafe/__init__.py +11 -0
  39. otdf_python_proto/policy/unsafe/unsafe_connect.py +705 -0
  40. otdf_python_proto/wellknownconfiguration/__init__.py +10 -0
  41. otdf_python_proto/wellknownconfiguration/wellknown_configuration_connect.py +124 -0
  42. otdf_python_proto/authorization/authorization_pb2_connect.py +0 -191
  43. otdf_python_proto/authorization/v2/authorization_pb2_connect.py +0 -233
  44. otdf_python_proto/entityresolution/entity_resolution_pb2_connect.py +0 -149
  45. otdf_python_proto/entityresolution/v2/entity_resolution_pb2_connect.py +0 -149
  46. otdf_python_proto/kas/kas_pb2_connect.py +0 -192
  47. otdf_python_proto/policy/actions/actions_pb2_connect.py +0 -275
  48. otdf_python_proto/policy/attributes/attributes_pb2_connect.py +0 -863
  49. otdf_python_proto/policy/kasregistry/key_access_server_registry_pb2_connect.py +0 -611
  50. otdf_python_proto/policy/keymanagement/key_management_pb2_connect.py +0 -275
  51. otdf_python_proto/policy/namespaces/namespaces_pb2_connect.py +0 -443
  52. otdf_python_proto/policy/registeredresources/registered_resources_pb2_connect.py +0 -527
  53. otdf_python_proto/policy/resourcemapping/resource_mapping_pb2_connect.py +0 -527
  54. otdf_python_proto/policy/subjectmapping/subject_mapping_pb2_connect.py +0 -569
  55. otdf_python_proto/policy/unsafe/unsafe_pb2_connect.py +0 -485
  56. otdf_python_proto/wellknownconfiguration/wellknown_configuration_pb2_connect.py +0 -107
  57. {otdf_python-0.4.1.dist-info → otdf_python-0.4.2.dist-info}/WHEEL +0 -0
  58. {otdf_python-0.4.1.dist-info → otdf_python-0.4.2.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,380 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
3
+ # source: policy/actions/actions.proto
4
+
5
+ from collections.abc import AsyncGenerator, AsyncIterator, Iterable, Iterator, Mapping
6
+ from typing import Protocol
7
+
8
+ from connectrpc.client import ConnectClient, ConnectClientSync
9
+ from connectrpc.code import Code
10
+ from connectrpc.errors import ConnectError
11
+ from connectrpc.interceptor import Interceptor, InterceptorSync
12
+ from connectrpc.method import IdempotencyLevel, MethodInfo
13
+ from connectrpc.request import Headers, RequestContext
14
+ from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
15
+ import policy.actions.actions_pb2 as policy_dot_actions_dot_actions__pb2
16
+
17
+
18
+ class ActionService(Protocol):
19
+ async def get_action(self, request: policy_dot_actions_dot_actions__pb2.GetActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.GetActionResponse:
20
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
21
+
22
+ async def list_actions(self, request: policy_dot_actions_dot_actions__pb2.ListActionsRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.ListActionsResponse:
23
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
24
+
25
+ async def create_action(self, request: policy_dot_actions_dot_actions__pb2.CreateActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.CreateActionResponse:
26
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
27
+
28
+ async def update_action(self, request: policy_dot_actions_dot_actions__pb2.UpdateActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.UpdateActionResponse:
29
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
30
+
31
+ async def delete_action(self, request: policy_dot_actions_dot_actions__pb2.DeleteActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.DeleteActionResponse:
32
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
33
+
34
+
35
+ class ActionServiceASGIApplication(ConnectASGIApplication[ActionService]):
36
+ def __init__(self, service: ActionService | AsyncGenerator[ActionService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None) -> None:
37
+ super().__init__(
38
+ service=service,
39
+ endpoints=lambda svc: {
40
+ "/policy.actions.ActionService/GetAction": Endpoint.unary(
41
+ method=MethodInfo(
42
+ name="GetAction",
43
+ service_name="policy.actions.ActionService",
44
+ input=policy_dot_actions_dot_actions__pb2.GetActionRequest,
45
+ output=policy_dot_actions_dot_actions__pb2.GetActionResponse,
46
+ idempotency_level=IdempotencyLevel.UNKNOWN,
47
+ ),
48
+ function=svc.get_action,
49
+ ),
50
+ "/policy.actions.ActionService/ListActions": Endpoint.unary(
51
+ method=MethodInfo(
52
+ name="ListActions",
53
+ service_name="policy.actions.ActionService",
54
+ input=policy_dot_actions_dot_actions__pb2.ListActionsRequest,
55
+ output=policy_dot_actions_dot_actions__pb2.ListActionsResponse,
56
+ idempotency_level=IdempotencyLevel.UNKNOWN,
57
+ ),
58
+ function=svc.list_actions,
59
+ ),
60
+ "/policy.actions.ActionService/CreateAction": Endpoint.unary(
61
+ method=MethodInfo(
62
+ name="CreateAction",
63
+ service_name="policy.actions.ActionService",
64
+ input=policy_dot_actions_dot_actions__pb2.CreateActionRequest,
65
+ output=policy_dot_actions_dot_actions__pb2.CreateActionResponse,
66
+ idempotency_level=IdempotencyLevel.UNKNOWN,
67
+ ),
68
+ function=svc.create_action,
69
+ ),
70
+ "/policy.actions.ActionService/UpdateAction": Endpoint.unary(
71
+ method=MethodInfo(
72
+ name="UpdateAction",
73
+ service_name="policy.actions.ActionService",
74
+ input=policy_dot_actions_dot_actions__pb2.UpdateActionRequest,
75
+ output=policy_dot_actions_dot_actions__pb2.UpdateActionResponse,
76
+ idempotency_level=IdempotencyLevel.UNKNOWN,
77
+ ),
78
+ function=svc.update_action,
79
+ ),
80
+ "/policy.actions.ActionService/DeleteAction": Endpoint.unary(
81
+ method=MethodInfo(
82
+ name="DeleteAction",
83
+ service_name="policy.actions.ActionService",
84
+ input=policy_dot_actions_dot_actions__pb2.DeleteActionRequest,
85
+ output=policy_dot_actions_dot_actions__pb2.DeleteActionResponse,
86
+ idempotency_level=IdempotencyLevel.UNKNOWN,
87
+ ),
88
+ function=svc.delete_action,
89
+ ),
90
+ },
91
+ interceptors=interceptors,
92
+ read_max_bytes=read_max_bytes,
93
+ )
94
+
95
+ @property
96
+ def path(self) -> str:
97
+ """Returns the URL path to mount the application to when serving multiple applications."""
98
+ return "/policy.actions.ActionService"
99
+
100
+
101
+ class ActionServiceClient(ConnectClient):
102
+ async def get_action(
103
+ self,
104
+ request: policy_dot_actions_dot_actions__pb2.GetActionRequest,
105
+ *,
106
+ headers: Headers | Mapping[str, str] | None = None,
107
+ timeout_ms: int | None = None,
108
+ ) -> policy_dot_actions_dot_actions__pb2.GetActionResponse:
109
+ return await self.execute_unary(
110
+ request=request,
111
+ method=MethodInfo(
112
+ name="GetAction",
113
+ service_name="policy.actions.ActionService",
114
+ input=policy_dot_actions_dot_actions__pb2.GetActionRequest,
115
+ output=policy_dot_actions_dot_actions__pb2.GetActionResponse,
116
+ idempotency_level=IdempotencyLevel.UNKNOWN,
117
+ ),
118
+ headers=headers,
119
+ timeout_ms=timeout_ms,
120
+ )
121
+
122
+ async def list_actions(
123
+ self,
124
+ request: policy_dot_actions_dot_actions__pb2.ListActionsRequest,
125
+ *,
126
+ headers: Headers | Mapping[str, str] | None = None,
127
+ timeout_ms: int | None = None,
128
+ ) -> policy_dot_actions_dot_actions__pb2.ListActionsResponse:
129
+ return await self.execute_unary(
130
+ request=request,
131
+ method=MethodInfo(
132
+ name="ListActions",
133
+ service_name="policy.actions.ActionService",
134
+ input=policy_dot_actions_dot_actions__pb2.ListActionsRequest,
135
+ output=policy_dot_actions_dot_actions__pb2.ListActionsResponse,
136
+ idempotency_level=IdempotencyLevel.UNKNOWN,
137
+ ),
138
+ headers=headers,
139
+ timeout_ms=timeout_ms,
140
+ )
141
+
142
+ async def create_action(
143
+ self,
144
+ request: policy_dot_actions_dot_actions__pb2.CreateActionRequest,
145
+ *,
146
+ headers: Headers | Mapping[str, str] | None = None,
147
+ timeout_ms: int | None = None,
148
+ ) -> policy_dot_actions_dot_actions__pb2.CreateActionResponse:
149
+ return await self.execute_unary(
150
+ request=request,
151
+ method=MethodInfo(
152
+ name="CreateAction",
153
+ service_name="policy.actions.ActionService",
154
+ input=policy_dot_actions_dot_actions__pb2.CreateActionRequest,
155
+ output=policy_dot_actions_dot_actions__pb2.CreateActionResponse,
156
+ idempotency_level=IdempotencyLevel.UNKNOWN,
157
+ ),
158
+ headers=headers,
159
+ timeout_ms=timeout_ms,
160
+ )
161
+
162
+ async def update_action(
163
+ self,
164
+ request: policy_dot_actions_dot_actions__pb2.UpdateActionRequest,
165
+ *,
166
+ headers: Headers | Mapping[str, str] | None = None,
167
+ timeout_ms: int | None = None,
168
+ ) -> policy_dot_actions_dot_actions__pb2.UpdateActionResponse:
169
+ return await self.execute_unary(
170
+ request=request,
171
+ method=MethodInfo(
172
+ name="UpdateAction",
173
+ service_name="policy.actions.ActionService",
174
+ input=policy_dot_actions_dot_actions__pb2.UpdateActionRequest,
175
+ output=policy_dot_actions_dot_actions__pb2.UpdateActionResponse,
176
+ idempotency_level=IdempotencyLevel.UNKNOWN,
177
+ ),
178
+ headers=headers,
179
+ timeout_ms=timeout_ms,
180
+ )
181
+
182
+ async def delete_action(
183
+ self,
184
+ request: policy_dot_actions_dot_actions__pb2.DeleteActionRequest,
185
+ *,
186
+ headers: Headers | Mapping[str, str] | None = None,
187
+ timeout_ms: int | None = None,
188
+ ) -> policy_dot_actions_dot_actions__pb2.DeleteActionResponse:
189
+ return await self.execute_unary(
190
+ request=request,
191
+ method=MethodInfo(
192
+ name="DeleteAction",
193
+ service_name="policy.actions.ActionService",
194
+ input=policy_dot_actions_dot_actions__pb2.DeleteActionRequest,
195
+ output=policy_dot_actions_dot_actions__pb2.DeleteActionResponse,
196
+ idempotency_level=IdempotencyLevel.UNKNOWN,
197
+ ),
198
+ headers=headers,
199
+ timeout_ms=timeout_ms,
200
+ )
201
+
202
+
203
+ class ActionServiceSync(Protocol):
204
+ def get_action(self, request: policy_dot_actions_dot_actions__pb2.GetActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.GetActionResponse:
205
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
206
+ def list_actions(self, request: policy_dot_actions_dot_actions__pb2.ListActionsRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.ListActionsResponse:
207
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
208
+ def create_action(self, request: policy_dot_actions_dot_actions__pb2.CreateActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.CreateActionResponse:
209
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
210
+ def update_action(self, request: policy_dot_actions_dot_actions__pb2.UpdateActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.UpdateActionResponse:
211
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
212
+ def delete_action(self, request: policy_dot_actions_dot_actions__pb2.DeleteActionRequest, ctx: RequestContext) -> policy_dot_actions_dot_actions__pb2.DeleteActionResponse:
213
+ raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
214
+
215
+
216
+ class ActionServiceWSGIApplication(ConnectWSGIApplication):
217
+ def __init__(self, service: ActionServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None) -> None:
218
+ super().__init__(
219
+ endpoints={
220
+ "/policy.actions.ActionService/GetAction": EndpointSync.unary(
221
+ method=MethodInfo(
222
+ name="GetAction",
223
+ service_name="policy.actions.ActionService",
224
+ input=policy_dot_actions_dot_actions__pb2.GetActionRequest,
225
+ output=policy_dot_actions_dot_actions__pb2.GetActionResponse,
226
+ idempotency_level=IdempotencyLevel.UNKNOWN,
227
+ ),
228
+ function=service.get_action,
229
+ ),
230
+ "/policy.actions.ActionService/ListActions": EndpointSync.unary(
231
+ method=MethodInfo(
232
+ name="ListActions",
233
+ service_name="policy.actions.ActionService",
234
+ input=policy_dot_actions_dot_actions__pb2.ListActionsRequest,
235
+ output=policy_dot_actions_dot_actions__pb2.ListActionsResponse,
236
+ idempotency_level=IdempotencyLevel.UNKNOWN,
237
+ ),
238
+ function=service.list_actions,
239
+ ),
240
+ "/policy.actions.ActionService/CreateAction": EndpointSync.unary(
241
+ method=MethodInfo(
242
+ name="CreateAction",
243
+ service_name="policy.actions.ActionService",
244
+ input=policy_dot_actions_dot_actions__pb2.CreateActionRequest,
245
+ output=policy_dot_actions_dot_actions__pb2.CreateActionResponse,
246
+ idempotency_level=IdempotencyLevel.UNKNOWN,
247
+ ),
248
+ function=service.create_action,
249
+ ),
250
+ "/policy.actions.ActionService/UpdateAction": EndpointSync.unary(
251
+ method=MethodInfo(
252
+ name="UpdateAction",
253
+ service_name="policy.actions.ActionService",
254
+ input=policy_dot_actions_dot_actions__pb2.UpdateActionRequest,
255
+ output=policy_dot_actions_dot_actions__pb2.UpdateActionResponse,
256
+ idempotency_level=IdempotencyLevel.UNKNOWN,
257
+ ),
258
+ function=service.update_action,
259
+ ),
260
+ "/policy.actions.ActionService/DeleteAction": EndpointSync.unary(
261
+ method=MethodInfo(
262
+ name="DeleteAction",
263
+ service_name="policy.actions.ActionService",
264
+ input=policy_dot_actions_dot_actions__pb2.DeleteActionRequest,
265
+ output=policy_dot_actions_dot_actions__pb2.DeleteActionResponse,
266
+ idempotency_level=IdempotencyLevel.UNKNOWN,
267
+ ),
268
+ function=service.delete_action,
269
+ ),
270
+ },
271
+ interceptors=interceptors,
272
+ read_max_bytes=read_max_bytes,
273
+ )
274
+
275
+ @property
276
+ def path(self) -> str:
277
+ """Returns the URL path to mount the application to when serving multiple applications."""
278
+ return "/policy.actions.ActionService"
279
+
280
+
281
+ class ActionServiceClientSync(ConnectClientSync):
282
+ def get_action(
283
+ self,
284
+ request: policy_dot_actions_dot_actions__pb2.GetActionRequest,
285
+ *,
286
+ headers: Headers | Mapping[str, str] | None = None,
287
+ timeout_ms: int | None = None,
288
+ ) -> policy_dot_actions_dot_actions__pb2.GetActionResponse:
289
+ return self.execute_unary(
290
+ request=request,
291
+ method=MethodInfo(
292
+ name="GetAction",
293
+ service_name="policy.actions.ActionService",
294
+ input=policy_dot_actions_dot_actions__pb2.GetActionRequest,
295
+ output=policy_dot_actions_dot_actions__pb2.GetActionResponse,
296
+ idempotency_level=IdempotencyLevel.UNKNOWN,
297
+ ),
298
+ headers=headers,
299
+ timeout_ms=timeout_ms,
300
+ )
301
+
302
+ def list_actions(
303
+ self,
304
+ request: policy_dot_actions_dot_actions__pb2.ListActionsRequest,
305
+ *,
306
+ headers: Headers | Mapping[str, str] | None = None,
307
+ timeout_ms: int | None = None,
308
+ ) -> policy_dot_actions_dot_actions__pb2.ListActionsResponse:
309
+ return self.execute_unary(
310
+ request=request,
311
+ method=MethodInfo(
312
+ name="ListActions",
313
+ service_name="policy.actions.ActionService",
314
+ input=policy_dot_actions_dot_actions__pb2.ListActionsRequest,
315
+ output=policy_dot_actions_dot_actions__pb2.ListActionsResponse,
316
+ idempotency_level=IdempotencyLevel.UNKNOWN,
317
+ ),
318
+ headers=headers,
319
+ timeout_ms=timeout_ms,
320
+ )
321
+
322
+ def create_action(
323
+ self,
324
+ request: policy_dot_actions_dot_actions__pb2.CreateActionRequest,
325
+ *,
326
+ headers: Headers | Mapping[str, str] | None = None,
327
+ timeout_ms: int | None = None,
328
+ ) -> policy_dot_actions_dot_actions__pb2.CreateActionResponse:
329
+ return self.execute_unary(
330
+ request=request,
331
+ method=MethodInfo(
332
+ name="CreateAction",
333
+ service_name="policy.actions.ActionService",
334
+ input=policy_dot_actions_dot_actions__pb2.CreateActionRequest,
335
+ output=policy_dot_actions_dot_actions__pb2.CreateActionResponse,
336
+ idempotency_level=IdempotencyLevel.UNKNOWN,
337
+ ),
338
+ headers=headers,
339
+ timeout_ms=timeout_ms,
340
+ )
341
+
342
+ def update_action(
343
+ self,
344
+ request: policy_dot_actions_dot_actions__pb2.UpdateActionRequest,
345
+ *,
346
+ headers: Headers | Mapping[str, str] | None = None,
347
+ timeout_ms: int | None = None,
348
+ ) -> policy_dot_actions_dot_actions__pb2.UpdateActionResponse:
349
+ return self.execute_unary(
350
+ request=request,
351
+ method=MethodInfo(
352
+ name="UpdateAction",
353
+ service_name="policy.actions.ActionService",
354
+ input=policy_dot_actions_dot_actions__pb2.UpdateActionRequest,
355
+ output=policy_dot_actions_dot_actions__pb2.UpdateActionResponse,
356
+ idempotency_level=IdempotencyLevel.UNKNOWN,
357
+ ),
358
+ headers=headers,
359
+ timeout_ms=timeout_ms,
360
+ )
361
+
362
+ def delete_action(
363
+ self,
364
+ request: policy_dot_actions_dot_actions__pb2.DeleteActionRequest,
365
+ *,
366
+ headers: Headers | Mapping[str, str] | None = None,
367
+ timeout_ms: int | None = None,
368
+ ) -> policy_dot_actions_dot_actions__pb2.DeleteActionResponse:
369
+ return self.execute_unary(
370
+ request=request,
371
+ method=MethodInfo(
372
+ name="DeleteAction",
373
+ service_name="policy.actions.ActionService",
374
+ input=policy_dot_actions_dot_actions__pb2.DeleteActionRequest,
375
+ output=policy_dot_actions_dot_actions__pb2.DeleteActionResponse,
376
+ idempotency_level=IdempotencyLevel.UNKNOWN,
377
+ ),
378
+ headers=headers,
379
+ timeout_ms=timeout_ms,
380
+ )
@@ -0,0 +1,11 @@
1
+ """policy.attributes protobuf definitions."""
2
+
3
+ from .attributes_connect import (
4
+ AttributesServiceClient,
5
+ AttributesServiceClientSync,
6
+ )
7
+
8
+ __all__ = [
9
+ "AttributesServiceClient",
10
+ "AttributesServiceClientSync",
11
+ ]