@nocobase/plugin-idp-oauth 2.2.17 → 2.2.18

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 (598) hide show
  1. package/build.config.ts +1 -1
  2. package/dist/externalVersion.js +8 -8
  3. package/dist/node_modules/light-my-request/index.js +2 -2
  4. package/dist/node_modules/light-my-request/node_modules/cookie/dist/index.d.ts +148 -0
  5. package/dist/node_modules/light-my-request/node_modules/cookie/dist/index.js +350 -0
  6. package/dist/node_modules/light-my-request/node_modules/cookie/package.json +47 -0
  7. package/dist/node_modules/light-my-request/package.json +1 -1
  8. package/dist/node_modules/ms/package.json +1 -1
  9. package/dist/node_modules/oidc-provider/README.md +28 -25
  10. package/dist/node_modules/oidc-provider/THIRD-PARTY-NOTICES.md +184 -0
  11. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba.js +169 -0
  12. package/dist/node_modules/oidc-provider/lib/actions/authorization/claims.js +132 -0
  13. package/dist/node_modules/oidc-provider/lib/actions/authorization/client.js +50 -0
  14. package/dist/node_modules/oidc-provider/lib/actions/authorization/device.js +164 -0
  15. package/dist/node_modules/oidc-provider/lib/actions/authorization/index.js +112 -163
  16. package/dist/node_modules/oidc-provider/lib/actions/authorization/interactions.js +32 -13
  17. package/dist/node_modules/oidc-provider/lib/actions/authorization/process_request_object.js +47 -25
  18. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_requests.js +127 -0
  19. package/dist/node_modules/oidc-provider/lib/actions/authorization/request_parameters.js +188 -0
  20. package/dist/node_modules/oidc-provider/lib/actions/authorization/respond.js +15 -10
  21. package/dist/node_modules/oidc-provider/lib/actions/authorization/response_parameters.js +175 -0
  22. package/dist/node_modules/oidc-provider/lib/actions/authorization/resume.js +8 -4
  23. package/dist/node_modules/oidc-provider/lib/actions/authorization/scopes.js +109 -0
  24. package/dist/node_modules/oidc-provider/lib/actions/authorization/{check_pkce.js → sender_constraints.js} +31 -8
  25. package/dist/node_modules/oidc-provider/lib/actions/authorization/{load_grant.js → session.js} +21 -4
  26. package/dist/node_modules/oidc-provider/lib/actions/challenge.js +6 -1
  27. package/dist/node_modules/oidc-provider/lib/actions/code_verification.js +1 -3
  28. package/dist/node_modules/oidc-provider/lib/actions/credential.js +757 -0
  29. package/dist/node_modules/oidc-provider/lib/actions/discovery.js +11 -2
  30. package/dist/node_modules/oidc-provider/lib/actions/end_session.js +23 -15
  31. package/dist/node_modules/oidc-provider/lib/actions/grants/authorization_code.js +24 -94
  32. package/dist/node_modules/oidc-provider/lib/actions/grants/ciba.js +22 -86
  33. package/dist/node_modules/oidc-provider/lib/actions/grants/client_credentials.js +26 -45
  34. package/dist/node_modules/oidc-provider/lib/actions/grants/device_code.js +23 -83
  35. package/dist/node_modules/oidc-provider/lib/actions/grants/index.js +1 -2
  36. package/dist/node_modules/oidc-provider/lib/actions/grants/pre_authorized_code.js +70 -0
  37. package/dist/node_modules/oidc-provider/lib/actions/grants/refresh_token.js +46 -59
  38. package/dist/node_modules/oidc-provider/lib/actions/index.js +10 -6
  39. package/dist/node_modules/oidc-provider/lib/actions/interaction.js +124 -113
  40. package/dist/node_modules/oidc-provider/lib/actions/introspection.js +137 -141
  41. package/dist/node_modules/oidc-provider/lib/actions/openid_credential_issuer.js +17 -0
  42. package/dist/node_modules/oidc-provider/lib/actions/registration.js +30 -6
  43. package/dist/node_modules/oidc-provider/lib/actions/revocation.js +56 -61
  44. package/dist/node_modules/oidc-provider/lib/actions/token.js +98 -54
  45. package/dist/node_modules/oidc-provider/lib/actions/userinfo.js +24 -102
  46. package/dist/node_modules/oidc-provider/lib/adapters/memory_adapter.js +107 -23
  47. package/dist/node_modules/oidc-provider/lib/consts/client_attributes.js +5 -5
  48. package/dist/node_modules/oidc-provider/lib/consts/jwa.js +3 -3
  49. package/dist/node_modules/oidc-provider/lib/consts/param_list.js +1 -1
  50. package/dist/node_modules/oidc-provider/lib/helpers/_/defaults.js +0 -2
  51. package/dist/node_modules/oidc-provider/lib/helpers/_/is_json_object.js +1 -0
  52. package/dist/node_modules/oidc-provider/lib/helpers/_/merge.js +0 -2
  53. package/dist/node_modules/oidc-provider/lib/helpers/_/omit_by.js +0 -2
  54. package/dist/node_modules/oidc-provider/lib/helpers/_/pick.js +1 -1
  55. package/dist/node_modules/oidc-provider/lib/helpers/_/remove.js +1 -1
  56. package/dist/node_modules/oidc-provider/lib/helpers/add_client.js +0 -1
  57. package/dist/node_modules/oidc-provider/lib/helpers/assert_provider_context.js +5 -0
  58. package/dist/node_modules/oidc-provider/lib/helpers/attention.js +2 -2
  59. package/dist/node_modules/oidc-provider/lib/helpers/challenge.js +29 -42
  60. package/dist/node_modules/oidc-provider/lib/helpers/claims.js +2 -1
  61. package/dist/node_modules/oidc-provider/lib/helpers/client_id_metadata_document.js +131 -62
  62. package/dist/node_modules/oidc-provider/lib/helpers/client_schema.js +46 -24
  63. package/dist/node_modules/oidc-provider/lib/helpers/configuration.js +363 -29
  64. package/dist/node_modules/oidc-provider/lib/helpers/configuration_result.js +84 -0
  65. package/dist/node_modules/oidc-provider/lib/helpers/constant_equals.js +1 -1
  66. package/dist/node_modules/oidc-provider/lib/helpers/defaults.js +3166 -2757
  67. package/dist/node_modules/oidc-provider/lib/helpers/errors.js +52 -34
  68. package/dist/node_modules/oidc-provider/lib/helpers/features.js +6 -8
  69. package/dist/node_modules/oidc-provider/lib/helpers/fetch_request.js +136 -99
  70. package/dist/node_modules/oidc-provider/lib/helpers/filter_claims.js +0 -1
  71. package/dist/node_modules/oidc-provider/lib/helpers/grant_authorization.js +78 -0
  72. package/dist/node_modules/oidc-provider/lib/helpers/grant_common.js +77 -103
  73. package/dist/node_modules/oidc-provider/lib/helpers/grant_refresh_token.js +22 -0
  74. package/dist/node_modules/oidc-provider/lib/helpers/grant_response.js +58 -0
  75. package/dist/node_modules/oidc-provider/lib/helpers/grant_source.js +60 -0
  76. package/dist/node_modules/oidc-provider/lib/helpers/grants.js +33 -0
  77. package/dist/node_modules/oidc-provider/lib/helpers/initialize_adapter.js +4 -2
  78. package/dist/node_modules/oidc-provider/lib/helpers/initialize_app.js +114 -90
  79. package/dist/node_modules/oidc-provider/lib/helpers/initialize_keystore.js +61 -54
  80. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/check.js +0 -2
  81. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/index.js +3 -1
  82. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompt.js +3 -4
  83. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/consent.js +2 -5
  84. package/dist/node_modules/oidc-provider/lib/helpers/interaction_policy/prompts/login.js +3 -6
  85. package/dist/node_modules/oidc-provider/lib/helpers/is_valid_scope.js +5 -0
  86. package/dist/node_modules/oidc-provider/lib/helpers/jwt.js +26 -11
  87. package/dist/node_modules/oidc-provider/lib/helpers/keystore.js +2 -4
  88. package/dist/node_modules/oidc-provider/lib/helpers/lru.js +111 -0
  89. package/dist/node_modules/oidc-provider/lib/helpers/nanoid.js +80 -3
  90. package/dist/node_modules/oidc-provider/lib/helpers/normalize_authorization_details.js +54 -0
  91. package/dist/node_modules/oidc-provider/lib/helpers/oidc_context.js +18 -33
  92. package/dist/node_modules/oidc-provider/lib/helpers/params.js +8 -19
  93. package/dist/node_modules/oidc-provider/lib/helpers/pkce.js +5 -5
  94. package/dist/node_modules/oidc-provider/lib/helpers/process_response_types.js +23 -14
  95. package/dist/node_modules/oidc-provider/lib/helpers/re_render_errors.js +4 -6
  96. package/dist/node_modules/oidc-provider/lib/helpers/resolve_resource.js +5 -2
  97. package/dist/node_modules/oidc-provider/lib/helpers/resource_server.js +0 -2
  98. package/dist/node_modules/oidc-provider/lib/helpers/revoke.js +9 -2
  99. package/dist/node_modules/oidc-provider/lib/helpers/router.js +221 -0
  100. package/dist/node_modules/oidc-provider/lib/helpers/sector_validate.js +19 -13
  101. package/dist/node_modules/oidc-provider/lib/helpers/sender_constraints.js +24 -0
  102. package/dist/node_modules/oidc-provider/lib/helpers/set_rt_bindings.js +0 -2
  103. package/dist/node_modules/oidc-provider/lib/helpers/token_find.js +36 -43
  104. package/dist/node_modules/oidc-provider/lib/helpers/user_codes.js +1 -1
  105. package/dist/node_modules/oidc-provider/lib/helpers/validate_dpop.js +40 -21
  106. package/dist/node_modules/oidc-provider/lib/helpers/weak_cache.js +4 -4
  107. package/dist/node_modules/oidc-provider/lib/index.js +1 -3
  108. package/dist/node_modules/oidc-provider/lib/models/access_token.js +42 -17
  109. package/dist/node_modules/oidc-provider/lib/models/authorization_code.js +39 -17
  110. package/dist/node_modules/oidc-provider/lib/models/backchannel_authentication_request.js +37 -15
  111. package/dist/node_modules/oidc-provider/lib/models/base_model.js +42 -21
  112. package/dist/node_modules/oidc-provider/lib/models/base_token.js +5 -3
  113. package/dist/node_modules/oidc-provider/lib/models/client.js +113 -67
  114. package/dist/node_modules/oidc-provider/lib/models/client_credentials.js +30 -9
  115. package/dist/node_modules/oidc-provider/lib/models/device_code.js +40 -17
  116. package/dist/node_modules/oidc-provider/lib/models/formats/index.js +20 -12
  117. package/dist/node_modules/oidc-provider/lib/models/formats/jwt.js +165 -166
  118. package/dist/node_modules/oidc-provider/lib/models/formats/opaque.js +57 -48
  119. package/dist/node_modules/oidc-provider/lib/models/grant.js +1 -9
  120. package/dist/node_modules/oidc-provider/lib/models/id_token.js +13 -14
  121. package/dist/node_modules/oidc-provider/lib/models/index.js +2 -0
  122. package/dist/node_modules/oidc-provider/lib/models/initial_access_token.js +14 -8
  123. package/dist/node_modules/oidc-provider/lib/models/interaction.js +2 -4
  124. package/dist/node_modules/oidc-provider/lib/models/payload.js +33 -0
  125. package/dist/node_modules/oidc-provider/lib/models/pre_authorized_code.js +28 -0
  126. package/dist/node_modules/oidc-provider/lib/models/pushed_authorization_request.js +17 -9
  127. package/dist/node_modules/oidc-provider/lib/models/refresh_token.js +57 -25
  128. package/dist/node_modules/oidc-provider/lib/models/registration_access_token.js +20 -7
  129. package/dist/node_modules/oidc-provider/lib/models/replay_detection.js +1 -3
  130. package/dist/node_modules/oidc-provider/lib/models/session.js +12 -16
  131. package/dist/node_modules/oidc-provider/lib/models/token_helpers.js +79 -0
  132. package/dist/node_modules/oidc-provider/lib/provider.js +50 -23
  133. package/dist/node_modules/oidc-provider/lib/response_modes/index.js +0 -2
  134. package/dist/node_modules/oidc-provider/lib/response_modes/jwt.js +0 -1
  135. package/dist/node_modules/oidc-provider/lib/response_modes/web_message.js +14 -4
  136. package/dist/node_modules/oidc-provider/lib/shared/access_token.js +85 -0
  137. package/dist/node_modules/oidc-provider/lib/shared/assemble_params.js +1 -1
  138. package/dist/node_modules/oidc-provider/lib/shared/attest_client_auth.js +39 -16
  139. package/dist/node_modules/oidc-provider/lib/shared/authorization_error_handler.js +79 -77
  140. package/dist/node_modules/oidc-provider/lib/shared/check_rar.js +13 -28
  141. package/dist/node_modules/oidc-provider/lib/shared/check_resource.js +20 -11
  142. package/dist/node_modules/oidc-provider/lib/shared/client_auth.js +265 -201
  143. package/dist/node_modules/oidc-provider/lib/shared/cors.js +48 -16
  144. package/dist/node_modules/oidc-provider/lib/shared/error_handler.js +13 -4
  145. package/dist/node_modules/oidc-provider/lib/shared/jwt_client_auth.js +9 -3
  146. package/dist/node_modules/oidc-provider/lib/shared/reject_dupes.js +12 -32
  147. package/dist/node_modules/oidc-provider/lib/shared/selective_body.js +54 -14
  148. package/dist/node_modules/oidc-provider/lib/shared/session.js +6 -6
  149. package/dist/node_modules/oidc-provider/lib/shared/set_www_authenticate_header.js +1 -2
  150. package/dist/node_modules/oidc-provider/lib/shared/validate_json_body.js +11 -0
  151. package/dist/node_modules/oidc-provider/lib/views/index.js +43 -14
  152. package/dist/node_modules/oidc-provider/lib/views/interaction.js +62 -144
  153. package/dist/node_modules/oidc-provider/lib/views/layout.js +29 -216
  154. package/dist/node_modules/oidc-provider/lib/views/login.js +14 -23
  155. package/dist/node_modules/{undici/lib/web/fetch/LICENSE → oidc-provider/node_modules/jose/LICENSE.md} +2 -2
  156. package/dist/node_modules/oidc-provider/node_modules/jose/README.md +150 -0
  157. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/index.d.ts +55 -0
  158. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/compact/decrypt.d.ts +24 -0
  159. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/compact/encrypt.d.ts +40 -0
  160. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/flattened/decrypt.d.ts +24 -0
  161. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/flattened/encrypt.d.ts +46 -0
  162. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/general/decrypt.d.ts +28 -0
  163. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwe/general/encrypt.d.ts +51 -0
  164. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwk/embedded.d.ts +10 -0
  165. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwk/thumbprint.d.ts +15 -0
  166. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwks/local.d.ts +17 -0
  167. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwks/remote.d.ts +94 -0
  168. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/compact/sign.d.ts +20 -0
  169. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/compact/verify.d.ts +25 -0
  170. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/flattened/sign.d.ts +22 -0
  171. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/flattened/verify.d.ts +25 -0
  172. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/general/sign.d.ts +38 -0
  173. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jws/general/verify.d.ts +29 -0
  174. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/decrypt.d.ts +34 -0
  175. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/encrypt.d.ts +57 -0
  176. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/sign.d.ts +21 -0
  177. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/unsecured.d.ts +19 -0
  178. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/jwt/verify.d.ts +35 -0
  179. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/export.d.ts +19 -0
  180. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/generate_key_pair.d.ts +33 -0
  181. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/generate_secret.d.ts +30 -0
  182. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/key/import.d.ts +67 -0
  183. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/types.d.ts +736 -0
  184. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/base64url.d.ts +16 -0
  185. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/decode_jwt.d.ts +8 -0
  186. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/decode_protected_header.d.ts +10 -0
  187. package/dist/node_modules/oidc-provider/node_modules/jose/dist/types/util/errors.d.ts +182 -0
  188. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/index.js +70 -0
  189. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/compact/decrypt.js +7 -0
  190. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/compact/encrypt.js +26 -0
  191. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/flattened/decrypt.js +15 -0
  192. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/flattened/encrypt.js +35 -0
  193. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/general/decrypt.js +40 -0
  194. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwe/general/encrypt.js +105 -0
  195. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwk/embedded.js +30 -0
  196. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwk/thumbprint.js +55 -0
  197. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwks/local.js +59 -0
  198. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwks/remote.js +101 -0
  199. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/compact/sign.js +20 -0
  200. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/compact/verify.js +8 -0
  201. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/flattened/sign.js +23 -0
  202. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/flattened/verify.js +12 -0
  203. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/general/sign.js +58 -0
  204. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jws/general/verify.js +48 -0
  205. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/decrypt.js +13 -0
  206. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/encrypt.js +45 -0
  207. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/sign.js +19 -0
  208. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/unsecured.js +34 -0
  209. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/jwt/verify.js +13 -0
  210. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/export.js +35 -0
  211. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/generate_key_pair.js +35 -0
  212. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/generate_secret.js +36 -0
  213. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/key/import.js +53 -0
  214. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/asn1.js +138 -0
  215. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/buffer_utils.js +75 -0
  216. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/content_encryption.js +90 -0
  217. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/deflate.js +40 -0
  218. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_algorithms.js +116 -0
  219. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +187 -0
  220. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwe_encrypt.js +75 -0
  221. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_algorithms.js +74 -0
  222. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_sign.js +46 -0
  223. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jws_verify.js +86 -0
  224. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/jwt_claims_set.js +146 -0
  225. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key.js +155 -0
  226. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_algorithm.js +15 -0
  227. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_descriptor.js +9 -0
  228. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/key_management.js +196 -0
  229. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/lib/validate.js +122 -0
  230. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/base64url.js +16 -0
  231. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/decode_jwt.js +33 -0
  232. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/decode_protected_header.js +19 -0
  233. package/dist/node_modules/oidc-provider/node_modules/jose/dist/webapi/util/errors.js +109 -0
  234. package/dist/node_modules/oidc-provider/node_modules/jose/package.json +134 -0
  235. package/dist/node_modules/oidc-provider/node_modules/{jsesc/LICENSE-MIT.txt → koa/LICENSE} +10 -8
  236. package/dist/node_modules/oidc-provider/node_modules/koa/Readme.md +279 -0
  237. package/dist/node_modules/oidc-provider/node_modules/koa/dist/koa.mjs +4 -0
  238. package/dist/node_modules/oidc-provider/node_modules/koa/lib/application.js +344 -0
  239. package/dist/node_modules/oidc-provider/node_modules/koa/lib/context.js +248 -0
  240. package/dist/node_modules/oidc-provider/node_modules/koa/lib/is-stream.js +20 -0
  241. package/dist/node_modules/oidc-provider/node_modules/koa/lib/only.js +9 -0
  242. package/dist/node_modules/oidc-provider/node_modules/koa/lib/request.js +748 -0
  243. package/dist/node_modules/oidc-provider/node_modules/koa/lib/response.js +660 -0
  244. package/dist/node_modules/oidc-provider/node_modules/koa/lib/search-params.js +33 -0
  245. package/dist/node_modules/oidc-provider/node_modules/koa/package.json +73 -0
  246. package/dist/node_modules/oidc-provider/node_modules/media-typer/HISTORY.md +50 -0
  247. package/dist/node_modules/oidc-provider/node_modules/media-typer/LICENSE +22 -0
  248. package/dist/node_modules/oidc-provider/node_modules/media-typer/README.md +93 -0
  249. package/dist/node_modules/oidc-provider/node_modules/media-typer/index.js +143 -0
  250. package/dist/node_modules/oidc-provider/node_modules/media-typer/package.json +33 -0
  251. package/dist/node_modules/oidc-provider/node_modules/mime-db/HISTORY.md +541 -0
  252. package/dist/node_modules/oidc-provider/node_modules/mime-db/LICENSE +23 -0
  253. package/dist/node_modules/oidc-provider/node_modules/mime-db/README.md +109 -0
  254. package/dist/node_modules/oidc-provider/node_modules/mime-db/db.json +9342 -0
  255. package/dist/node_modules/oidc-provider/node_modules/mime-db/index.js +12 -0
  256. package/dist/node_modules/oidc-provider/node_modules/mime-db/package.json +56 -0
  257. package/dist/node_modules/oidc-provider/node_modules/mime-types/HISTORY.md +421 -0
  258. package/dist/node_modules/oidc-provider/node_modules/mime-types/LICENSE +23 -0
  259. package/dist/node_modules/oidc-provider/node_modules/mime-types/README.md +126 -0
  260. package/dist/node_modules/oidc-provider/node_modules/mime-types/index.js +211 -0
  261. package/dist/node_modules/oidc-provider/node_modules/mime-types/mimeScore.js +52 -0
  262. package/dist/node_modules/oidc-provider/node_modules/mime-types/package.json +45 -0
  263. package/dist/node_modules/oidc-provider/node_modules/type-is/HISTORY.md +292 -0
  264. package/dist/node_modules/oidc-provider/node_modules/type-is/LICENSE +23 -0
  265. package/dist/node_modules/oidc-provider/node_modules/type-is/README.md +198 -0
  266. package/dist/node_modules/oidc-provider/node_modules/type-is/index.js +250 -0
  267. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/HISTORY.md +428 -0
  268. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/LICENSE +23 -0
  269. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/README.md +126 -0
  270. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/index.js +211 -0
  271. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/mimeScore.js +57 -0
  272. package/dist/node_modules/oidc-provider/node_modules/type-is/node_modules/mime-types/package.json +49 -0
  273. package/dist/node_modules/oidc-provider/node_modules/type-is/package.json +47 -0
  274. package/dist/node_modules/oidc-provider/package.json +5 -42
  275. package/package.json +3 -3
  276. package/dist/node_modules/eta/LICENSE +0 -7
  277. package/dist/node_modules/eta/README.md +0 -185
  278. package/dist/node_modules/eta/dist/core.d.ts +0 -179
  279. package/dist/node_modules/eta/dist/core.d.ts.map +0 -1
  280. package/dist/node_modules/eta/dist/core.js +0 -42
  281. package/dist/node_modules/eta/dist/core.js.map +0 -1
  282. package/dist/node_modules/eta/dist/index.cjs +0 -542
  283. package/dist/node_modules/eta/dist/index.cjs.map +0 -1
  284. package/dist/node_modules/eta/dist/index.d.cts +0 -187
  285. package/dist/node_modules/eta/dist/index.d.cts.map +0 -1
  286. package/dist/node_modules/eta/dist/index.d.mts +0 -187
  287. package/dist/node_modules/eta/dist/index.d.mts.map +0 -1
  288. package/dist/node_modules/eta/dist/index.mjs +0 -512
  289. package/dist/node_modules/eta/dist/index.mjs.map +0 -1
  290. package/dist/node_modules/eta/package.json +0 -75
  291. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_claims.js +0 -28
  292. package/dist/node_modules/oidc-provider/lib/actions/authorization/assign_defaults.js +0 -17
  293. package/dist/node_modules/oidc-provider/lib/actions/authorization/authenticated_client_id.js +0 -6
  294. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_remap_errors.js +0 -17
  295. package/dist/node_modules/oidc-provider/lib/actions/authorization/backchannel_request_response.js +0 -41
  296. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_ciba_context.js +0 -12
  297. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_claims.js +0 -68
  298. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client.js +0 -21
  299. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_client_grant_type.js +0 -21
  300. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_dpop_jkt.js +0 -35
  301. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_extra_params.js +0 -18
  302. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_id_token_hint.js +0 -23
  303. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_max_age.js +0 -25
  304. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_openid_scope.js +0 -47
  305. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_prompt.js +0 -25
  306. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_redirect_uri.js +0 -41
  307. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_requested_expiry.js +0 -16
  308. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_mode.js +0 -54
  309. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_response_type.js +0 -26
  310. package/dist/node_modules/oidc-provider/lib/actions/authorization/check_scope.js +0 -53
  311. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_load_account.js +0 -58
  312. package/dist/node_modules/oidc-provider/lib/actions/authorization/ciba_required.js +0 -13
  313. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_authorization_response.js +0 -31
  314. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow.js +0 -31
  315. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_errors.js +0 -37
  316. package/dist/node_modules/oidc-provider/lib/actions/authorization/device_user_flow_response.js +0 -55
  317. package/dist/node_modules/oidc-provider/lib/actions/authorization/interaction_emit.js +0 -9
  318. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_account.js +0 -15
  319. package/dist/node_modules/oidc-provider/lib/actions/authorization/load_pushed_authorization_request.js +0 -36
  320. package/dist/node_modules/oidc-provider/lib/actions/authorization/oauth_required.js +0 -11
  321. package/dist/node_modules/oidc-provider/lib/actions/authorization/oidc_required.js +0 -27
  322. package/dist/node_modules/oidc-provider/lib/actions/authorization/one_redirect_uri_clients.js +0 -20
  323. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_remap_errors.js +0 -17
  324. package/dist/node_modules/oidc-provider/lib/actions/authorization/pushed_authorization_request_response.js +0 -65
  325. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_registration.js +0 -12
  326. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_request_and_uri.js +0 -12
  327. package/dist/node_modules/oidc-provider/lib/actions/authorization/reject_unsupported.js +0 -33
  328. package/dist/node_modules/oidc-provider/lib/actions/authorization/strip_outside_jar_params.js +0 -19
  329. package/dist/node_modules/oidc-provider/lib/actions/authorization/unsupported_rar.js +0 -9
  330. package/dist/node_modules/oidc-provider/lib/helpers/_/pick_by.js +0 -10
  331. package/dist/node_modules/oidc-provider/lib/models/formats/dynamic.js +0 -21
  332. package/dist/node_modules/oidc-provider/lib/models/mixins/apply.js +0 -4
  333. package/dist/node_modules/oidc-provider/lib/models/mixins/consumable.js +0 -17
  334. package/dist/node_modules/oidc-provider/lib/models/mixins/has_format.js +0 -46
  335. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_id.js +0 -12
  336. package/dist/node_modules/oidc-provider/lib/models/mixins/has_grant_type.js +0 -8
  337. package/dist/node_modules/oidc-provider/lib/models/mixins/has_policies.js +0 -38
  338. package/dist/node_modules/oidc-provider/lib/models/mixins/is_attestation_constrained.js +0 -15
  339. package/dist/node_modules/oidc-provider/lib/models/mixins/is_sender_constrained.js +0 -50
  340. package/dist/node_modules/oidc-provider/lib/models/mixins/is_session_bound.js +0 -38
  341. package/dist/node_modules/oidc-provider/lib/models/mixins/set_audience.js +0 -21
  342. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_auth.js +0 -16
  343. package/dist/node_modules/oidc-provider/lib/models/mixins/stores_pkce.js +0 -9
  344. package/dist/node_modules/oidc-provider/lib/shared/conditional_body.js +0 -9
  345. package/dist/node_modules/oidc-provider/node_modules/@koa/router/LICENSE +0 -21
  346. package/dist/node_modules/oidc-provider/node_modules/@koa/router/README.md +0 -1370
  347. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.mts +0 -1003
  348. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.d.ts +0 -1003
  349. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.js +0 -1616
  350. package/dist/node_modules/oidc-provider/node_modules/@koa/router/dist/index.mjs +0 -1573
  351. package/dist/node_modules/oidc-provider/node_modules/@koa/router/package.json +0 -122
  352. package/dist/node_modules/oidc-provider/node_modules/http-errors/HISTORY.md +0 -186
  353. package/dist/node_modules/oidc-provider/node_modules/http-errors/LICENSE +0 -23
  354. package/dist/node_modules/oidc-provider/node_modules/http-errors/README.md +0 -169
  355. package/dist/node_modules/oidc-provider/node_modules/http-errors/index.js +0 -290
  356. package/dist/node_modules/oidc-provider/node_modules/http-errors/package.json +0 -54
  357. package/dist/node_modules/oidc-provider/node_modules/jsesc/README.md +0 -422
  358. package/dist/node_modules/oidc-provider/node_modules/jsesc/bin/jsesc +0 -148
  359. package/dist/node_modules/oidc-provider/node_modules/jsesc/jsesc.js +0 -337
  360. package/dist/node_modules/oidc-provider/node_modules/jsesc/man/jsesc.1 +0 -94
  361. package/dist/node_modules/oidc-provider/node_modules/jsesc/package.json +0 -56
  362. package/dist/node_modules/oidc-provider/node_modules/nanoid/LICENSE +0 -20
  363. package/dist/node_modules/oidc-provider/node_modules/nanoid/README.md +0 -38
  364. package/dist/node_modules/oidc-provider/node_modules/nanoid/bin/nanoid.js +0 -55
  365. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.browser.js +0 -29
  366. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.d.ts +0 -106
  367. package/dist/node_modules/oidc-provider/node_modules/nanoid/index.js +0 -47
  368. package/dist/node_modules/oidc-provider/node_modules/nanoid/nanoid.js +0 -1
  369. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.d.ts +0 -48
  370. package/dist/node_modules/oidc-provider/node_modules/nanoid/non-secure/index.js +0 -21
  371. package/dist/node_modules/oidc-provider/node_modules/nanoid/package.json +0 -46
  372. package/dist/node_modules/oidc-provider/node_modules/nanoid/url-alphabet/index.js +0 -2
  373. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/LICENSE +0 -21
  374. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/Readme.md +0 -224
  375. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.d.ts +0 -147
  376. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js +0 -431
  377. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/dist/index.js.map +0 -1
  378. package/dist/node_modules/oidc-provider/node_modules/path-to-regexp/package.json +0 -64
  379. package/dist/node_modules/quick-lru/index.d.ts +0 -178
  380. package/dist/node_modules/quick-lru/index.js +0 -329
  381. package/dist/node_modules/quick-lru/license +0 -9
  382. package/dist/node_modules/quick-lru/package.json +0 -54
  383. package/dist/node_modules/quick-lru/readme.md +0 -236
  384. package/dist/node_modules/statuses/HISTORY.md +0 -87
  385. package/dist/node_modules/statuses/LICENSE +0 -23
  386. package/dist/node_modules/statuses/README.md +0 -139
  387. package/dist/node_modules/statuses/codes.json +0 -65
  388. package/dist/node_modules/statuses/index.js +0 -146
  389. package/dist/node_modules/statuses/package.json +0 -49
  390. package/dist/node_modules/undici/LICENSE +0 -21
  391. package/dist/node_modules/undici/README.md +0 -741
  392. package/dist/node_modules/undici/docs/docs/api/Agent.md +0 -84
  393. package/dist/node_modules/undici/docs/docs/api/BalancedPool.md +0 -99
  394. package/dist/node_modules/undici/docs/docs/api/CacheStorage.md +0 -30
  395. package/dist/node_modules/undici/docs/docs/api/CacheStore.md +0 -164
  396. package/dist/node_modules/undici/docs/docs/api/Client.md +0 -285
  397. package/dist/node_modules/undici/docs/docs/api/ClientStats.md +0 -27
  398. package/dist/node_modules/undici/docs/docs/api/Connector.md +0 -115
  399. package/dist/node_modules/undici/docs/docs/api/ContentType.md +0 -57
  400. package/dist/node_modules/undici/docs/docs/api/Cookies.md +0 -101
  401. package/dist/node_modules/undici/docs/docs/api/Debug.md +0 -62
  402. package/dist/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +0 -315
  403. package/dist/node_modules/undici/docs/docs/api/Dispatcher.md +0 -1392
  404. package/dist/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +0 -159
  405. package/dist/node_modules/undici/docs/docs/api/Errors.md +0 -49
  406. package/dist/node_modules/undici/docs/docs/api/EventSource.md +0 -45
  407. package/dist/node_modules/undici/docs/docs/api/Fetch.md +0 -60
  408. package/dist/node_modules/undici/docs/docs/api/GlobalInstallation.md +0 -139
  409. package/dist/node_modules/undici/docs/docs/api/H2CClient.md +0 -263
  410. package/dist/node_modules/undici/docs/docs/api/MockAgent.md +0 -603
  411. package/dist/node_modules/undici/docs/docs/api/MockCallHistory.md +0 -197
  412. package/dist/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +0 -43
  413. package/dist/node_modules/undici/docs/docs/api/MockClient.md +0 -81
  414. package/dist/node_modules/undici/docs/docs/api/MockErrors.md +0 -12
  415. package/dist/node_modules/undici/docs/docs/api/MockPool.md +0 -555
  416. package/dist/node_modules/undici/docs/docs/api/Pool.md +0 -84
  417. package/dist/node_modules/undici/docs/docs/api/PoolStats.md +0 -35
  418. package/dist/node_modules/undici/docs/docs/api/ProxyAgent.md +0 -229
  419. package/dist/node_modules/undici/docs/docs/api/RedirectHandler.md +0 -93
  420. package/dist/node_modules/undici/docs/docs/api/RetryAgent.md +0 -50
  421. package/dist/node_modules/undici/docs/docs/api/RetryHandler.md +0 -118
  422. package/dist/node_modules/undici/docs/docs/api/RoundRobinPool.md +0 -145
  423. package/dist/node_modules/undici/docs/docs/api/SnapshotAgent.md +0 -616
  424. package/dist/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +0 -274
  425. package/dist/node_modules/undici/docs/docs/api/Util.md +0 -25
  426. package/dist/node_modules/undici/docs/docs/api/WebSocket.md +0 -141
  427. package/dist/node_modules/undici/docs/docs/api/api-lifecycle.md +0 -91
  428. package/dist/node_modules/undici/docs/docs/best-practices/client-certificate.md +0 -64
  429. package/dist/node_modules/undici/docs/docs/best-practices/crawling.md +0 -58
  430. package/dist/node_modules/undici/docs/docs/best-practices/mocking-request.md +0 -190
  431. package/dist/node_modules/undici/docs/docs/best-practices/proxy.md +0 -127
  432. package/dist/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +0 -224
  433. package/dist/node_modules/undici/docs/docs/best-practices/writing-tests.md +0 -63
  434. package/dist/node_modules/undici/index-fetch.js +0 -65
  435. package/dist/node_modules/undici/index.d.ts +0 -3
  436. package/dist/node_modules/undici/index.js +0 -234
  437. package/dist/node_modules/undici/lib/api/abort-signal.js +0 -59
  438. package/dist/node_modules/undici/lib/api/api-connect.js +0 -110
  439. package/dist/node_modules/undici/lib/api/api-pipeline.js +0 -252
  440. package/dist/node_modules/undici/lib/api/api-request.js +0 -214
  441. package/dist/node_modules/undici/lib/api/api-stream.js +0 -209
  442. package/dist/node_modules/undici/lib/api/api-upgrade.js +0 -111
  443. package/dist/node_modules/undici/lib/api/index.js +0 -7
  444. package/dist/node_modules/undici/lib/api/readable.js +0 -580
  445. package/dist/node_modules/undici/lib/cache/memory-cache-store.js +0 -234
  446. package/dist/node_modules/undici/lib/cache/sqlite-cache-store.js +0 -461
  447. package/dist/node_modules/undici/lib/core/connect.js +0 -137
  448. package/dist/node_modules/undici/lib/core/constants.js +0 -143
  449. package/dist/node_modules/undici/lib/core/diagnostics.js +0 -227
  450. package/dist/node_modules/undici/lib/core/errors.js +0 -477
  451. package/dist/node_modules/undici/lib/core/request.js +0 -438
  452. package/dist/node_modules/undici/lib/core/socks5-client.js +0 -407
  453. package/dist/node_modules/undici/lib/core/socks5-utils.js +0 -203
  454. package/dist/node_modules/undici/lib/core/symbols.js +0 -75
  455. package/dist/node_modules/undici/lib/core/tree.js +0 -160
  456. package/dist/node_modules/undici/lib/core/util.js +0 -992
  457. package/dist/node_modules/undici/lib/dispatcher/agent.js +0 -158
  458. package/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -219
  459. package/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1610
  460. package/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -995
  461. package/dist/node_modules/undici/lib/dispatcher/client.js +0 -659
  462. package/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -165
  463. package/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -48
  464. package/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -146
  465. package/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -135
  466. package/dist/node_modules/undici/lib/dispatcher/h2c-client.js +0 -51
  467. package/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -214
  468. package/dist/node_modules/undici/lib/dispatcher/pool.js +0 -118
  469. package/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -318
  470. package/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  471. package/dist/node_modules/undici/lib/dispatcher/round-robin-pool.js +0 -137
  472. package/dist/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +0 -249
  473. package/dist/node_modules/undici/lib/encoding/index.js +0 -33
  474. package/dist/node_modules/undici/lib/global.js +0 -50
  475. package/dist/node_modules/undici/lib/handler/cache-handler.js +0 -578
  476. package/dist/node_modules/undici/lib/handler/cache-revalidation-handler.js +0 -124
  477. package/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -67
  478. package/dist/node_modules/undici/lib/handler/deduplication-handler.js +0 -460
  479. package/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -238
  480. package/dist/node_modules/undici/lib/handler/retry-handler.js +0 -394
  481. package/dist/node_modules/undici/lib/handler/unwrap-handler.js +0 -100
  482. package/dist/node_modules/undici/lib/handler/wrap-handler.js +0 -105
  483. package/dist/node_modules/undici/lib/interceptor/cache.js +0 -495
  484. package/dist/node_modules/undici/lib/interceptor/decompress.js +0 -259
  485. package/dist/node_modules/undici/lib/interceptor/deduplicate.js +0 -117
  486. package/dist/node_modules/undici/lib/interceptor/dns.js +0 -571
  487. package/dist/node_modules/undici/lib/interceptor/dump.js +0 -112
  488. package/dist/node_modules/undici/lib/interceptor/redirect.js +0 -21
  489. package/dist/node_modules/undici/lib/interceptor/response-error.js +0 -95
  490. package/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  491. package/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  492. package/dist/node_modules/undici/lib/llhttp/constants.d.ts +0 -195
  493. package/dist/node_modules/undici/lib/llhttp/constants.js +0 -531
  494. package/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -15
  495. package/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -15
  496. package/dist/node_modules/undici/lib/llhttp/utils.d.ts +0 -2
  497. package/dist/node_modules/undici/lib/llhttp/utils.js +0 -12
  498. package/dist/node_modules/undici/lib/mock/mock-agent.js +0 -232
  499. package/dist/node_modules/undici/lib/mock/mock-call-history.js +0 -248
  500. package/dist/node_modules/undici/lib/mock/mock-client.js +0 -68
  501. package/dist/node_modules/undici/lib/mock/mock-errors.js +0 -29
  502. package/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -209
  503. package/dist/node_modules/undici/lib/mock/mock-pool.js +0 -68
  504. package/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -32
  505. package/dist/node_modules/undici/lib/mock/mock-utils.js +0 -486
  506. package/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  507. package/dist/node_modules/undici/lib/mock/snapshot-agent.js +0 -353
  508. package/dist/node_modules/undici/lib/mock/snapshot-recorder.js +0 -588
  509. package/dist/node_modules/undici/lib/mock/snapshot-utils.js +0 -158
  510. package/dist/node_modules/undici/lib/util/cache.js +0 -407
  511. package/dist/node_modules/undici/lib/util/date.js +0 -653
  512. package/dist/node_modules/undici/lib/util/promise.js +0 -28
  513. package/dist/node_modules/undici/lib/util/runtime-features.js +0 -124
  514. package/dist/node_modules/undici/lib/util/stats.js +0 -32
  515. package/dist/node_modules/undici/lib/util/timers.js +0 -425
  516. package/dist/node_modules/undici/lib/web/cache/cache.js +0 -864
  517. package/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  518. package/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  519. package/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  520. package/dist/node_modules/undici/lib/web/cookies/index.js +0 -199
  521. package/dist/node_modules/undici/lib/web/cookies/parse.js +0 -322
  522. package/dist/node_modules/undici/lib/web/cookies/util.js +0 -282
  523. package/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -399
  524. package/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -501
  525. package/dist/node_modules/undici/lib/web/eventsource/util.js +0 -29
  526. package/dist/node_modules/undici/lib/web/fetch/body.js +0 -509
  527. package/dist/node_modules/undici/lib/web/fetch/constants.js +0 -131
  528. package/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -596
  529. package/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -575
  530. package/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -259
  531. package/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  532. package/dist/node_modules/undici/lib/web/fetch/headers.js +0 -719
  533. package/dist/node_modules/undici/lib/web/fetch/index.js +0 -2397
  534. package/dist/node_modules/undici/lib/web/fetch/request.js +0 -1115
  535. package/dist/node_modules/undici/lib/web/fetch/response.js +0 -641
  536. package/dist/node_modules/undici/lib/web/fetch/util.js +0 -1520
  537. package/dist/node_modules/undici/lib/web/infra/index.js +0 -229
  538. package/dist/node_modules/undici/lib/web/subresource-integrity/Readme.md +0 -9
  539. package/dist/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js +0 -307
  540. package/dist/node_modules/undici/lib/web/webidl/index.js +0 -1006
  541. package/dist/node_modules/undici/lib/web/websocket/connection.js +0 -329
  542. package/dist/node_modules/undici/lib/web/websocket/constants.js +0 -126
  543. package/dist/node_modules/undici/lib/web/websocket/events.js +0 -331
  544. package/dist/node_modules/undici/lib/web/websocket/frame.js +0 -133
  545. package/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -118
  546. package/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -450
  547. package/dist/node_modules/undici/lib/web/websocket/sender.js +0 -109
  548. package/dist/node_modules/undici/lib/web/websocket/stream/websocketerror.js +0 -104
  549. package/dist/node_modules/undici/lib/web/websocket/stream/websocketstream.js +0 -497
  550. package/dist/node_modules/undici/lib/web/websocket/util.js +0 -347
  551. package/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -751
  552. package/dist/node_modules/undici/package.json +0 -152
  553. package/dist/node_modules/undici/scripts/strip-comments.js +0 -10
  554. package/dist/node_modules/undici/types/README.md +0 -6
  555. package/dist/node_modules/undici/types/agent.d.ts +0 -32
  556. package/dist/node_modules/undici/types/api.d.ts +0 -43
  557. package/dist/node_modules/undici/types/balanced-pool.d.ts +0 -30
  558. package/dist/node_modules/undici/types/cache-interceptor.d.ts +0 -179
  559. package/dist/node_modules/undici/types/cache.d.ts +0 -36
  560. package/dist/node_modules/undici/types/client-stats.d.ts +0 -15
  561. package/dist/node_modules/undici/types/client.d.ts +0 -123
  562. package/dist/node_modules/undici/types/connector.d.ts +0 -36
  563. package/dist/node_modules/undici/types/content-type.d.ts +0 -21
  564. package/dist/node_modules/undici/types/cookies.d.ts +0 -30
  565. package/dist/node_modules/undici/types/diagnostics-channel.d.ts +0 -74
  566. package/dist/node_modules/undici/types/dispatcher.d.ts +0 -273
  567. package/dist/node_modules/undici/types/env-http-proxy-agent.d.ts +0 -22
  568. package/dist/node_modules/undici/types/errors.d.ts +0 -177
  569. package/dist/node_modules/undici/types/eventsource.d.ts +0 -66
  570. package/dist/node_modules/undici/types/fetch.d.ts +0 -231
  571. package/dist/node_modules/undici/types/formdata.d.ts +0 -114
  572. package/dist/node_modules/undici/types/global-dispatcher.d.ts +0 -9
  573. package/dist/node_modules/undici/types/global-origin.d.ts +0 -7
  574. package/dist/node_modules/undici/types/h2c-client.d.ts +0 -73
  575. package/dist/node_modules/undici/types/handlers.d.ts +0 -14
  576. package/dist/node_modules/undici/types/header.d.ts +0 -160
  577. package/dist/node_modules/undici/types/index.d.ts +0 -91
  578. package/dist/node_modules/undici/types/interceptors.d.ts +0 -80
  579. package/dist/node_modules/undici/types/mock-agent.d.ts +0 -68
  580. package/dist/node_modules/undici/types/mock-call-history.d.ts +0 -111
  581. package/dist/node_modules/undici/types/mock-client.d.ts +0 -27
  582. package/dist/node_modules/undici/types/mock-errors.d.ts +0 -12
  583. package/dist/node_modules/undici/types/mock-interceptor.d.ts +0 -94
  584. package/dist/node_modules/undici/types/mock-pool.d.ts +0 -27
  585. package/dist/node_modules/undici/types/patch.d.ts +0 -29
  586. package/dist/node_modules/undici/types/pool-stats.d.ts +0 -19
  587. package/dist/node_modules/undici/types/pool.d.ts +0 -41
  588. package/dist/node_modules/undici/types/proxy-agent.d.ts +0 -29
  589. package/dist/node_modules/undici/types/readable.d.ts +0 -68
  590. package/dist/node_modules/undici/types/retry-agent.d.ts +0 -8
  591. package/dist/node_modules/undici/types/retry-handler.d.ts +0 -125
  592. package/dist/node_modules/undici/types/round-robin-pool.d.ts +0 -41
  593. package/dist/node_modules/undici/types/snapshot-agent.d.ts +0 -109
  594. package/dist/node_modules/undici/types/socks5-proxy-agent.d.ts +0 -25
  595. package/dist/node_modules/undici/types/util.d.ts +0 -18
  596. package/dist/node_modules/undici/types/utility.d.ts +0 -7
  597. package/dist/node_modules/undici/types/webidl.d.ts +0 -347
  598. package/dist/node_modules/undici/types/websocket.d.ts +0 -188
