@opentdf/sdk 0.3.1 → 0.3.2-beta.1

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 (219) hide show
  1. package/dist/cjs/src/access/access-fetch.js +155 -0
  2. package/dist/cjs/src/access/access-rpc.js +131 -0
  3. package/dist/cjs/src/access.js +81 -107
  4. package/dist/cjs/src/auth/oidc.js +2 -2
  5. package/dist/cjs/src/nanotdf/Client.js +17 -13
  6. package/dist/cjs/src/nanotdf/models/Header.js +2 -2
  7. package/dist/cjs/src/nanotdf-crypto/keyAgreement.js +2 -2
  8. package/dist/cjs/src/opentdf.js +42 -8
  9. package/dist/cjs/src/platform/authorization/authorization_pb.js +138 -0
  10. package/dist/cjs/src/platform/buf/validate/validate_pb.js +410 -0
  11. package/dist/cjs/src/platform/common/common_pb.js +79 -0
  12. package/dist/cjs/src/platform/entityresolution/entity_resolution_pb.js +49 -0
  13. package/dist/cjs/src/platform/google/api/annotations_pb.js +30 -0
  14. package/dist/cjs/src/platform/google/api/http_pb.js +37 -0
  15. package/dist/cjs/src/platform/kas/kas_pb.js +96 -0
  16. package/dist/cjs/src/platform/policy/actions/actions_pb.js +70 -0
  17. package/dist/cjs/src/platform/policy/attributes/attributes_pb.js +240 -0
  18. package/dist/cjs/src/platform/policy/kasregistry/key_access_server_registry_pb.js +236 -0
  19. package/dist/cjs/src/platform/policy/keymanagement/key_management_pb.js +70 -0
  20. package/dist/cjs/src/platform/policy/namespaces/namespaces_pb.js +121 -0
  21. package/dist/cjs/src/platform/policy/objects_pb.js +395 -0
  22. package/dist/cjs/src/platform/policy/registeredresources/registered_resources_pb.js +132 -0
  23. package/dist/cjs/src/platform/policy/resourcemapping/resource_mapping_pb.js +139 -0
  24. package/dist/cjs/src/platform/policy/selectors_pb.js +67 -0
  25. package/dist/cjs/src/platform/policy/subjectmapping/subject_mapping_pb.js +146 -0
  26. package/dist/cjs/src/platform/policy/unsafe/unsafe_pb.js +124 -0
  27. package/dist/cjs/src/platform/protoc-gen-openapiv2/options/annotations_pb.js +68 -0
  28. package/dist/cjs/src/platform/protoc-gen-openapiv2/options/openapiv2_pb.js +307 -0
  29. package/dist/cjs/src/platform/wellknownconfiguration/wellknown_configuration_pb.js +33 -0
  30. package/dist/cjs/src/platform.js +124 -0
  31. package/dist/cjs/src/policy/api.js +21 -38
  32. package/dist/cjs/src/policy/attributes.js +4 -1
  33. package/dist/cjs/src/policy/granter.js +9 -9
  34. package/dist/cjs/src/utils.js +31 -1
  35. package/dist/cjs/src/version.js +2 -2
  36. package/dist/cjs/tdf3/src/client/index.js +23 -18
  37. package/dist/cjs/tdf3/src/tdf.js +5 -5
  38. package/dist/types/src/access/access-fetch.d.ts +21 -0
  39. package/dist/types/src/access/access-fetch.d.ts.map +1 -0
  40. package/dist/types/src/access/access-rpc.d.ts +22 -0
  41. package/dist/types/src/access/access-rpc.d.ts.map +1 -0
  42. package/dist/types/src/access.d.ts +19 -11
  43. package/dist/types/src/access.d.ts.map +1 -1
  44. package/dist/types/src/nanotdf/Client.d.ts +3 -1
  45. package/dist/types/src/nanotdf/Client.d.ts.map +1 -1
  46. package/dist/types/src/opentdf.d.ts +5 -1
  47. package/dist/types/src/opentdf.d.ts.map +1 -1
  48. package/dist/types/src/platform/authorization/authorization_pb.d.ts +609 -0
  49. package/dist/types/src/platform/authorization/authorization_pb.d.ts.map +1 -0
  50. package/dist/types/src/platform/buf/validate/validate_pb.d.ts +4466 -0
  51. package/dist/types/src/platform/buf/validate/validate_pb.d.ts.map +1 -0
  52. package/dist/types/src/platform/common/common_pb.d.ts +112 -0
  53. package/dist/types/src/platform/common/common_pb.d.ts.map +1 -0
  54. package/dist/types/src/platform/entityresolution/entity_resolution_pb.d.ts +199 -0
  55. package/dist/types/src/platform/entityresolution/entity_resolution_pb.d.ts.map +1 -0
  56. package/dist/types/src/platform/google/api/annotations_pb.d.ts +14 -0
  57. package/dist/types/src/platform/google/api/annotations_pb.d.ts.map +1 -0
  58. package/dist/types/src/platform/google/api/http_pb.d.ts +441 -0
  59. package/dist/types/src/platform/google/api/http_pb.d.ts.map +1 -0
  60. package/dist/types/src/platform/kas/kas_pb.d.ts +404 -0
  61. package/dist/types/src/platform/kas/kas_pb.d.ts.map +1 -0
  62. package/dist/types/src/platform/policy/actions/actions_pb.d.ts +265 -0
  63. package/dist/types/src/platform/policy/actions/actions_pb.d.ts.map +1 -0
  64. package/dist/types/src/platform/policy/attributes/attributes_pb.d.ts +1022 -0
  65. package/dist/types/src/platform/policy/attributes/attributes_pb.d.ts.map +1 -0
  66. package/dist/types/src/platform/policy/kasregistry/key_access_server_registry_pb.d.ts +1306 -0
  67. package/dist/types/src/platform/policy/kasregistry/key_access_server_registry_pb.d.ts.map +1 -0
  68. package/dist/types/src/platform/policy/keymanagement/key_management_pb.d.ts +269 -0
  69. package/dist/types/src/platform/policy/keymanagement/key_management_pb.d.ts.map +1 -0
  70. package/dist/types/src/platform/policy/namespaces/namespaces_pb.d.ts +448 -0
  71. package/dist/types/src/platform/policy/namespaces/namespaces_pb.d.ts.map +1 -0
  72. package/dist/types/src/platform/policy/objects_pb.d.ts +1112 -0
  73. package/dist/types/src/platform/policy/objects_pb.d.ts.map +1 -0
  74. package/dist/types/src/platform/policy/registeredresources/registered_resources_pb.d.ts +539 -0
  75. package/dist/types/src/platform/policy/registeredresources/registered_resources_pb.d.ts.map +1 -0
  76. package/dist/types/src/platform/policy/resourcemapping/resource_mapping_pb.d.ts +558 -0
  77. package/dist/types/src/platform/policy/resourcemapping/resource_mapping_pb.d.ts.map +1 -0
  78. package/dist/types/src/platform/policy/selectors_pb.d.ts +221 -0
  79. package/dist/types/src/platform/policy/selectors_pb.d.ts.map +1 -0
  80. package/dist/types/src/platform/policy/subjectmapping/subject_mapping_pb.d.ts +582 -0
  81. package/dist/types/src/platform/policy/subjectmapping/subject_mapping_pb.d.ts.map +1 -0
  82. package/dist/types/src/platform/policy/unsafe/unsafe_pb.d.ts +513 -0
  83. package/dist/types/src/platform/policy/unsafe/unsafe_pb.d.ts.map +1 -0
  84. package/dist/types/src/platform/protoc-gen-openapiv2/options/annotations_pb.d.ts +62 -0
  85. package/dist/types/src/platform/protoc-gen-openapiv2/options/annotations_pb.d.ts.map +1 -0
  86. package/dist/types/src/platform/protoc-gen-openapiv2/options/openapiv2_pb.d.ts +1441 -0
  87. package/dist/types/src/platform/protoc-gen-openapiv2/options/openapiv2_pb.d.ts.map +1 -0
  88. package/dist/types/src/platform/wellknownconfiguration/wellknown_configuration_pb.d.ts +59 -0
  89. package/dist/types/src/platform/wellknownconfiguration/wellknown_configuration_pb.d.ts.map +1 -0
  90. package/dist/types/src/platform.d.ts +49 -0
  91. package/dist/types/src/platform.d.ts.map +1 -0
  92. package/dist/types/src/policy/api.d.ts +1 -1
  93. package/dist/types/src/policy/api.d.ts.map +1 -1
  94. package/dist/types/src/policy/attributes.d.ts +10 -87
  95. package/dist/types/src/policy/attributes.d.ts.map +1 -1
  96. package/dist/types/src/policy/granter.d.ts.map +1 -1
  97. package/dist/types/src/utils.d.ts +10 -0
  98. package/dist/types/src/utils.d.ts.map +1 -1
  99. package/dist/types/src/version.d.ts +1 -1
  100. package/dist/types/tdf3/src/client/index.d.ts +8 -3
  101. package/dist/types/tdf3/src/client/index.d.ts.map +1 -1
  102. package/dist/types/tdf3/src/tdf.d.ts.map +1 -1
  103. package/dist/web/src/access/access-fetch.js +150 -0
  104. package/dist/web/src/access/access-rpc.js +125 -0
  105. package/dist/web/src/access.js +82 -110
  106. package/dist/web/src/auth/oidc.js +2 -2
  107. package/dist/web/src/nanotdf/Client.js +18 -14
  108. package/dist/web/src/nanotdf/models/Header.js +2 -2
  109. package/dist/web/src/nanotdf-crypto/keyAgreement.js +2 -2
  110. package/dist/web/src/opentdf.js +43 -9
  111. package/dist/web/src/platform/authorization/authorization_pb.js +135 -0
  112. package/dist/web/src/platform/buf/validate/validate_pb.js +407 -0
  113. package/dist/web/src/platform/common/common_pb.js +76 -0
  114. package/dist/web/src/platform/entityresolution/entity_resolution_pb.js +46 -0
  115. package/dist/web/src/platform/google/api/annotations_pb.js +27 -0
  116. package/dist/web/src/platform/google/api/http_pb.js +34 -0
  117. package/dist/web/src/platform/kas/kas_pb.js +93 -0
  118. package/dist/web/src/platform/policy/actions/actions_pb.js +67 -0
  119. package/dist/web/src/platform/policy/attributes/attributes_pb.js +237 -0
  120. package/dist/web/src/platform/policy/kasregistry/key_access_server_registry_pb.js +233 -0
  121. package/dist/web/src/platform/policy/keymanagement/key_management_pb.js +67 -0
  122. package/dist/web/src/platform/policy/namespaces/namespaces_pb.js +118 -0
  123. package/dist/web/src/platform/policy/objects_pb.js +392 -0
  124. package/dist/web/src/platform/policy/registeredresources/registered_resources_pb.js +129 -0
  125. package/dist/web/src/platform/policy/resourcemapping/resource_mapping_pb.js +136 -0
  126. package/dist/web/src/platform/policy/selectors_pb.js +64 -0
  127. package/dist/web/src/platform/policy/subjectmapping/subject_mapping_pb.js +143 -0
  128. package/dist/web/src/platform/policy/unsafe/unsafe_pb.js +121 -0
  129. package/dist/web/src/platform/protoc-gen-openapiv2/options/annotations_pb.js +65 -0
  130. package/dist/web/src/platform/protoc-gen-openapiv2/options/openapiv2_pb.js +304 -0
  131. package/dist/web/src/platform/wellknownconfiguration/wellknown_configuration_pb.js +30 -0
  132. package/dist/web/src/platform.js +87 -0
  133. package/dist/web/src/policy/api.js +23 -40
  134. package/dist/web/src/policy/attributes.js +3 -2
  135. package/dist/web/src/policy/granter.js +9 -9
  136. package/dist/web/src/utils.js +29 -1
  137. package/dist/web/src/version.js +2 -2
  138. package/dist/web/tdf3/src/client/index.js +25 -20
  139. package/dist/web/tdf3/src/tdf.js +5 -5
  140. package/package.json +17 -1
  141. package/src/access/access-fetch.ts +202 -0
  142. package/src/access/access-rpc.ts +175 -0
  143. package/src/access.ts +113 -138
  144. package/src/auth/oidc.ts +1 -1
  145. package/src/nanotdf/Client.ts +28 -18
  146. package/src/nanotdf/models/Header.ts +1 -1
  147. package/src/nanotdf-crypto/keyAgreement.ts +1 -1
  148. package/src/opentdf.ts +66 -10
  149. package/src/platform/authorization/authorization_pb.ts +689 -0
  150. package/src/platform/buf/validate/validate_pb.ts +4626 -0
  151. package/src/platform/common/common_pb.ts +135 -0
  152. package/src/platform/entityresolution/entity_resolution_pb.ts +233 -0
  153. package/src/platform/google/api/annotations_pb.ts +39 -0
  154. package/src/platform/google/api/http_pb.ts +474 -0
  155. package/src/platform/kas/kas_pb.ts +484 -0
  156. package/src/platform/policy/actions/actions_pb.ts +312 -0
  157. package/src/platform/policy/attributes/attributes_pb.ts +1181 -0
  158. package/src/platform/policy/kasregistry/key_access_server_registry_pb.ts +1482 -0
  159. package/src/platform/policy/keymanagement/key_management_pb.ts +316 -0
  160. package/src/platform/policy/namespaces/namespaces_pb.ts +528 -0
  161. package/src/platform/policy/objects_pb.ts +1319 -0
  162. package/src/platform/policy/registeredresources/registered_resources_pb.ts +623 -0
  163. package/src/platform/policy/resourcemapping/resource_mapping_pb.ts +658 -0
  164. package/src/platform/policy/selectors_pb.ts +277 -0
  165. package/src/platform/policy/subjectmapping/subject_mapping_pb.ts +687 -0
  166. package/src/platform/policy/unsafe/unsafe_pb.ts +593 -0
  167. package/src/platform/protoc-gen-openapiv2/options/annotations_pb.ts +83 -0
  168. package/src/platform/protoc-gen-openapiv2/options/openapiv2_pb.ts +1615 -0
  169. package/src/platform/wellknownconfiguration/wellknown_configuration_pb.ts +78 -0
  170. package/src/platform.ts +122 -0
  171. package/src/policy/api.ts +29 -42
  172. package/src/policy/attributes.ts +12 -108
  173. package/src/policy/granter.ts +7 -8
  174. package/src/utils.ts +30 -0
  175. package/src/version.ts +1 -1
  176. package/tdf3/src/client/index.ts +40 -19
  177. package/tdf3/src/tdf.ts +5 -6
  178. package/src/platform/authorization/authorization_connect.d.ts +0 -44
  179. package/src/platform/authorization/authorization_connect.js +0 -44
  180. package/src/platform/authorization/authorization_pb.d.ts +0 -707
  181. package/src/platform/authorization/authorization_pb.js +0 -372
  182. package/src/platform/common/common_pb.d.ts +0 -129
  183. package/src/platform/common/common_pb.js +0 -58
  184. package/src/platform/entityresolution/entity_resolution_connect.d.ts +0 -35
  185. package/src/platform/entityresolution/entity_resolution_connect.js +0 -35
  186. package/src/platform/entityresolution/entity_resolution_pb.d.ts +0 -242
  187. package/src/platform/entityresolution/entity_resolution_pb.js +0 -139
  188. package/src/platform/kas/kas_connect.d.ts +0 -59
  189. package/src/platform/kas/kas_connect.js +0 -59
  190. package/src/platform/kas/kas_pb.d.ts +0 -200
  191. package/src/platform/kas/kas_pb.js +0 -84
  192. package/src/platform/policy/attributes/attributes_connect.d.ts +0 -168
  193. package/src/platform/policy/attributes/attributes_connect.js +0 -168
  194. package/src/platform/policy/attributes/attributes_pb.d.ts +0 -929
  195. package/src/platform/policy/attributes/attributes_pb.js +0 -363
  196. package/src/platform/policy/kasregistry/key_access_server_registry_connect.d.ts +0 -62
  197. package/src/platform/policy/kasregistry/key_access_server_registry_connect.js +0 -62
  198. package/src/platform/policy/kasregistry/key_access_server_registry_pb.d.ts +0 -283
  199. package/src/platform/policy/kasregistry/key_access_server_registry_pb.js +0 -113
  200. package/src/platform/policy/namespaces/namespaces_connect.d.ts +0 -62
  201. package/src/platform/policy/namespaces/namespaces_connect.js +0 -62
  202. package/src/platform/policy/namespaces/namespaces_pb.d.ts +0 -270
  203. package/src/platform/policy/namespaces/namespaces_pb.js +0 -110
  204. package/src/platform/policy/objects_pb.d.ts +0 -725
  205. package/src/platform/policy/objects_pb.js +0 -288
  206. package/src/platform/policy/resourcemapping/resource_mapping_connect.d.ts +0 -259
  207. package/src/platform/policy/resourcemapping/resource_mapping_connect.js +0 -259
  208. package/src/platform/policy/resourcemapping/resource_mapping_pb.d.ts +0 -314
  209. package/src/platform/policy/resourcemapping/resource_mapping_pb.js +0 -142
  210. package/src/platform/policy/selectors_pb.d.ts +0 -269
  211. package/src/platform/policy/selectors_pb.js +0 -110
  212. package/src/platform/policy/subjectmapping/subject_mapping_connect.d.ts +0 -118
  213. package/src/platform/policy/subjectmapping/subject_mapping_connect.js +0 -118
  214. package/src/platform/policy/subjectmapping/subject_mapping_pb.d.ts +0 -672
  215. package/src/platform/policy/subjectmapping/subject_mapping_pb.js +0 -260
  216. package/src/platform/wellknownconfiguration/wellknown_configuration_connect.d.ts +0 -26
  217. package/src/platform/wellknownconfiguration/wellknown_configuration_connect.js +0 -26
  218. package/src/platform/wellknownconfiguration/wellknown_configuration_pb.d.ts +0 -75
  219. package/src/platform/wellknownconfiguration/wellknown_configuration_pb.js +0 -35
