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
@@ -1,275 +0,0 @@
1
- # Generated Connect client code
2
-
3
- from __future__ import annotations
4
- from collections.abc import AsyncIterator
5
- from collections.abc import Iterator
6
- from collections.abc import Iterable
7
- import aiohttp
8
- import urllib3
9
- import typing
10
- import sys
11
-
12
- from connectrpc.client_async import AsyncConnectClient
13
- from connectrpc.client_sync import ConnectClient
14
- from connectrpc.client_protocol import ConnectProtocol
15
- from connectrpc.client_connect import ConnectProtocolError
16
- from connectrpc.headers import HeaderInput
17
- from connectrpc.server import ClientRequest
18
- from connectrpc.server import ClientStream
19
- from connectrpc.server import ServerResponse
20
- from connectrpc.server import ServerStream
21
- from connectrpc.server_sync import ConnectWSGI
22
- from connectrpc.streams import StreamInput
23
- from connectrpc.streams import AsyncStreamOutput
24
- from connectrpc.streams import StreamOutput
25
- from connectrpc.unary import UnaryOutput
26
- from connectrpc.unary import ClientStreamingOutput
27
-
28
- if typing.TYPE_CHECKING:
29
- # wsgiref.types was added in Python 3.11.
30
- if sys.version_info >= (3, 11):
31
- from wsgiref.types import WSGIApplication
32
- else:
33
- from _typeshed.wsgi import WSGIApplication
34
-
35
- import policy.keymanagement.key_management_pb2
36
-
37
- class KeyManagementServiceClient:
38
- def __init__(
39
- self,
40
- base_url: str,
41
- http_client: urllib3.PoolManager | None = None,
42
- protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
43
- ):
44
- self.base_url = base_url
45
- self._connect_client = ConnectClient(http_client, protocol)
46
- def call_create_provider_config(
47
- self, req: policy.keymanagement.key_management_pb2.CreateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
48
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.CreateProviderConfigResponse]:
49
- """Low-level method to call CreateProviderConfig, granting access to errors and metadata"""
50
- url = self.base_url + "/policy.keymanagement.KeyManagementService/CreateProviderConfig"
51
- return self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.CreateProviderConfigResponse,extra_headers, timeout_seconds)
52
-
53
-
54
- def create_provider_config(
55
- self, req: policy.keymanagement.key_management_pb2.CreateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
56
- ) -> policy.keymanagement.key_management_pb2.CreateProviderConfigResponse:
57
- response = self.call_create_provider_config(req, extra_headers, timeout_seconds)
58
- err = response.error()
59
- if err is not None:
60
- raise err
61
- msg = response.message()
62
- if msg is None:
63
- raise ConnectProtocolError('missing response message')
64
- return msg
65
-
66
- def call_get_provider_config(
67
- self, req: policy.keymanagement.key_management_pb2.GetProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
68
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.GetProviderConfigResponse]:
69
- """Low-level method to call GetProviderConfig, granting access to errors and metadata"""
70
- url = self.base_url + "/policy.keymanagement.KeyManagementService/GetProviderConfig"
71
- return self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.GetProviderConfigResponse,extra_headers, timeout_seconds)
72
-
73
-
74
- def get_provider_config(
75
- self, req: policy.keymanagement.key_management_pb2.GetProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
76
- ) -> policy.keymanagement.key_management_pb2.GetProviderConfigResponse:
77
- response = self.call_get_provider_config(req, extra_headers, timeout_seconds)
78
- err = response.error()
79
- if err is not None:
80
- raise err
81
- msg = response.message()
82
- if msg is None:
83
- raise ConnectProtocolError('missing response message')
84
- return msg
85
-
86
- def call_list_provider_configs(
87
- self, req: policy.keymanagement.key_management_pb2.ListProviderConfigsRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
88
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.ListProviderConfigsResponse]:
89
- """Low-level method to call ListProviderConfigs, granting access to errors and metadata"""
90
- url = self.base_url + "/policy.keymanagement.KeyManagementService/ListProviderConfigs"
91
- return self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.ListProviderConfigsResponse,extra_headers, timeout_seconds)
92
-
93
-
94
- def list_provider_configs(
95
- self, req: policy.keymanagement.key_management_pb2.ListProviderConfigsRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
96
- ) -> policy.keymanagement.key_management_pb2.ListProviderConfigsResponse:
97
- response = self.call_list_provider_configs(req, extra_headers, timeout_seconds)
98
- err = response.error()
99
- if err is not None:
100
- raise err
101
- msg = response.message()
102
- if msg is None:
103
- raise ConnectProtocolError('missing response message')
104
- return msg
105
-
106
- def call_update_provider_config(
107
- self, req: policy.keymanagement.key_management_pb2.UpdateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
108
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse]:
109
- """Low-level method to call UpdateProviderConfig, granting access to errors and metadata"""
110
- url = self.base_url + "/policy.keymanagement.KeyManagementService/UpdateProviderConfig"
111
- return self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse,extra_headers, timeout_seconds)
112
-
113
-
114
- def update_provider_config(
115
- self, req: policy.keymanagement.key_management_pb2.UpdateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
116
- ) -> policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse:
117
- response = self.call_update_provider_config(req, extra_headers, timeout_seconds)
118
- err = response.error()
119
- if err is not None:
120
- raise err
121
- msg = response.message()
122
- if msg is None:
123
- raise ConnectProtocolError('missing response message')
124
- return msg
125
-
126
- def call_delete_provider_config(
127
- self, req: policy.keymanagement.key_management_pb2.DeleteProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
128
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse]:
129
- """Low-level method to call DeleteProviderConfig, granting access to errors and metadata"""
130
- url = self.base_url + "/policy.keymanagement.KeyManagementService/DeleteProviderConfig"
131
- return self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse,extra_headers, timeout_seconds)
132
-
133
-
134
- def delete_provider_config(
135
- self, req: policy.keymanagement.key_management_pb2.DeleteProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
136
- ) -> policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse:
137
- response = self.call_delete_provider_config(req, extra_headers, timeout_seconds)
138
- err = response.error()
139
- if err is not None:
140
- raise err
141
- msg = response.message()
142
- if msg is None:
143
- raise ConnectProtocolError('missing response message')
144
- return msg
145
-
146
-
147
- class AsyncKeyManagementServiceClient:
148
- def __init__(
149
- self,
150
- base_url: str,
151
- http_client: aiohttp.ClientSession,
152
- protocol: ConnectProtocol = ConnectProtocol.CONNECT_PROTOBUF,
153
- ):
154
- self.base_url = base_url
155
- self._connect_client = AsyncConnectClient(http_client, protocol)
156
-
157
- async def call_create_provider_config(
158
- self, req: policy.keymanagement.key_management_pb2.CreateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
159
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.CreateProviderConfigResponse]:
160
- """Low-level method to call CreateProviderConfig, granting access to errors and metadata"""
161
- url = self.base_url + "/policy.keymanagement.KeyManagementService/CreateProviderConfig"
162
- return await self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.CreateProviderConfigResponse,extra_headers, timeout_seconds)
163
-
164
- async def create_provider_config(
165
- self, req: policy.keymanagement.key_management_pb2.CreateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
166
- ) -> policy.keymanagement.key_management_pb2.CreateProviderConfigResponse:
167
- response = await self.call_create_provider_config(req, extra_headers, timeout_seconds)
168
- err = response.error()
169
- if err is not None:
170
- raise err
171
- msg = response.message()
172
- if msg is None:
173
- raise ConnectProtocolError('missing response message')
174
- return msg
175
-
176
- async def call_get_provider_config(
177
- self, req: policy.keymanagement.key_management_pb2.GetProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
178
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.GetProviderConfigResponse]:
179
- """Low-level method to call GetProviderConfig, granting access to errors and metadata"""
180
- url = self.base_url + "/policy.keymanagement.KeyManagementService/GetProviderConfig"
181
- return await self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.GetProviderConfigResponse,extra_headers, timeout_seconds)
182
-
183
- async def get_provider_config(
184
- self, req: policy.keymanagement.key_management_pb2.GetProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
185
- ) -> policy.keymanagement.key_management_pb2.GetProviderConfigResponse:
186
- response = await self.call_get_provider_config(req, extra_headers, timeout_seconds)
187
- err = response.error()
188
- if err is not None:
189
- raise err
190
- msg = response.message()
191
- if msg is None:
192
- raise ConnectProtocolError('missing response message')
193
- return msg
194
-
195
- async def call_list_provider_configs(
196
- self, req: policy.keymanagement.key_management_pb2.ListProviderConfigsRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
197
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.ListProviderConfigsResponse]:
198
- """Low-level method to call ListProviderConfigs, granting access to errors and metadata"""
199
- url = self.base_url + "/policy.keymanagement.KeyManagementService/ListProviderConfigs"
200
- return await self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.ListProviderConfigsResponse,extra_headers, timeout_seconds)
201
-
202
- async def list_provider_configs(
203
- self, req: policy.keymanagement.key_management_pb2.ListProviderConfigsRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
204
- ) -> policy.keymanagement.key_management_pb2.ListProviderConfigsResponse:
205
- response = await self.call_list_provider_configs(req, extra_headers, timeout_seconds)
206
- err = response.error()
207
- if err is not None:
208
- raise err
209
- msg = response.message()
210
- if msg is None:
211
- raise ConnectProtocolError('missing response message')
212
- return msg
213
-
214
- async def call_update_provider_config(
215
- self, req: policy.keymanagement.key_management_pb2.UpdateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
216
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse]:
217
- """Low-level method to call UpdateProviderConfig, granting access to errors and metadata"""
218
- url = self.base_url + "/policy.keymanagement.KeyManagementService/UpdateProviderConfig"
219
- return await self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse,extra_headers, timeout_seconds)
220
-
221
- async def update_provider_config(
222
- self, req: policy.keymanagement.key_management_pb2.UpdateProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
223
- ) -> policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse:
224
- response = await self.call_update_provider_config(req, extra_headers, timeout_seconds)
225
- err = response.error()
226
- if err is not None:
227
- raise err
228
- msg = response.message()
229
- if msg is None:
230
- raise ConnectProtocolError('missing response message')
231
- return msg
232
-
233
- async def call_delete_provider_config(
234
- self, req: policy.keymanagement.key_management_pb2.DeleteProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
235
- ) -> UnaryOutput[policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse]:
236
- """Low-level method to call DeleteProviderConfig, granting access to errors and metadata"""
237
- url = self.base_url + "/policy.keymanagement.KeyManagementService/DeleteProviderConfig"
238
- return await self._connect_client.call_unary(url, req, policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse,extra_headers, timeout_seconds)
239
-
240
- async def delete_provider_config(
241
- self, req: policy.keymanagement.key_management_pb2.DeleteProviderConfigRequest,extra_headers: HeaderInput | None=None, timeout_seconds: float | None=None
242
- ) -> policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse:
243
- response = await self.call_delete_provider_config(req, extra_headers, timeout_seconds)
244
- err = response.error()
245
- if err is not None:
246
- raise err
247
- msg = response.message()
248
- if msg is None:
249
- raise ConnectProtocolError('missing response message')
250
- return msg
251
-
252
-
253
- @typing.runtime_checkable
254
- class KeyManagementServiceProtocol(typing.Protocol):
255
- def create_provider_config(self, req: ClientRequest[policy.keymanagement.key_management_pb2.CreateProviderConfigRequest]) -> ServerResponse[policy.keymanagement.key_management_pb2.CreateProviderConfigResponse]:
256
- ...
257
- def get_provider_config(self, req: ClientRequest[policy.keymanagement.key_management_pb2.GetProviderConfigRequest]) -> ServerResponse[policy.keymanagement.key_management_pb2.GetProviderConfigResponse]:
258
- ...
259
- def list_provider_configs(self, req: ClientRequest[policy.keymanagement.key_management_pb2.ListProviderConfigsRequest]) -> ServerResponse[policy.keymanagement.key_management_pb2.ListProviderConfigsResponse]:
260
- ...
261
- def update_provider_config(self, req: ClientRequest[policy.keymanagement.key_management_pb2.UpdateProviderConfigRequest]) -> ServerResponse[policy.keymanagement.key_management_pb2.UpdateProviderConfigResponse]:
262
- ...
263
- def delete_provider_config(self, req: ClientRequest[policy.keymanagement.key_management_pb2.DeleteProviderConfigRequest]) -> ServerResponse[policy.keymanagement.key_management_pb2.DeleteProviderConfigResponse]:
264
- ...
265
-
266
- KEY_MANAGEMENT_SERVICE_PATH_PREFIX = "/policy.keymanagement.KeyManagementService"
267
-
268
- def wsgi_key_management_service(implementation: KeyManagementServiceProtocol) -> WSGIApplication:
269
- app = ConnectWSGI()
270
- app.register_unary_rpc("/policy.keymanagement.KeyManagementService/CreateProviderConfig", implementation.create_provider_config, policy.keymanagement.key_management_pb2.CreateProviderConfigRequest)
271
- app.register_unary_rpc("/policy.keymanagement.KeyManagementService/GetProviderConfig", implementation.get_provider_config, policy.keymanagement.key_management_pb2.GetProviderConfigRequest)
272
- app.register_unary_rpc("/policy.keymanagement.KeyManagementService/ListProviderConfigs", implementation.list_provider_configs, policy.keymanagement.key_management_pb2.ListProviderConfigsRequest)
273
- app.register_unary_rpc("/policy.keymanagement.KeyManagementService/UpdateProviderConfig", implementation.update_provider_config, policy.keymanagement.key_management_pb2.UpdateProviderConfigRequest)
274
- app.register_unary_rpc("/policy.keymanagement.KeyManagementService/DeleteProviderConfig", implementation.delete_provider_config, policy.keymanagement.key_management_pb2.DeleteProviderConfigRequest)
275
- return app