@@ -1,7 +1,7 @@
1
1
  import { strict as assert } from 'node:assert';
2
2
  import * as util from 'node:util';
3
3
 
4
- import QuickLRU from 'quick-lru';
4
+ import LRU from './helpers/lru.js';
5
5
  import Koa from 'koa';
6
6
 
7
7
  import Configuration from './helpers/configuration.js';
@@ -20,6 +20,12 @@ import * as models from './models/index.js';
20
20
  import ServerChallenge from './helpers/challenge.js';
21
21
  import als from './helpers/als.js';
22
22
 
23
+ const featuresDescriptor = {
24
+ enumerable: true,
25
+ configurable: true,
26
+ get() { return this.configuration.features; },
27
+ };
28
+
23
29
  export class Provider extends Koa {
24
30
  #AccessToken;
25
31
 
@@ -49,6 +55,8 @@ export class Provider extends Koa {
49
55
 
50
56
  #OIDCContext;
51
57
 
58
+ #PreAuthorizedCode;
59
+
52
60
  #PushedAuthorizationRequest;
53
61
 
54
62
  #RefreshToken;
@@ -61,9 +69,18 @@ export class Provider extends Koa {
61
69
 
62
70
  #exec;
63
71
 
64
- #int = {
65
- dynamicClients: new QuickLRU({ maxSize: 100 }),
66
- };
72
+ #int = Object.defineProperty({
73
+ dynamicClients: new LRU({ maxSize: 100 }),
74
+ }, 'features', featuresDescriptor);
75
+
76
+ static {
77
+ instance.setReader((provider) => {
78
+ if (provider === null || (typeof provider !== 'object' && typeof provider !== 'function')) {
79
+ return undefined;
80
+ }
81
+ return #int in provider ? provider.#int : undefined;
82
+ });
83
+ }
67
84
 