@@ -52,7 +52,7 @@ export async function keyAgreement(privateKey, publicKey, options = {
52
52
  isExtractable: true,
53
53
  }) {
54
54
  for (const k of [privateKey, publicKey]) {
55
- const mechanism = keyAlgorithmToPublicKeyAlgorithm(k.algorithm);
55
+ const mechanism = keyAlgorithmToPublicKeyAlgorithm(k);
56
56
  if (mechanism !== 'ec:secp256r1') {
57
57
  throw new ConfigurationError(`${k.type} CryptoKey is expected to be of type ECDSA or ECDH, not [${k.algorithm?.name}]`);
58
58
  }
@@ -87,4 +87,4 @@ export async function keyAgreement(privateKey, publicKey, options = {
87
87
  }, isExtractable, keyUsages);
88
88
  return symmetricKey;
89
89
  }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5QWdyZWVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL25hbm90ZGYtY3J5cHRvL2tleUFncmVlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBRUg7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUVILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRW5HLE1BQU0sb0JBQW9CLEdBQUcsV0FBVyxDQUFDO0FBYXpDOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUNoQyxVQUFxQixFQUNyQixTQUFvQixFQUNwQixVQUF3QztJQUN0QyxTQUFTLEVBQUUsR0FBRztJQUNkLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTTtJQUN6QixRQUFRLEVBQUUsSUFBSSxVQUFVLEVBQUU7SUFDMUIsUUFBUSxFQUFFLElBQUksVUFBVSxFQUFFO0lBQzFCLFNBQVMsRUFBRSxVQUFVLENBQUMsTUFBTTtJQUM1QixTQUFTLEVBQUUsR0FBRztJQUNkLFNBQVMsRUFBRTtRQUNULFlBQVksQ0FBQyxPQUFPO1FBQ3BCLFlBQVksQ0FBQyxPQUFPO1FBQ3BCLFlBQVksQ0FBQyxTQUFTO1FBQ3RCLFlBQVksQ0FBQyxPQUFPO0tBQ3JCO0lBQ0QsYUFBYSxFQUFFLElBQUk7Q0FDcEI7SUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDeEMsTUFBTSxTQUFTLEdBQUcsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hFLElBQUksU0FBUyxLQUFLLGNBQWMsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sSUFBSSxrQkFBa0IsQ0FDMUIsR0FBRyxDQUFDLENBQUMsSUFBSSw0REFBNEQsQ0FBQyxDQUFDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FDMUYsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4QyxNQUFNLElBQUksa0JBQWtCLENBQzFCLHdFQUF3RSxVQUFVLENBQUMsSUFBSSxHQUFHLENBQzNGLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0QyxNQUFNLElBQUksa0JBQWtCLENBQzFCLHNFQUFzRSxTQUFTLENBQUMsSUFBSSxHQUFHLENBQ3hGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxFQUNKLFNBQVMsR0FBRyxHQUFHLEVBQ2YsUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQzFCLFFBQVEsR0FBRyxJQUFJLFVBQVUsRUFBRSxFQUMzQixRQUFRLEdBQUcsSUFBSSxVQUFVLEVBQUUsRUFDM0IsU0FBUyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQzdCLFNBQVMsR0FBRyxHQUFHLEVBQ2YsYUFBYSxHQUFHLElBQUksRUFDcEIsU0FBUyxHQUFHO1FBQ1YsWUFBWSxDQUFDLE9BQU87UUFDcEIsWUFBWSxDQUFDLE9BQU87UUFDcEIsWUFBWSxDQUFDLFNBQVM7UUFDdEIsWUFBWSxDQUFDLE9BQU87S0FDckIsR0FDRixHQUFHLE9BQU8sQ0FBQztJQUVaLE1BQU0sV0FBVyxHQUFHLE1BQU0sTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQ2hEO1FBQ0UsSUFBSSxFQUFFLGFBQWEsQ0FBQyxJQUFJO1FBQ3hCLE1BQU0sRUFBRSxTQUFTO0tBQ2xCLEVBQ0QsVUFBVSxFQUNWLFNBQVMsQ0FDVixDQUFDO0lBRUYsTUFBTSxVQUFVLEdBQUcsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FDOUMsU0FBUyxDQUFDLEdBQUcsRUFDYixXQUFXLEVBQ1g7UUFDRSxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7S0FDekIsRUFDRCxLQUFLLEVBQ0wsQ0FBQyxvQkFBb0IsQ0FBQyxDQUN2QixDQUFDO0lBRUYsTUFBTSxZQUFZLEdBQUcsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FDaEQ7UUFDRSxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7UUFDeEIsSUFBSSxFQUFFLFFBQVE7UUFDZCxJQUFJLEVBQUUsUUFBUTtRQUNkLElBQUksRUFBRSxRQUFRO0tBQ2YsRUFDRCxVQUFVLEVBQ1Y7UUFDRSxJQUFJLEVBQUUsU0FBUztRQUNmLE1BQU0sRUFBRSxTQUFTO0tBQ2xCLEVBQ0QsYUFBYSxFQUNiLFNBQVMsQ0FDVixDQUFDO0lBRUYsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQyJ9
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5QWdyZWVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL25hbm90ZGYtY3J5cHRvL2tleUFncmVlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBRUg7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUVILE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRW5HLE1BQU0sb0JBQW9CLEdBQUcsV0FBVyxDQUFDO0FBYXpDOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUNoQyxVQUFxQixFQUNyQixTQUFvQixFQUNwQixVQUF3QztJQUN0QyxTQUFTLEVBQUUsR0FBRztJQUNkLFFBQVEsRUFBRSxRQUFRLENBQUMsTUFBTTtJQUN6QixRQUFRLEVBQUUsSUFBSSxVQUFVLEVBQUU7SUFDMUIsUUFBUSxFQUFFLElBQUksVUFBVSxFQUFFO0lBQzFCLFNBQVMsRUFBRSxVQUFVLENBQUMsTUFBTTtJQUM1QixTQUFTLEVBQUUsR0FBRztJQUNkLFNBQVMsRUFBRTtRQUNULFlBQVksQ0FBQyxPQUFPO1FBQ3BCLFlBQVksQ0FBQyxPQUFPO1FBQ3BCLFlBQVksQ0FBQyxTQUFTO1FBQ3RCLFlBQVksQ0FBQyxPQUFPO0tBQ3JCO0lBQ0QsYUFBYSxFQUFFLElBQUk7Q0FDcEI7SUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDeEMsTUFBTSxTQUFTLEdBQUcsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxTQUFTLEtBQUssY0FBYyxFQUFFLENBQUM7WUFDakMsTUFBTSxJQUFJLGtCQUFrQixDQUMxQixHQUFHLENBQUMsQ0FBQyxJQUFJLDREQUE0RCxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksR0FBRyxDQUMxRixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3hDLE1BQU0sSUFBSSxrQkFBa0IsQ0FDMUIsd0VBQXdFLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FDM0YsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLFNBQVMsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxrQkFBa0IsQ0FDMUIsc0VBQXNFLFNBQVMsQ0FBQyxJQUFJLEdBQUcsQ0FDeEYsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLEVBQ0osU0FBUyxHQUFHLEdBQUcsRUFDZixRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFDMUIsUUFBUSxHQUFHLElBQUksVUFBVSxFQUFFLEVBQzNCLFFBQVEsR0FBRyxJQUFJLFVBQVUsRUFBRSxFQUMzQixTQUFTLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFDN0IsU0FBUyxHQUFHLEdBQUcsRUFDZixhQUFhLEdBQUcsSUFBSSxFQUNwQixTQUFTLEdBQUc7UUFDVixZQUFZLENBQUMsT0FBTztRQUNwQixZQUFZLENBQUMsT0FBTztRQUNwQixZQUFZLENBQUMsU0FBUztRQUN0QixZQUFZLENBQUMsT0FBTztLQUNyQixHQUNGLEdBQUcsT0FBTyxDQUFDO0lBRVosTUFBTSxXQUFXLEdBQUcsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FDaEQ7UUFDRSxJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7UUFDeEIsTUFBTSxFQUFFLFNBQVM7S0FDbEIsRUFDRCxVQUFVLEVBQ1YsU0FBUyxDQUNWLENBQUM7SUFFRixNQUFNLFVBQVUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUM5QyxTQUFTLENBQUMsR0FBRyxFQUNiLFdBQVcsRUFDWDtRQUNFLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSTtLQUN6QixFQUNELEtBQUssRUFDTCxDQUFDLG9CQUFvQixDQUFDLENBQ3ZCLENBQUM7SUFFRixNQUFNLFlBQVksR0FBRyxNQUFNLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUNoRDtRQUNFLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSTtRQUN4QixJQUFJLEVBQUUsUUFBUTtRQUNkLElBQUksRUFBRSxRQUFRO1FBQ2QsSUFBSSxFQUFFLFFBQVE7S0FDZixFQUNELFVBQVUsRUFDVjtRQUNFLElBQUksRUFBRSxTQUFTO1FBQ2YsTUFBTSxFQUFFLFNBQVM7S0FDbEIsRUFDRCxhQUFhLEVBQ2IsU0FBUyxDQUNWLENBQUM7SUFFRixPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDIn0=
@@ -6,7 +6,7 @@ import decryptNanoTDF from './nanotdf/decrypt.js';
6
6
  import Client from './nanotdf/Client.js';
7
7
  import { fromSource, sourceToStream } from './seekable.js';
8
8
  import { Client as TDF3Client } from '../tdf3/src/client/index.js';
9
- import { OriginAllowList, isPublicKeyAlgorithm } from './access.js';
9
+ import { OriginAllowList, fetchKeyAccessServers, isPublicKeyAlgorithm, } from './access.js';
10
10
  import { decryptStreamFrom, loadTDFStream, } from '../tdf3/src/tdf.js';
11
11
  import { base64 } from './encodings/index.js';
12
12
  import PolicyType from './nanotdf/enum/PolicyTypeEnum.js';
@@ -67,17 +67,23 @@ export class RewrapCache {
67
67
  }
68
68
  // SDK for dealing with OpenTDF data and policy services.
69
69
  export class OpenTDF {
70
- constructor({ authProvider, dpopKeys, defaultCreateOptions, defaultReadOptions, disableDPoP, policyEndpoint, rewrapCacheOptions, }) {
70
+ constructor({ authProvider, dpopKeys, defaultCreateOptions, defaultReadOptions, disableDPoP, policyEndpoint, rewrapCacheOptions, platformUrl, }) {
71
71
  this.authProvider = authProvider;
72
72
  this.defaultCreateOptions = defaultCreateOptions || {};
73
73
  this.defaultReadOptions = defaultReadOptions || {};
74
74
  this.dpopEnabled = !!disableDPoP;
75
+ if (platformUrl) {
76
+ this.platformUrl = platformUrl;
77
+ }
78
+ else {
79
+ console.warn("Warning: 'platformUrl' is required for security to ensure the SDK uses the platform-configured Key Access Server list");
80
+ }
75
81
  this.policyEndpoint = policyEndpoint || '';
76
82
  this.rewrapCache = new RewrapCache(rewrapCacheOptions);
77
83
  this.tdf3Client = new TDF3Client({
78
84
  authProvider,
79
85
  dpopKeys,
80
- kasEndpoint: 'https://disallow.all.invalid',
86
+ kasEndpoint: this.platformUrl || 'https://disallow.all.invalid',
81
87
  policyEndpoint,
82
88
  });
83
89
  this.dpopKeys =
@@ -90,8 +96,14 @@ export class OpenTDF {
90
96
  }, true, ['sign', 'verify']);
91
97
  }
92
98
  async createNanoTDF(opts) {
93
- opts = { ...this.defaultCreateOptions, ...opts };
94
- const collection = await this.createNanoTDFCollection(opts);
99
+ opts = {
100
+ ...this.defaultCreateOptions,
101
+ ...opts,
102
+ };
103
+ const collection = await this.createNanoTDFCollection({
104
+ ...opts,
105
+ platformUrl: this.platformUrl,
106
+ });
95
107
  try {
96
108
  return await collection.encrypt(opts.source);
97
109
  }
@@ -161,6 +173,9 @@ class UnknownTypeReader {
161
173
  this.state = 'resolving';
162
174
  const chunker = await fromSource(this.opts.source);
163
175
  const prefix = await chunker(0, 3);
176
+ if (!this.opts.platformUrl && this.outer.platformUrl) {
177
+ this.opts.platformUrl = this.outer.platformUrl;
178
+ }
164
179
  if (prefix[0] === 0x50 && prefix[1] === 0x4b) {
165
180
  this.state = 'loaded';
166
181
  return new ZTDFReader(this.outer.tdf3Client, this.opts, chunker);
@@ -206,6 +221,11 @@ class NanoTDFReader {
206
221
  this.opts = opts;
207
222
  this.chunker = chunker;
208
223
  this.rewrapCache = rewrapCache;
224
+ if (!this.opts.ignoreAllowlist &&
225
+ !this.opts.platformUrl &&
226
+ !this.opts.allowedKASEndpoints?.length) {
227
+ throw new ConfigurationError('platformUrl is required when allowedKasEndpoints is empty');
228
+ }
209
229
  // lazily load the container
210
230
  this.container = new Promise(async (resolve, reject) => {
211
231
  try {
@@ -226,13 +246,16 @@ class NanoTDFReader {
226
246
  r.header = nanotdf.header;
227
247
  return r;
228
248
  }
249
+ const platformUrl = this.opts.platformUrl || this.outer.platformUrl;
250
+ const kasEndpoint = this.opts.allowedKASEndpoints?.[0] || platformUrl || 'https://disallow.all.invalid';
229
251
  const nc = new Client({
230
252
  allowedKases: this.opts.allowedKASEndpoints,
231
253
  authProvider: this.outer.authProvider,
232
254
  ignoreAllowList: this.opts.ignoreAllowlist,
233
255
  dpopEnabled: this.outer.dpopEnabled,
234
256
  dpopKeys: this.outer.dpopKeys,
235
- kasEndpoint: this.opts.allowedKASEndpoints?.[0] || 'https://disallow.all.invalid',
257
+ kasEndpoint,
258
+ platformUrl,
236
259
  });
237
260
  // TODO: The version number should be fetched from the API
238
261
  const version = '0.0.1';
@@ -274,12 +297,21 @@ class ZTDFReader {
274
297
  }
275
298
  async decrypt() {
276
299
  const { assertionVerificationKeys, noVerify: noVerifyAssertions, wrappingKeyAlgorithm, } = this.opts;
277
- const allowList = new OriginAllowList(this.opts.allowedKASEndpoints ?? [], this.opts.ignoreAllowlist);
300
+ if (!this.opts.ignoreAllowlist && !this.opts.allowedKASEndpoints && !this.opts.platformUrl) {
301
+ throw new ConfigurationError('platformUrl is required when allowedKasEndpoints is empty');
302
+ }
278
303
  const dpopKeys = await this.client.dpopKeys;
279
304
  const { authProvider, cryptoService } = this.client;
280
305
  if (!authProvider) {
281
306
  throw new ConfigurationError('authProvider is required');
282
307
  }
308
+ let allowList;
309
+ if (this.opts.allowedKASEndpoints?.length || this.opts.ignoreAllowlist) {
310
+ allowList = new OriginAllowList(this.opts.allowedKASEndpoints || [], this.opts.ignoreAllowlist);
311
+ }
312
+ else if (this.opts.platformUrl) {
313
+ allowList = await fetchKeyAccessServers(this.opts.platformUrl, authProvider);
314
+ }
283
315
  const overview = await this.overview;
284
316
  const oldStream = await decryptStreamFrom({
285
317
  allowList,
@@ -344,10 +376,12 @@ class Collection {
344
376
  this.encryptOptions = { ecdsaBinding: false };
345
377
  break;
346
378
  }
379
+ const kasEndpoint = opts.defaultKASEndpoint || opts.platformUrl || 'https://disallow.all.invalid';
347
380
  this.client = new NanoTDFDatasetClient({
348
381
  authProvider,
349
- kasEndpoint: opts.defaultKASEndpoint ?? 'https://disallow.all.invalid',
382
+ kasEndpoint: kasEndpoint,
350
383
  maxKeyIterations: opts.maxKeyIterations,
384
+ platformUrl: opts.platformUrl,
351
385
  });
352
386
  }
353
387
  async encrypt(source) {
@@ -370,4 +404,4 @@ class Collection {
370
404
  delete this.client;
371
405
  }
372
406
  }
373
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbnRkZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVudGRmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNuRSxPQUFPLEVBQTZDLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkcsT0FBTyxFQUFFLE1BQU0sSUFBSSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQztBQUMzQyxPQUFPLGNBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLE1BQU0sTUFBTSxxQkFBcUIsQ0FBQztBQUV6QyxPQUFPLEVBQVcsVUFBVSxFQUFFLGNBQWMsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxJQUFJLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTW5FLE9BQU8sRUFBOEIsZUFBZSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBU2hHLE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsYUFBYSxHQUVkLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlDLE9BQU8sVUFBVSxNQUFNLGtDQUFrQyxDQUFDO0FBRzFELE9BQU8sRUFVTCxvQkFBb0IsR0FDckIsQ0FBQztBQTJKRixNQUFNLHlCQUF5QixHQUFpQztJQUM5RCxNQUFNLEVBQUUsS0FBSztJQUNiLE1BQU0sRUFBRSxNQUFNO0lBQ2QsWUFBWSxFQUFFLEdBQUc7Q0FDbEIsQ0FBQztBQUVGLDRDQUE0QztBQUM1QywrRUFBK0U7QUFDL0UsMEZBQTBGO0FBQzFGLDREQUE0RDtBQUM1RCxNQUFNLE9BQU8sV0FBVztJQUd0QixZQUFZLElBQXlCO1FBQ25DLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFB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
407
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbnRkZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcGVudGRmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNuRSxPQUFPLEVBQTZDLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkcsT0FBTyxFQUFFLE1BQU0sSUFBSSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQztBQUMzQyxPQUFPLGNBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLE1BQU0sTUFBTSxxQkFBcUIsQ0FBQztBQUV6QyxPQUFPLEVBQVcsVUFBVSxFQUFFLGNBQWMsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxJQUFJLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTW5FLE9BQU8sRUFFTCxlQUFlLEVBQ2YscUJBQXFCLEVBQ3JCLG9CQUFvQixHQUNyQixNQUFNLGFBQWEsQ0FBQztBQVNyQixPQUFPLEVBQ0wsaUJBQWlCLEVBRWpCLGFBQWEsR0FFZCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLFVBQVUsTUFBTSxrQ0FBa0MsQ0FBQztBQUcxRCxPQUFPLEVBVUwsb0JBQW9CLEdBQ3JCLENBQUM7QUFpS0YsTUFBTSx5QkFBeUIsR0FBaUM7SUFDOUQsTUFBTSxFQUFFLEtBQUs7SUFDYixNQUFNLEVBQUUsTUFBTTtJQUNkLFlBQVksRUFBRSxHQUFHO0NBQ2xCLENBQUM7QUFFRiw0Q0FBNEM7QUFDNUMsK0VBQStFO0FBQy9FLDBGQUEwRjtBQUMxRiw0REFBNEQ7QUFDNUQsTUFBTSxPQUFPLFdBQVc7SUFHdEIsWUFBWSxJQUF5QjtRQUNuQyxNQUFNLEVBQUUs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
@@ -0,0 +1,135 @@
1
+ // @generated by protoc-gen-es v2.2.5 with parameter "target=ts,import_extension=.js"
2
+ // @generated from file authorization/authorization.proto (package authorization, syntax proto3)
3
+ /* eslint-disable */
4
+ import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv1";
5
+ import { file_google_api_annotations } from "../google/api/annotations_pb.js";
6
+ import { file_google_protobuf_any } from "@bufbuild/protobuf/wkt";
7
+ import { file_policy_objects } from "../policy/objects_pb.js";
8
+ /**
9
+ * Describes the file authorization/authorization.proto.
10
+ */
11
+ export const file_authorization_authorization = /*@__PURE__*/ fileDesc("CiFhdXRob3JpemF0aW9uL2F1dGhvcml6YXRpb24ucHJvdG8SDWF1dGhvcml6YXRpb24iIAoFVG9rZW4SCgoCaWQYASABKAkSCwoDand0GAIgASgJIvICCgZFbnRpdHkSCgoCaWQYASABKAkSFwoNZW1haWxfYWRkcmVzcxgCIAEoCUgAEhMKCXVzZXJfbmFtZRgDIAEoCUgAEhsKEXJlbW90ZV9jbGFpbXNfdXJsGAQgASgJSAASDgoEdXVpZBgFIAEoCUgAEiYKBmNsYWltcxgGIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlIABItCgZjdXN0b20YByABKAsyGy5hdXRob3JpemF0aW9uLkVudGl0eUN1c3RvbUgAEhMKCWNsaWVudF9pZBgIIAEoCUgAEjAKCGNhdGVnb3J5GAkgASgOMh4uYXV0aG9yaXphdGlvbi5FbnRpdHkuQ2F0ZWdvcnkiVAoIQ2F0ZWdvcnkSGAoUQ0FURUdPUllfVU5TUEVDSUZJRUQQABIUChBDQVRFR09SWV9TVUJKRUNUEAESGAoUQ0FURUdPUllfRU5WSVJPTk1FTlQQAkINCgtlbnRpdHlfdHlwZSI3CgxFbnRpdHlDdXN0b20SJwoJZXh0ZW5zaW9uGAEgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueSJCCgtFbnRpdHlDaGFpbhIKCgJpZBgBIAEoCRInCghlbnRpdGllcxgCIAMoCzIVLmF1dGhvcml6YXRpb24uRW50aXR5IqQBCg9EZWNpc2lvblJlcXVlc3QSHwoHYWN0aW9ucxgBIAMoCzIOLnBvbGljeS5BY3Rpb24SMQoNZW50aXR5X2NoYWlucxgCIAMoCzIaLmF1dGhvcml6YXRpb24uRW50aXR5Q2hhaW4SPQoTcmVzb3VyY2VfYXR0cmlidXRlcxgDIAMoCzIgLmF1dGhvcml6YXRpb24uUmVzb3VyY2VBdHRyaWJ1dGUiigIKEERlY2lzaW9uUmVzcG9uc2USFwoPZW50aXR5X2NoYWluX2lkGAEgASgJEh4KFnJlc291cmNlX2F0dHJpYnV0ZXNfaWQYAiABKAkSHgoGYWN0aW9uGAMgASgLMg4ucG9saWN5LkFjdGlvbhI6CghkZWNpc2lvbhgEIAEoDjIoLmF1dGhvcml6YXRpb24uRGVjaXNpb25SZXNwb25zZS5EZWNpc2lvbhITCgtvYmxpZ2F0aW9ucxgFIAMoCSJMCghEZWNpc2lvbhIYChRERUNJU0lPTl9VTlNQRUNJRklFRBAAEhEKDURFQ0lTSU9OX0RFTlkQARITCg9ERUNJU0lPTl9QRVJNSVQQAiJQChNHZXREZWNpc2lvbnNSZXF1ZXN0EjkKEWRlY2lzaW9uX3JlcXVlc3RzGAEgAygLMh4uYXV0aG9yaXphdGlvbi5EZWNpc2lvblJlcXVlc3QiUwoUR2V0RGVjaXNpb25zUmVzcG9uc2USOwoSZGVjaXNpb25fcmVzcG9uc2VzGAEgAygLMh8uYXV0aG9yaXphdGlvbi5EZWNpc2lvblJlc3BvbnNlIs0BChZHZXRFbnRpdGxlbWVudHNSZXF1ZXN0EicKCGVudGl0aWVzGAEgAygLMhUuYXV0aG9yaXphdGlvbi5FbnRpdHkSNAoFc2NvcGUYAiABKAsyIC5hdXRob3JpemF0aW9uLlJlc291cmNlQXR0cmlidXRlSACIAQESKQocd2l0aF9jb21wcmVoZW5zaXZlX2hpZXJhcmNoeRgDIAEoCEgBiAEBQggKBl9zY29wZUIfCh1fd2l0aF9jb21wcmVoZW5zaXZlX2hpZXJhcmNoeSJFChJFbnRpdHlFbnRpdGxlbWVudHMSEQoJZW50aXR5X2lkGAEgASgJEhwKFGF0dHJpYnV0ZV92YWx1ZV9mcW5zGAIgAygJIlEKEVJlc291cmNlQXR0cmlidXRlEh4KFnJlc291cmNlX2F0dHJpYnV0ZXNfaWQYASABKAkSHAoUYXR0cmlidXRlX3ZhbHVlX2ZxbnMYAiADKAkiUgoXR2V0RW50aXRsZW1lbnRzUmVzcG9uc2USNwoMZW50aXRsZW1lbnRzGAEgAygLMiEuYXV0aG9yaXphdGlvbi5FbnRpdHlFbnRpdGxlbWVudHMinAEKFFRva2VuRGVjaXNpb25SZXF1ZXN0Eh8KB2FjdGlvbnMYASADKAsyDi5wb2xpY3kuQWN0aW9uEiQKBnRva2VucxgCIAMoCzIULmF1dGhvcml6YXRpb24uVG9rZW4SPQoTcmVzb3VyY2VfYXR0cmlidXRlcxgDIAMoCzIgLmF1dGhvcml6YXRpb24uUmVzb3VyY2VBdHRyaWJ1dGUiXAoaR2V0RGVjaXNpb25zQnlUb2tlblJlcXVlc3QSPgoRZGVjaXNpb25fcmVxdWVzdHMYASADKAsyIy5hdXRob3JpemF0aW9uLlRva2VuRGVjaXNpb25SZXF1ZXN0IloKG0dldERlY2lzaW9uc0J5VG9rZW5SZXNwb25zZRI7ChJkZWNpc2lvbl9yZXNwb25zZXMYASADKAsyHy5hdXRob3JpemF0aW9uLkRlY2lzaW9uUmVzcG9uc2UynAMKFEF1dGhvcml6YXRpb25TZXJ2aWNlEnUKDEdldERlY2lzaW9ucxIiLmF1dGhvcml6YXRpb24uR2V0RGVjaXNpb25zUmVxdWVzdBojLmF1dGhvcml6YXRpb24uR2V0RGVjaXNpb25zUmVzcG9uc2UiHILT5JMCFjoBKiIRL3YxL2F1dGhvcml6YXRpb24SjQEKE0dldERlY2lzaW9uc0J5VG9rZW4SKS5hdXRob3JpemF0aW9uLkdldERlY2lzaW9uc0J5VG9rZW5SZXF1ZXN0GiouYXV0aG9yaXphdGlvbi5HZXREZWNpc2lvbnNCeVRva2VuUmVzcG9uc2UiH4LT5JMCGSIXL3YxL3Rva2VuL2F1dGhvcml6YXRpb24SfQoPR2V0RW50aXRsZW1lbnRzEiUuYXV0aG9yaXphdGlvbi5HZXRFbnRpdGxlbWVudHNSZXF1ZXN0GiYuYXV0aG9yaXphdGlvbi5HZXRFbnRpdGxlbWVudHNSZXNwb25zZSIbgtPkkwIVOgEqIhAvdjEvZW50aXRsZW1lbnRzYgZwcm90bzM", [file_google_api_annotations, file_google_protobuf_any, file_policy_objects]);
12
+ /**
13
+ * Describes the message authorization.Token.
14
+ * Use `create(TokenSchema)` to create a new message.
15
+ */
16
+ export const TokenSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 0);
17
+ /**
18
+ * Describes the message authorization.Entity.
19
+ * Use `create(EntitySchema)` to create a new message.
20
+ */
21
+ export const EntitySchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 1);
22
+ /**
23
+ * @generated from enum authorization.Entity.Category
24
+ */
25
+ export var Entity_Category;
26
+ (function (Entity_Category) {
27
+ /**
28
+ * @generated from enum value: CATEGORY_UNSPECIFIED = 0;
29
+ */
30
+ Entity_Category[Entity_Category["UNSPECIFIED"] = 0] = "UNSPECIFIED";
31
+ /**
32
+ * @generated from enum value: CATEGORY_SUBJECT = 1;
33
+ */
34
+ Entity_Category[Entity_Category["SUBJECT"] = 1] = "SUBJECT";
35
+ /**
36
+ * @generated from enum value: CATEGORY_ENVIRONMENT = 2;
37
+ */
38
+ Entity_Category[Entity_Category["ENVIRONMENT"] = 2] = "ENVIRONMENT";
39
+ })(Entity_Category || (Entity_Category = {}));
40
+ /**
41
+ * Describes the enum authorization.Entity.Category.
42
+ */
43
+ export const Entity_CategorySchema = /*@__PURE__*/ enumDesc(file_authorization_authorization, 1, 0);
44
+ /**
45
+ * Describes the message authorization.EntityCustom.
46
+ * Use `create(EntityCustomSchema)` to create a new message.
47
+ */
48
+ export const EntityCustomSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 2);
49
+ /**
50
+ * Describes the message authorization.EntityChain.
51
+ * Use `create(EntityChainSchema)` to create a new message.
52
+ */
53
+ export const EntityChainSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 3);
54
+ /**
55
+ * Describes the message authorization.DecisionRequest.
56
+ * Use `create(DecisionRequestSchema)` to create a new message.
57
+ */
58
+ export const DecisionRequestSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 4);
59
+ /**
60
+ * Describes the message authorization.DecisionResponse.
61
+ * Use `create(DecisionResponseSchema)` to create a new message.
62
+ */
63
+ export const DecisionResponseSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 5);
64
+ /**
65
+ * @generated from enum authorization.DecisionResponse.Decision
66
+ */
67
+ export var DecisionResponse_Decision;
68
+ (function (DecisionResponse_Decision) {
69
+ /**
70
+ * @generated from enum value: DECISION_UNSPECIFIED = 0;
71
+ */
72
+ DecisionResponse_Decision[DecisionResponse_Decision["UNSPECIFIED"] = 0] = "UNSPECIFIED";
73
+ /**
74
+ * @generated from enum value: DECISION_DENY = 1;
75
+ */
76
+ DecisionResponse_Decision[DecisionResponse_Decision["DENY"] = 1] = "DENY";
77
+ /**
78
+ * @generated from enum value: DECISION_PERMIT = 2;
79
+ */
80
+ DecisionResponse_Decision[DecisionResponse_Decision["PERMIT"] = 2] = "PERMIT";
81
+ })(DecisionResponse_Decision || (DecisionResponse_Decision = {}));
82
+ /**
83
+ * Describes the enum authorization.DecisionResponse.Decision.
84
+ */
85
+ export const DecisionResponse_DecisionSchema = /*@__PURE__*/ enumDesc(file_authorization_authorization, 5, 0);
86
+ /**
87
+ * Describes the message authorization.GetDecisionsRequest.
88
+ * Use `create(GetDecisionsRequestSchema)` to create a new message.
89
+ */
90
+ export const GetDecisionsRequestSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 6);
91
+ /**
92
+ * Describes the message authorization.GetDecisionsResponse.
93
+ * Use `create(GetDecisionsResponseSchema)` to create a new message.
94
+ */
95
+ export const GetDecisionsResponseSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 7);
96
+ /**
97
+ * Describes the message authorization.GetEntitlementsRequest.
98
+ * Use `create(GetEntitlementsRequestSchema)` to create a new message.
99
+ */
100
+ export const GetEntitlementsRequestSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 8);
101
+ /**
102
+ * Describes the message authorization.EntityEntitlements.
103
+ * Use `create(EntityEntitlementsSchema)` to create a new message.
104
+ */
105
+ export const EntityEntitlementsSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 9);
106
+ /**
107
+ * Describes the message authorization.ResourceAttribute.
108
+ * Use `create(ResourceAttributeSchema)` to create a new message.
109
+ */
110
+ export const ResourceAttributeSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 10);
111
+ /**
112
+ * Describes the message authorization.GetEntitlementsResponse.
113
+ * Use `create(GetEntitlementsResponseSchema)` to create a new message.
114
+ */
115
+ export const GetEntitlementsResponseSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 11);
116
+ /**
117
+ * Describes the message authorization.TokenDecisionRequest.
118
+ * Use `create(TokenDecisionRequestSchema)` to create a new message.
119
+ */
120
+ export const TokenDecisionRequestSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 12);
121
+ /**
122
+ * Describes the message authorization.GetDecisionsByTokenRequest.
123
+ * Use `create(GetDecisionsByTokenRequestSchema)` to create a new message.
124
+ */
125
+ export const GetDecisionsByTokenRequestSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 13);
126
+ /**
127
+ * Describes the message authorization.GetDecisionsByTokenResponse.
128
+ * Use `create(GetDecisionsByTokenResponseSchema)` to create a new message.
129
+ */
130
+ export const GetDecisionsByTokenResponseSchema = /*@__PURE__*/ messageDesc(file_authorization_authorization, 14);
131
+ /**
132
+ * @generated from service authorization.AuthorizationService
133
+ */
134
+ export const AuthorizationService = /*@__PURE__*/ serviceDesc(file_authorization_authorization, 0);
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbl9wYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wbGF0Zm9ybS9hdXRob3JpemF0aW9uL2F1dGhvcml6YXRpb25fcGIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUZBQXFGO0FBQ3JGLGdHQUFnRztBQUNoRyxvQkFBb0I7QUFHcEIsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRWxFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzlEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQVksYUFBYSxDQUNwRSxRQUFRLENBQUMsaW9HQUFpb0csRUFBRSxDQUFDLDJCQUEyQixFQUFFLHdCQUF3QixFQUFFLG1CQUFtQixDQUFDLENBQUMsQ0FBQztBQXFCNXRHOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBc0IsYUFBYSxDQUN6RCxXQUFXLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUF3RW5EOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBdUIsYUFBYSxDQUMzRCxXQUFXLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFFbkQ7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxlQWVYO0FBZkQsV0FBWSxlQUFlO0lBQ3pCOztPQUVHO0lBQ0gsbUVBQWUsQ0FBQTtJQUVmOztPQUVHO0lBQ0gsMkRBQVcsQ0FBQTtJQUVYOztPQUVHO0lBQ0gsbUVBQWUsQ0FBQTtBQUNqQixDQUFDLEVBZlcsZUFBZSxLQUFmLGVBQWUsUUFlMUI7QUFFRDs7R0FF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