68
85
  constructor(issuer, setup) {
69
86
  assert(issuer, 'first argument must be the Issuer Identifier, i.e. https://op.example.com');
@@ -83,10 +100,8 @@ export class Provider extends Koa {
83
100
  this.issuer = issuer;
84
101
 
85
102
  const configuration = new Configuration(setup);
86
- instance.set(this, this.#int);
87
103
 
88
104
  this.#int.configuration = configuration;
89
- this.#int.features = configuration.features;
90
105
 
91
106
  if (Array.isArray(configuration.cookies.keys)) {
92
107
  if (configuration.cookies.keys.length) {
@@ -118,6 +133,17 @@ export class Provider extends Koa {
118
133
  }
119
134
  }
120
135
 
136
+ if (configuration.features.openid4vci.enabled) {
137
+ try {
138
+ this.#int.CNonceChallenges = new ServerChallenge(
139
+ configuration.features.openid4vci.nonceSecret,
140
+ 'OpenID4VCI c_nonce',
141
+ );
142
+ } catch (cause) {
143
+ throw new TypeError('features.openid4vci.nonceSecret secret must be a 32-byte Buffer instance', { cause });
144
+ }
145
+ }
146
+
121
147
  this.#int.responseModes = new Map();
122
148
  this.#int.grantTypeHandlers = new Map();
123
149
  this.#int.grantTypeDupes = new Map();
@@ -191,10 +217,10 @@ export class Provider extends Koa {
191
217
  return [mountPath, routerUrl].join('');
192
218
  }
193
219
 
194
- /**
195
- * @name interactionResult
196
- * @api public
197
- */
220
+
221
+
222
+
223
+
198
224
  async interactionResult(req, res, result, { mergeWithLastSubmission = true } = {}) {
199
225
  const interaction = await this.#getInteraction.call(this, req, res);
200
226
 
@@ -209,23 +235,23 @@ export class Provider extends Koa {
209
235
  return interaction.returnTo;
210
236
  }
211
237
 
212
- /**
213
- * @name interactionFinished
214
- * @api public
215
- */
238
+
239
+
240
+
241
+
216
242
  async interactionFinished(req, res, result, { mergeWithLastSubmission = true } = {}) {
217
243
  const returnTo = await this.interactionResult(req, res, result, { mergeWithLastSubmission });
218
244
 
219
- res.statusCode = 303; // eslint-disable-line no-param-reassign
245
+ res.statusCode = 303;
220
246
  res.setHeader('Location', returnTo);
221
247
  res.setHeader('Content-Length', '0');
222
248
  res.end();
223
249
  }
224
250
 
225
- /**
226
- * @name interactionDetails
227
- * @api public
228
- */
251
+
252
+
253
+
254
+
229
255
  async interactionDetails(req, res) {
230
256
  return this.#getInteraction.call(this, req, res);
231
257
  }
@@ -240,7 +266,6 @@ export class Provider extends Koa {
240
266
  rar,
241
267
  } = {}) {
242
268
  if (typeof request === 'string' && request) {
243
- // eslint-disable-next-line no-param-reassign
244
269
  request = await this.BackchannelAuthenticationRequest.find(request, {
245
270
  ignoreExpiration: true,
246
271
  });
@@ -257,7 +282,6 @@ export class Provider extends Koa {
257
282
  }
258
283
 
259
284
  if (typeof result === 'string' && result) {
260
- // eslint-disable-next-line no-param-reassign
261
285
  result = await this.Grant.find(result);
262
286
  if (!result) {
263
287
  throw new Error('Grant not found');
@@ -382,6 +406,11 @@ export class Provider extends Koa {
382
406
  return this.#BackchannelAuthenticationRequest;
383
407
  }
384
408
 
409
+ get PreAuthorizedCode() {
410
+ this.#PreAuthorizedCode ||= models.getPreAuthorizedCode(this);
411
+ return this.#PreAuthorizedCode;
412
+ }
413
+
385
414
  get PushedAuthorizationRequest() {
386
415
  this.#PushedAuthorizationRequest ||= models.getPushedAuthorizationRequest(this);
387
416
  return this.#PushedAuthorizationRequest;
@@ -392,7 +421,6 @@ export class Provider extends Koa {
392
421
  return this.#ReplayDetection;
393
422
  }
394
423
 
395
- // eslint-disable-next-line class-methods-use-this
396
424
  get ResourceServer() { return ResourceServer; }
397
425
 
398
426
  async #getInteraction(req, res) {
@@ -428,7 +456,6 @@ export class Provider extends Koa {
428
456
  return this;
429
457
  }
430
458
 
431
- // eslint-disable-next-line class-methods-use-this
432
459
  get [Symbol.toStringTag]() {
433
460
  return 'Provider';
434
461
  }
@@ -1,5 +1,3 @@
1
- /* eslint-disable camelcase */
2
-
3
1
  import form_post from './form_post.js';
4
2
  import fragment from './fragment.js';
5
3
  import query from './query.js';
@@ -1,4 +1,3 @@
1
- /* eslint-disable camelcase */
2
1
  import query from './query.js';
3
2
  import fragment from './fragment.js';
4
3
  import form_post from './form_post.js';
@@ -1,9 +1,18 @@
1
- import jsesc from 'jsesc';
2
-
3
1
  import pushInlineSha from '../helpers/script_src_sha.js';
4
2
 
5
3
  const statusCodes = new Set([200, 400, 500]);
6
4
 
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+ const SCRIPT_UNSAFE = /[<>&\u2028\u2029]/g;
14
+ const escapeScriptContext = (char) => `\\u${char.charCodeAt(0).toString(16).padStart(4, '0').toUpperCase()}`;
15
+
7
16
  export default function webMessage(ctx, redirectUri, response) {
8
17
  ctx.type = 'html';
9
18
 
@@ -19,15 +28,16 @@ export default function webMessage(ctx, redirectUri, response) {
19
28
  .join(';'));
20
29
  }
21
30
 
22
- const data = jsesc({
31
+ const data = JSON.stringify({
23
32
  response,
24
33
  redirect_uri: redirectUri,
25
- }, { json: true, isScriptContext: true });
34
+ }).replace(SCRIPT_UNSAFE, escapeScriptContext);
26
35
 
27
36
  ctx.body = `<!DOCTYPE html>
28
37
  <html>
29
38
  <head>
30
39
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
40
+ <meta charset="utf-8">
31
41
  <title>Web Message Response</title>
32
42
  </head>
33
43
  <body>
@@ -0,0 +1,85 @@
1
+ import certificateThumbprint from '../helpers/certificate_thumbprint.js';
2
+ import { account as validateAccount } from '../helpers/configuration_result.js';
3
+ import { InvalidToken } from '../helpers/errors.js';
4
+ import dpopValidate, { checkDpopReplay } from '../helpers/validate_dpop.js';
5
+ import instance from '../helpers/weak_cache.js';
6
+
7
+ export function getValidateAccessToken({ afterFind } = {}) {
8
+ return async function validateAccessToken(ctx, next) {
9
+ const value = ctx.oidc.getAccessToken({ acceptDPoP: true });
10
+ const dPoP = await dpopValidate(ctx.oidc.provider, ctx, value);
11
+ const accessToken = await ctx.oidc.provider.AccessToken.find(value);
12
+
13
+ ctx.assert(accessToken, new InvalidToken('access token not found'));
14
+ ctx.oidc.entity('AccessToken', accessToken);
15
+
16
+ await afterFind?.(ctx, accessToken);
17
+
18
+ if (accessToken['x5t#S256']) {
19
+ const { getCertificate } = instance(ctx.oidc.provider).features.mTLS;
20
+ const cert = getCertificate(ctx);
21
+ if (!cert || accessToken['x5t#S256'] !== certificateThumbprint(cert)) {
22
+ throw new InvalidToken('failed x5t#S256 verification');
23
+ }
24
+ }
25
+
26
+ await checkDpopReplay(ctx.oidc.provider, ctx, dPoP, accessToken.clientId, InvalidToken);
27
+
28
+ if (dPoP && !accessToken.jkt) {
29
+ throw new InvalidToken(
30
+ 'access token is not sender-constrained but proof of possession was provided',
31
+ );
32
+ }
33
+
34
+ if (accessToken.jkt && (!dPoP || accessToken.jkt !== dPoP.thumbprint)) {
35
+ throw new InvalidToken('failed jkt verification');
36
+ }
37
+
38
+ await next();
39
+ };
40
+ }
41
+
42
+ export async function loadAccessTokenClient(ctx, next) {
43
+ const client = await ctx.oidc.provider.Client.find(ctx.oidc.accessToken.clientId);
44
+ ctx.assert(client, new InvalidToken('associated client not found'));
45
+ ctx.oidc.entity('Client', client);
46
+ await next();
47
+ }
48
+
49
+ export async function loadAccessTokenAccount(ctx, next) {
50
+ const account = validateAccount(
51
+ await instance(ctx.oidc.provider).configuration.findAccount(
52
+ ctx,
53
+ ctx.oidc.accessToken.accountId,
54
+ ctx.oidc.accessToken,
55
+ ),
56
+ );
57
+ ctx.assert(account, new InvalidToken('associated account not found'));
58
+ ctx.oidc.entity('Account', account);
59
+ await next();
60
+ }
61
+
62
+ export async function loadAccessTokenGrant(ctx, next) {
63
+ const grant = await ctx.oidc.provider.Grant.find(ctx.oidc.accessToken.grantId, {
64
+ ignoreExpiration: true,
65
+ });
66
+
67
+ if (!grant) {
68
+ throw new InvalidToken('grant not found');
69
+ }
70
+
71
+ if (grant.isExpired) {
72
+ throw new InvalidToken('grant is expired');
73
+ }
74
+
75
+ if (grant.clientId !== ctx.oidc.accessToken.clientId) {
76
+ throw new InvalidToken('clientId mismatch');
77
+ }
78
+
79
+ if (grant.accountId !== ctx.oidc.accessToken.accountId) {
80
+ throw new InvalidToken('accountId mismatch');
81
+ }
82
+
83
+ ctx.oidc.entity('Grant', grant);
84
+ await next();
85
+ }
@@ -2,6 +2,6 @@ import Params from '../helpers/params.js';
2
2
 
3
3
  export default function assembleParams(allowList, ctx, next) {
4
4
  const params = ctx.method === 'POST' ? ctx.oidc.body : ctx.query;
5
- ctx.oidc.params = new (Params(allowList))(params);
5
+ ctx.oidc.params = new Params(allowList, params);
6
6
  return next();
7
7
  }
@@ -1,11 +1,19 @@
1
1
  import * as jose from 'jose';
2
2
 
3
- import { InvalidClientAuth, UseAttestationChallenge } from '../helpers/errors.js';
3
+ import { InvalidClientAuth, InvalidClientAttestation, UseAttestationChallenge } from '../helpers/errors.js';
4
4
  import instance from '../helpers/weak_cache.js';
5
5
  import { CHALLENGE_OK_WINDOW } from '../helpers/challenge.js';
6
6
  import epochTime from '../helpers/epoch_time.js';
7
7
 
8
- export default async function attestationClientAuth(ctx) {
8
+ function invalid(ErrorClass, options) {
9
+ if (ErrorClass === InvalidClientAuth) {
10
+ return new ErrorClass(options);
11
+ }
12
+
13
+ return new ErrorClass(undefined, options);
14
+ }
15
+
16
+ export async function validateClientAttestationJwtAndPop(ctx, { signal = false } = {}) {
9
17
  const {
10
18
  configuration: {
11
19
  clockTolerance,
@@ -15,29 +23,31 @@ export default async function attestationClientAuth(ctx) {
15
23
  AttestChallenges,
16
24
  } = instance(ctx.oidc.provider);
17
25
 
26
+ const ErrorClass = signal ? InvalidClientAttestation : InvalidClientAuth;
18
27
  const nextChallenge = AttestChallenges.nextChallenge();
19
28
 
20
29
  const attestation = ctx.get('oauth-client-attestation');
30
+ if (!attestation) {
31
+ throw invalid(ErrorClass, 'oauth-client-attestation missing');
32
+ }
33
+
21
34
  let verifiedAttestation;
22
35
  try {
23
36
  verifiedAttestation = await jose.jwtVerify(
24
37
  attestation,
25
38
  async (header) => {
26
39
  const payload = jose.decodeJwt(attestation);
27
- if (typeof payload.iss !== 'string') {
28
- throw new Error('iss must be a string');
29
- }
30
40
  const key = await attestClientAuth.getAttestationSignaturePublicKey(
31
41
  ctx,
32
- payload.iss,
33
42
  header,
43
+ payload,
34
44
  ctx.oidc.client,
35
45
  );
36
46
  return key;
37
47
  },
38
48
  {
39
49
  algorithms: attestSigningAlgValues,
40
- requiredClaims: ['iss', 'sub', 'exp', 'cnf'],
50
+ requiredClaims: ['sub', 'exp', 'cnf'],
41
51
  typ: 'oauth-client-attestation+jwt',
42
52
  clockTolerance,
43
53
  subject: ctx.oidc.client.clientId,
@@ -54,13 +64,13 @@ export default async function attestationClientAuth(ctx) {
54
64
  ) {
55
65
  throw new Error('invalid cnf.jwk');
56
66
  }
57
- } catch (err) {
58
- throw new InvalidClientAuth(`failed to validate oauth-client-attestation: ${err.message}`);
67
+ } catch (cause) {
68
+ throw invalid(ErrorClass, { cause });
59
69
  }
60
70
 
61
71
  const pop = ctx.get('oauth-client-attestation-pop');
62
72
  if (!pop) {
63
- throw new InvalidClientAuth('oauth-client-attestation-pop missing');
73
+ throw invalid(ErrorClass, 'oauth-client-attestation-pop missing');
64
74
  }
65
75
  let verifiedPoP;
66
76
  try {
@@ -69,18 +79,20 @@ export default async function attestationClientAuth(ctx) {
69
79
  async (header) => jose.importJWK(verifiedAttestation.payload.cnf.jwk, header.alg),
70
80
  {
71
81
  algorithms: attestSigningAlgValues,
72
- requiredClaims: ['iss', 'aud', 'jti'], // challenge is checked later
82
+ requiredClaims: ['aud', 'jti', 'iat'],
73
83
  typ: 'oauth-client-attestation-pop+jwt',
74
84
  clockTolerance,
75
- issuer: ctx.oidc.client.clientId,
76
85
  audience: ctx.oidc.issuer,
77
86
  },
78
87
  );
79
88
  if (typeof verifiedPoP.payload.aud !== 'string') {
80
89
  throw new Error('aud must be a string');
81
90
  }
82
- } catch (err) {
83
- throw new InvalidClientAuth(`failed to validate oauth-client-attestation-pop: ${err.message}`);
91
+ if (typeof verifiedPoP.payload.jti !== 'string' || !verifiedPoP.payload.jti) {
92
+ throw new Error('jti must be a non-empty string');
93
+ }
94
+ } catch (cause) {
95
+ throw invalid(ErrorClass, { cause });
84
96
  }
85
97
 
86
98
  await attestClientAuth.assertAttestationJwtAndPop(
@@ -91,13 +103,13 @@ export default async function attestationClientAuth(ctx) {
91
103
  );
92
104
 
93
105
  const unique = await ctx.oidc.provider.ReplayDetection.unique(
94
- verifiedPoP.payload.iss,
106
+ ctx.oidc.client.clientId,
95
107
  verifiedPoP.payload.jti,
96
108
  epochTime() + CHALLENGE_OK_WINDOW,
97
109
  );
98
110
 
99
111
  if (!unique) {
100
- throw new InvalidClientAuth('oauth-client-attestation-pop tokens must only be used once');
112
+ throw invalid(ErrorClass, 'oauth-client-attestation-pop tokens must only be used once');
101
113
  }
102
114
 
103
115
  if (typeof verifiedPoP.payload.challenge !== 'string' || !AttestChallenges.checkChallenge(verifiedPoP.payload.challenge)) {
@@ -108,4 +120,15 @@ export default async function attestationClientAuth(ctx) {
108
120
  if (verifiedPoP.payload.challenge !== nextChallenge) {
109
121
  ctx.set('oauth-client-attestation-challenge', nextChallenge);
110
122
  }
123
+
124
+ ctx.oidc.clientAttestation = {
125
+ method: 'attestation_pop_jwt',
126
+ signal,
127
+ attestation: verifiedAttestation,
128
+ pop: verifiedPoP,
129
+ };
130
+ }
131
+
132
+ export default function attestationClientAuth(ctx) {
133
+ return validateClientAttestationJwtAndPop(ctx);
111
134
  }
@@ -1,104 +1,106 @@
1
1
  import debug from 'debug';
2
2
 
3
3
  import { InvalidRedirectUri } from '../helpers/errors.js';
4
+ import omitBy from '../helpers/_/omit_by.js';
4
5
  import instance from '../helpers/weak_cache.js';
5
6
  import errOut from '../helpers/err_out.js';
6
7
  import resolveResponseMode from '../helpers/resolve_response_mode.js';
7
- import oneRedirectUriClients from '../actions/authorization/one_redirect_uri_clients.js';
8
+ import { oneRedirectUriClients } from '../actions/authorization/response_parameters.js';
8
9
 
9
10
  const debugError = debug('oidc-provider:authentication:error');
10
11
  const serverError = debug('oidc-provider:server_error');
11
12
  const serverErrorTrace = debug('oidc-provider:server_error:trace');
12
13
 
13
- export default (provider) => {
14
- const AD_ACTA_CHECKS = Object.entries({
15
- redirect_uri: {
16
- Err: InvalidRedirectUri,
17
- method: 'redirectUriAllowed',
18
- check: 'redirectUriCheckPerformed',
19
- recovery: oneRedirectUriClients,
20
- },
21
- });
14
+ const AD_ACTA_CHECKS = Object.entries({
15
+ redirect_uri: {
16
+ Err: InvalidRedirectUri,
17
+ method: 'redirectUriAllowed',
18
+ check: 'redirectUriCheckPerformed',
19
+ recovery: oneRedirectUriClients,
20
+ },
21
+ });
22
22
 
23
- function getOutAndEmit(ctx, err, state) {
24
- const out = { ...errOut(err, state), iss: ctx.oidc.provider.issuer };
23
+ function getOutAndEmit(ctx, err, state) {
24
+ const { provider } = ctx.oidc;
25
+ const out = { ...errOut(err, state), iss: ctx.oidc.provider.issuer };
25
26
 
26
- if (err.expose) {
27
- provider.emit('authorization.error', ctx, err);
28
- debugError('%o', out);
29
- } else {
30
- provider.emit('server_error', ctx, err);
31
- serverError('path=%s method=%s error=%o', ctx.path, ctx.method, err);
32
- serverErrorTrace(err);
33
- }
34
-
35
- return out;
27
+ if (err.expose) {
28
+ provider.emit('authorization.error', ctx, err);
29
+ debugError('%o', out);
30
+ } else {
31
+ provider.emit('server_error', ctx, err);
32
+ serverError('path=%s method=%s error=%o', ctx.path, ctx.method, err);
33
+ serverErrorTrace(err);
36
34
  }
37
35
 
38
- function safe(param) {
39
- if (param && typeof param === 'string') {
40
- return param;
41
- }
42
- return undefined;
36
+ return out;
37
+ }
38
+
39
+ function safe(param) {
40
+ if (param && typeof param === 'string') {
41
+ return param;
43
42
  }
43
+ return undefined;
44
+ }
44
45
 
45
- return async function authorizationErrorHandler(ctx, next) {
46
- try {
47
- await next();
48
- } catch (caught) {
49
- let err = caught;
50
- ctx.status = err.statusCode || 500;
51
- const { oidc } = ctx;
46
+ export default async function authorizationErrorHandler(ctx, next) {
47
+ const { provider } = ctx.oidc;
48
+ try {
49
+ await next();
50
+ } catch (caught) {
51
+ let err = caught;
52
+ ctx.status = err.statusCode || 500;
53
+ const { oidc } = ctx;
52
54
 
53
- const { params = (ctx.method === 'POST' ? oidc.body : ctx.query) || {} } = oidc;
55
+ const { params = (ctx.method === 'POST' ? oidc.body : ctx.query) || {} } = oidc;
54
56
 
55
- if (!oidc.client && safe(params.client_id) && !ctx.oidc.noclient) {
56
- try {
57
- oidc.entity('Client', await provider.Client.find(safe(params.client_id)));
58
- } catch (e) {}
59
- }
57
+ if (!oidc.client && safe(params.client_id) && !ctx.oidc.noclient) {
58
+ try {
59
+ oidc.entity('Client', await provider.Client.find(safe(params.client_id)));
60
+ } catch {}
61
+ }
60
62
 
61
- for (const [param, {
62
- Err, check, flag, method, recovery,
63
- }] of AD_ACTA_CHECKS) {
64
- if (
65
- (!flag || instance(provider).configuration[flag])
66
- && !(err instanceof Err) && oidc.client
67
- && !oidc[check]
68
- ) {
69
- if (recovery && !safe(params[param])) {
70
- recovery(ctx, () => {});
71
- }
63
+ for (const [param, {
64
+ Err, check, flag, method, recovery,
65
+ }] of AD_ACTA_CHECKS) {
66
+ if (
67
+ (!flag || instance(provider).configuration[flag])
68
+ && !(err instanceof Err) && oidc.client
69
+ && !oidc[check]
70
+ ) {
71
+ if (recovery && !safe(params[param])) {
72
+ recovery(ctx, () => {});
73
+ }
72
74
 
73
- if (safe(params[param]) && !oidc.client[method](params[param])) {
74
- getOutAndEmit(ctx, caught, safe(params.state));
75
- err = new Err();
76
- ctx.status = err.statusCode;
77
- break;
78
- }
75
+ if (safe(params[param]) && !oidc.client[method](params[param])) {
76
+ getOutAndEmit(ctx, caught, safe(params.state));
77
+ err = new Err();
78
+ ctx.status = err.statusCode;
79
+ break;
79
80
  }
80
81
  }
82
+ }
81
83
 
82
- const out = getOutAndEmit(ctx, err, safe(params.state));
84
+ const out = getOutAndEmit(ctx, err, safe(params.state));
83
85
 
84
- // in case redirect_uri or client could not be verified no successful
85
- // response should happen, render instead
86
- if (
87
- !safe(params.client_id)
88
- || (safe(params.client_id) && !oidc.client)
89
- || !safe(params.redirect_uri)
90
- || !err.allow_redirect
91
- ) {
92
- const { renderError } = instance(provider).configuration;
93
- await renderError(ctx, out, err);
94
- } else {
95
- let mode = safe(params.response_mode);
96
- if (!instance(provider).responseModes.has(mode)) {
97
- mode = resolveResponseMode(safe(params.response_type));
98
- }
99
- const handler = instance(provider).responseModes.get(mode);
100
- await handler(ctx, safe(params.redirect_uri), out);
86
+
87
+
88
+ if (
89
+ !safe(params.client_id)
90
+ || (safe(params.client_id) && !oidc.client)
91
+ || !safe(params.redirect_uri)
92
+ || !err.allow_redirect
93
+ ) {
94
+ const { renderError } = instance(provider).configuration;
95
+ await renderError(ctx, out, err);
96
+ } else {
97
+ let mode = safe(params.response_mode);
98
+ if (!instance(provider).responseModes.has(mode)) {
99
+ mode = resolveResponseMode(safe(params.response_type));
101
100
  }
101
+ const handler = instance(provider).responseModes.get(mode);
102
+
103
+ await handler(ctx, safe(params.redirect_uri), omitBy(out, (value) => value === undefined));
102
104
  }
103
- };
104
- };
105
+ }
106
+ }