@azure/msal-common 13.0.0 → 14.0.0-alpha.2

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 (333) hide show
  1. package/dist/account/AccountInfo.d.ts +31 -31
  2. package/dist/account/AccountInfo.d.ts.map +1 -1
  3. package/dist/account/AuthToken.d.ts +20 -20
  4. package/dist/account/AuthToken.d.ts.map +1 -1
  5. package/dist/account/AuthToken.js +49 -50
  6. package/dist/account/AuthToken.js.map +1 -1
  7. package/dist/account/CcsCredential.d.ts +8 -8
  8. package/dist/account/CcsCredential.d.ts.map +1 -1
  9. package/dist/account/CcsCredential.js +9 -9
  10. package/dist/account/CcsCredential.js.map +1 -1
  11. package/dist/account/ClientCredentials.d.ts +14 -14
  12. package/dist/account/ClientCredentials.d.ts.map +1 -1
  13. package/dist/account/ClientInfo.d.ts +19 -19
  14. package/dist/account/ClientInfo.d.ts.map +1 -1
  15. package/dist/account/ClientInfo.js +37 -35
  16. package/dist/account/ClientInfo.js.map +1 -1
  17. package/dist/account/DecodedAuthToken.d.ts +8 -8
  18. package/dist/account/DecodedAuthToken.d.ts.map +1 -1
  19. package/dist/account/TokenClaims.d.ts +65 -65
  20. package/dist/account/TokenClaims.d.ts.map +1 -1
  21. package/dist/authority/Authority.d.ts +228 -215
  22. package/dist/authority/Authority.d.ts.map +1 -1
  23. package/dist/authority/Authority.js +717 -765
  24. package/dist/authority/Authority.js.map +1 -1
  25. package/dist/authority/AuthorityFactory.d.ts +30 -30
  26. package/dist/authority/AuthorityFactory.d.ts.map +1 -1
  27. package/dist/authority/AuthorityFactory.js +48 -63
  28. package/dist/authority/AuthorityFactory.js.map +1 -1
  29. package/dist/authority/AuthorityMetadata.d.ts +622 -622
  30. package/dist/authority/AuthorityMetadata.d.ts.map +1 -1
  31. package/dist/authority/AuthorityMetadata.js +877 -8
  32. package/dist/authority/AuthorityMetadata.js.map +1 -1
  33. package/dist/authority/AuthorityOptions.d.ts +18 -18
  34. package/dist/authority/AuthorityOptions.d.ts.map +1 -1
  35. package/dist/authority/AuthorityOptions.js +19 -19
  36. package/dist/authority/AuthorityOptions.js.map +1 -1
  37. package/dist/authority/AuthorityType.d.ts +9 -9
  38. package/dist/authority/AuthorityType.js +14 -14
  39. package/dist/authority/AuthorityType.js.map +1 -1
  40. package/dist/authority/AzureRegion.d.ts +1 -1
  41. package/dist/authority/AzureRegion.d.ts.map +1 -1
  42. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  43. package/dist/authority/AzureRegionConfiguration.d.ts.map +1 -1
  44. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  45. package/dist/authority/CloudDiscoveryMetadata.d.ts.map +1 -1
  46. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  47. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts.map +1 -1
  48. package/dist/authority/CloudInstanceDiscoveryErrorResponse.js +8 -8
  49. package/dist/authority/CloudInstanceDiscoveryErrorResponse.js.map +1 -1
  50. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  51. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts.map +1 -1
  52. package/dist/authority/CloudInstanceDiscoveryResponse.js +8 -8
  53. package/dist/authority/CloudInstanceDiscoveryResponse.js.map +1 -1
  54. package/dist/authority/ImdsOptions.d.ts +5 -5
  55. package/dist/authority/ImdsOptions.d.ts.map +1 -1
  56. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  57. package/dist/authority/OpenIdConfigResponse.d.ts.map +1 -1
  58. package/dist/authority/OpenIdConfigResponse.js +10 -10
  59. package/dist/authority/OpenIdConfigResponse.js.map +1 -1
  60. package/dist/authority/ProtocolMode.d.ts +7 -7
  61. package/dist/authority/ProtocolMode.js +12 -12
  62. package/dist/authority/ProtocolMode.js.map +1 -1
  63. package/dist/authority/RegionDiscovery.d.ts +30 -30
  64. package/dist/authority/RegionDiscovery.d.ts.map +1 -1
  65. package/dist/authority/RegionDiscovery.js +110 -132
  66. package/dist/authority/RegionDiscovery.js.map +1 -1
  67. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  68. package/dist/authority/RegionDiscoveryMetadata.d.ts.map +1 -1
  69. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  70. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts.map +1 -1
  71. package/dist/cache/CacheManager.d.ts +443 -443
  72. package/dist/cache/CacheManager.d.ts.map +1 -1
  73. package/dist/cache/CacheManager.js +1012 -1047
  74. package/dist/cache/CacheManager.js.map +1 -1
  75. package/dist/cache/entities/AccessTokenEntity.d.ts +56 -56
  76. package/dist/cache/entities/AccessTokenEntity.d.ts.map +1 -1
  77. package/dist/cache/entities/AccessTokenEntity.js +112 -113
  78. package/dist/cache/entities/AccessTokenEntity.js.map +1 -1
  79. package/dist/cache/entities/AccountEntity.d.ts +99 -99
  80. package/dist/cache/entities/AccountEntity.d.ts.map +1 -1
  81. package/dist/cache/entities/AccountEntity.js +249 -237
  82. package/dist/cache/entities/AccountEntity.js.map +1 -1
  83. package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
  84. package/dist/cache/entities/AppMetadataEntity.d.ts.map +1 -1
  85. package/dist/cache/entities/AppMetadataEntity.js +67 -68
  86. package/dist/cache/entities/AppMetadataEntity.js.map +1 -1
  87. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +47 -47
  88. package/dist/cache/entities/AuthorityMetadataEntity.d.ts.map +1 -1
  89. package/dist/cache/entities/AuthorityMetadataEntity.js +78 -75
  90. package/dist/cache/entities/AuthorityMetadataEntity.js.map +1 -1
  91. package/dist/cache/entities/CacheRecord.d.ts +13 -13
  92. package/dist/cache/entities/CacheRecord.d.ts.map +1 -1
  93. package/dist/cache/entities/CacheRecord.js +14 -15
  94. package/dist/cache/entities/CacheRecord.js.map +1 -1
  95. package/dist/cache/entities/CredentialEntity.d.ts +88 -88
  96. package/dist/cache/entities/CredentialEntity.d.ts.map +1 -1
  97. package/dist/cache/entities/CredentialEntity.js +137 -136
  98. package/dist/cache/entities/CredentialEntity.js.map +1 -1
  99. package/dist/cache/entities/IdTokenEntity.d.ts +34 -34
  100. package/dist/cache/entities/IdTokenEntity.d.ts.map +1 -1
  101. package/dist/cache/entities/IdTokenEntity.js +57 -63
  102. package/dist/cache/entities/IdTokenEntity.js.map +1 -1
  103. package/dist/cache/entities/RefreshTokenEntity.d.ts +36 -36
  104. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
  105. package/dist/cache/entities/RefreshTokenEntity.js +60 -66
  106. package/dist/cache/entities/RefreshTokenEntity.js.map +1 -1
  107. package/dist/cache/entities/ServerTelemetryEntity.d.ts +12 -12
  108. package/dist/cache/entities/ServerTelemetryEntity.d.ts.map +1 -1
  109. package/dist/cache/entities/ServerTelemetryEntity.js +28 -29
  110. package/dist/cache/entities/ServerTelemetryEntity.js.map +1 -1
  111. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  112. package/dist/cache/entities/ThrottlingEntity.js +24 -26
  113. package/dist/cache/entities/ThrottlingEntity.js.map +1 -1
  114. package/dist/cache/interface/ICacheManager.d.ts +165 -165
  115. package/dist/cache/interface/ICacheManager.d.ts.map +1 -1
  116. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  117. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  118. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  119. package/dist/cache/persistence/TokenCacheContext.d.ts.map +1 -1
  120. package/dist/cache/persistence/TokenCacheContext.js +26 -35
  121. package/dist/cache/persistence/TokenCacheContext.js.map +1 -1
  122. package/dist/cache/utils/CacheTypes.d.ts +62 -62
  123. package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
  124. package/dist/client/AuthorizationCodeClient.d.ts +71 -71
  125. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  126. package/dist/client/AuthorizationCodeClient.js +435 -478
  127. package/dist/client/AuthorizationCodeClient.js.map +1 -1
  128. package/dist/client/BaseClient.d.ts +50 -50
  129. package/dist/client/BaseClient.d.ts.map +1 -1
  130. package/dist/client/BaseClient.js +93 -101
  131. package/dist/client/BaseClient.js.map +1 -1
  132. package/dist/client/RefreshTokenClient.d.ts +34 -34
  133. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  134. package/dist/client/RefreshTokenClient.js +241 -274
  135. package/dist/client/RefreshTokenClient.js.map +1 -1
  136. package/dist/client/SilentFlowClient.d.ts +24 -24
  137. package/dist/client/SilentFlowClient.d.ts.map +1 -1
  138. package/dist/client/SilentFlowClient.js +95 -123
  139. package/dist/client/SilentFlowClient.js.map +1 -1
  140. package/dist/config/AppTokenProvider.d.ts +38 -38
  141. package/dist/config/AppTokenProvider.d.ts.map +1 -1
  142. package/dist/config/ClientConfiguration.d.ts +133 -133
  143. package/dist/config/ClientConfiguration.d.ts.map +1 -1
  144. package/dist/config/ClientConfiguration.js +88 -91
  145. package/dist/config/ClientConfiguration.js.map +1 -1
  146. package/dist/crypto/ICrypto.d.ts +62 -62
  147. package/dist/crypto/ICrypto.d.ts.map +1 -1
  148. package/dist/crypto/ICrypto.js +42 -73
  149. package/dist/crypto/ICrypto.js.map +1 -1
  150. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  151. package/dist/crypto/JoseHeader.d.ts +21 -21
  152. package/dist/crypto/JoseHeader.d.ts.map +1 -1
  153. package/dist/crypto/JoseHeader.js +37 -38
  154. package/dist/crypto/JoseHeader.js.map +1 -1
  155. package/dist/crypto/PopTokenGenerator.d.ts +57 -57
  156. package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
  157. package/dist/crypto/PopTokenGenerator.js +84 -108
  158. package/dist/crypto/PopTokenGenerator.js.map +1 -1
  159. package/dist/crypto/SignedHttpRequest.d.ts +11 -11
  160. package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
  161. package/dist/error/AuthError.d.ts +47 -47
  162. package/dist/error/AuthError.d.ts.map +1 -1
  163. package/dist/error/AuthError.js +52 -55
  164. package/dist/error/AuthError.js.map +1 -1
  165. package/dist/error/ClientAuthError.d.ts +412 -404
  166. package/dist/error/ClientAuthError.d.ts.map +1 -1
  167. package/dist/error/ClientAuthError.js +520 -514
  168. package/dist/error/ClientAuthError.js.map +1 -1
  169. package/dist/error/ClientConfigurationError.d.ts +198 -198
  170. package/dist/error/ClientConfigurationError.d.ts.map +1 -1
  171. package/dist/error/ClientConfigurationError.js +250 -254
  172. package/dist/error/ClientConfigurationError.js.map +1 -1
  173. package/dist/error/InteractionRequiredAuthError.d.ts +59 -59
  174. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
  175. package/dist/error/InteractionRequiredAuthError.js +79 -78
  176. package/dist/error/InteractionRequiredAuthError.js.map +1 -1
  177. package/dist/error/JoseHeaderError.d.ts +28 -28
  178. package/dist/error/JoseHeaderError.d.ts.map +1 -1
  179. package/dist/error/JoseHeaderError.js +40 -44
  180. package/dist/error/JoseHeaderError.js.map +1 -1
  181. package/dist/error/ServerError.d.ts +7 -7
  182. package/dist/error/ServerError.d.ts.map +1 -1
  183. package/dist/error/ServerError.js +15 -19
  184. package/dist/error/ServerError.js.map +1 -1
  185. package/dist/index.cjs.js +8890 -9111
  186. package/dist/index.cjs.js.map +1 -1
  187. package/dist/index.d.ts +93 -94
  188. package/dist/index.d.ts.map +1 -1
  189. package/dist/index.js +5 -6
  190. package/dist/index.js.map +1 -1
  191. package/dist/logger/Logger.d.ts +95 -95
  192. package/dist/logger/Logger.d.ts.map +1 -1
  193. package/dist/logger/Logger.js +198 -188
  194. package/dist/logger/Logger.js.map +1 -1
  195. package/dist/network/INetworkModule.d.ts +29 -29
  196. package/dist/network/INetworkModule.d.ts.map +1 -1
  197. package/dist/network/INetworkModule.js +14 -14
  198. package/dist/network/INetworkModule.js.map +1 -1
  199. package/dist/network/NetworkManager.d.ts +32 -31
  200. package/dist/network/NetworkManager.d.ts.map +1 -1
  201. package/dist/network/NetworkManager.js +34 -48
  202. package/dist/network/NetworkManager.js.map +1 -1
  203. package/dist/network/RequestThumbprint.d.ts +16 -16
  204. package/dist/network/RequestThumbprint.d.ts.map +1 -1
  205. package/dist/network/ThrottlingUtils.d.ts +41 -41
  206. package/dist/network/ThrottlingUtils.d.ts.map +1 -1
  207. package/dist/network/ThrottlingUtils.js +95 -94
  208. package/dist/network/ThrottlingUtils.js.map +1 -1
  209. package/dist/packageMetadata.d.ts +2 -2
  210. package/dist/packageMetadata.d.ts.map +1 -1
  211. package/dist/packageMetadata.js +4 -4
  212. package/dist/packageMetadata.js.map +1 -1
  213. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  214. package/dist/request/AuthenticationHeaderParser.d.ts.map +1 -1
  215. package/dist/request/AuthenticationHeaderParser.js +56 -57
  216. package/dist/request/AuthenticationHeaderParser.js.map +1 -1
  217. package/dist/request/BaseAuthRequest.d.ts +37 -37
  218. package/dist/request/BaseAuthRequest.d.ts.map +1 -1
  219. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  220. package/dist/request/CommonAuthorizationCodeRequest.d.ts.map +1 -1
  221. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  222. package/dist/request/CommonAuthorizationUrlRequest.d.ts.map +1 -1
  223. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  224. package/dist/request/CommonClientCredentialRequest.d.ts.map +1 -1
  225. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  226. package/dist/request/CommonDeviceCodeRequest.d.ts.map +1 -1
  227. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  228. package/dist/request/CommonEndSessionRequest.d.ts.map +1 -1
  229. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  230. package/dist/request/CommonOnBehalfOfRequest.d.ts.map +1 -1
  231. package/dist/request/CommonRefreshTokenRequest.d.ts +19 -19
  232. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  233. package/dist/request/CommonSilentFlowRequest.d.ts +18 -18
  234. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  235. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  236. package/dist/request/CommonUsernamePasswordRequest.d.ts.map +1 -1
  237. package/dist/request/NativeRequest.d.ts +19 -19
  238. package/dist/request/NativeRequest.d.ts.map +1 -1
  239. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  240. package/dist/request/NativeSignOutRequest.d.ts.map +1 -1
  241. package/dist/request/RequestParameterBuilder.d.ts +216 -216
  242. package/dist/request/RequestParameterBuilder.d.ts.map +1 -1
  243. package/dist/request/RequestParameterBuilder.js +376 -378
  244. package/dist/request/RequestParameterBuilder.js.map +1 -1
  245. package/dist/request/RequestValidator.d.ts +33 -33
  246. package/dist/request/RequestValidator.d.ts.map +1 -1
  247. package/dist/request/RequestValidator.js +84 -89
  248. package/dist/request/RequestValidator.js.map +1 -1
  249. package/dist/request/ScopeSet.d.ts +88 -88
  250. package/dist/request/ScopeSet.d.ts.map +1 -1
  251. package/dist/request/ScopeSet.js +198 -198
  252. package/dist/request/ScopeSet.js.map +1 -1
  253. package/dist/response/AuthenticationResult.d.ts +39 -39
  254. package/dist/response/AuthenticationResult.d.ts.map +1 -1
  255. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  256. package/dist/response/AuthorizationCodePayload.d.ts.map +1 -1
  257. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  258. package/dist/response/DeviceCodeResponse.d.ts.map +1 -1
  259. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  260. package/dist/response/ExternalTokenResponse.d.ts.map +1 -1
  261. package/dist/response/IMDSBadResponse.d.ts +4 -4
  262. package/dist/response/IMDSBadResponse.d.ts.map +1 -1
  263. package/dist/response/ResponseHandler.d.ts +72 -72
  264. package/dist/response/ResponseHandler.d.ts.map +1 -1
  265. package/dist/response/ResponseHandler.js +301 -286
  266. package/dist/response/ResponseHandler.js.map +1 -1
  267. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  268. package/dist/response/ServerAuthorizationCodeResponse.d.ts.map +1 -1
  269. package/dist/response/ServerAuthorizationTokenResponse.d.ts +44 -44
  270. package/dist/response/ServerAuthorizationTokenResponse.d.ts.map +1 -1
  271. package/dist/telemetry/performance/IPerformanceClient.d.ts +42 -43
  272. package/dist/telemetry/performance/IPerformanceClient.d.ts.map +1 -1
  273. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  274. package/dist/telemetry/performance/PerformanceClient.d.ts +189 -197
  275. package/dist/telemetry/performance/PerformanceClient.d.ts.map +1 -1
  276. package/dist/telemetry/performance/PerformanceClient.js +407 -402
  277. package/dist/telemetry/performance/PerformanceClient.js.map +1 -1
  278. package/dist/telemetry/performance/PerformanceEvent.d.ts +439 -439
  279. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
  280. package/dist/telemetry/performance/PerformanceEvent.js +227 -227
  281. package/dist/telemetry/performance/PerformanceEvent.js.map +1 -1
  282. package/dist/telemetry/performance/StubPerformanceClient.d.ts +19 -17
  283. package/dist/telemetry/performance/StubPerformanceClient.d.ts.map +1 -1
  284. package/dist/telemetry/performance/StubPerformanceClient.js +37 -46
  285. package/dist/telemetry/performance/StubPerformanceClient.js.map +1 -1
  286. package/dist/telemetry/server/ServerTelemetryManager.d.ts +65 -66
  287. package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -1
  288. package/dist/telemetry/server/ServerTelemetryManager.js +199 -161
  289. package/dist/telemetry/server/ServerTelemetryManager.js.map +1 -1
  290. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  291. package/dist/telemetry/server/ServerTelemetryRequest.d.ts.map +1 -1
  292. package/dist/url/IUri.d.ts +12 -12
  293. package/dist/url/UrlString.d.ts +70 -70
  294. package/dist/url/UrlString.d.ts.map +1 -1
  295. package/dist/url/UrlString.js +243 -232
  296. package/dist/url/UrlString.js.map +1 -1
  297. package/dist/utils/Constants.d.ts +331 -331
  298. package/dist/utils/Constants.d.ts.map +1 -1
  299. package/dist/utils/Constants.js +374 -373
  300. package/dist/utils/Constants.js.map +1 -1
  301. package/dist/utils/MsalTypes.d.ts +6 -6
  302. package/dist/utils/MsalTypes.d.ts.map +1 -1
  303. package/dist/utils/ProtocolUtils.d.ts +42 -42
  304. package/dist/utils/ProtocolUtils.d.ts.map +1 -1
  305. package/dist/utils/ProtocolUtils.js +72 -69
  306. package/dist/utils/ProtocolUtils.js.map +1 -1
  307. package/dist/utils/StringUtils.d.ts +53 -53
  308. package/dist/utils/StringUtils.d.ts.map +1 -1
  309. package/dist/utils/StringUtils.js +125 -123
  310. package/dist/utils/StringUtils.js.map +1 -1
  311. package/dist/utils/TimeUtils.d.ts +27 -27
  312. package/dist/utils/TimeUtils.d.ts.map +1 -1
  313. package/dist/utils/TimeUtils.js +46 -49
  314. package/dist/utils/TimeUtils.js.map +1 -1
  315. package/package.json +10 -7
  316. package/dist/_virtual/_tslib.js +0 -90
  317. package/dist/_virtual/_tslib.js.map +0 -1
  318. package/dist/client/ClientCredentialClient.d.ts +0 -38
  319. package/dist/client/ClientCredentialClient.d.ts.map +0 -1
  320. package/dist/client/ClientCredentialClient.js +0 -203
  321. package/dist/client/ClientCredentialClient.js.map +0 -1
  322. package/dist/client/DeviceCodeClient.d.ts +0 -57
  323. package/dist/client/DeviceCodeClient.d.ts.map +0 -1
  324. package/dist/client/DeviceCodeClient.js +0 -250
  325. package/dist/client/DeviceCodeClient.js.map +0 -1
  326. package/dist/client/OnBehalfOfClient.d.ts +0 -51
  327. package/dist/client/OnBehalfOfClient.d.ts.map +0 -1
  328. package/dist/client/OnBehalfOfClient.js +0 -248
  329. package/dist/client/OnBehalfOfClient.js.map +0 -1
  330. package/dist/client/UsernamePasswordClient.d.ts +0 -29
  331. package/dist/client/UsernamePasswordClient.d.ts.map +0 -1
  332. package/dist/client/UsernamePasswordClient.js +0 -129
  333. package/dist/client/UsernamePasswordClient.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ICrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/ICrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;GAIG;AACH,oBAAY,SAAS,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAA;CACpB,CAAC;AAEF,oBAAY,2BAA2B,GAAG,IAAI,CAAC,eAAe,EAAE,uBAAuB,GAAG,oBAAoB,GAAG,WAAW,GAAG,UAAU,CAAE,GAAG;IAC1I,aAAa,CAAC,EAAE,MAAM,CAAA;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB;;OAEG;IACH,aAAa,IAAI,MAAM,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC;;;OAGG;IACH,sBAAsB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9E;;;OAGG;IACH,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1F;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAClD;AAED,eAAO,MAAM,6BAA6B,EAAE,OAqC3C,CAAC"}
1
+ {"version":3,"file":"ICrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/ICrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAC1C,eAAe,EACf,uBAAuB,GAAG,oBAAoB,GAAG,WAAW,GAAG,UAAU,CAC5E,GAAG;IACA,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB;;OAEG;IACH,aAAa,IAAI,MAAM,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC;;;OAGG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC;;OAEG;IACH,iBAAiB,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC;;;OAGG;IACH,sBAAsB,CAClB,OAAO,EAAE,2BAA2B,GACrC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB;;;OAGG;IACH,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC;;;OAGG;IACH,OAAO,CACH,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,MAAM,EACX,aAAa,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAClD;AAED,eAAO,MAAM,6BAA6B,EAAE,OA8C3C,CAAC"}
@@ -1,79 +1,48 @@
1
- /*! @azure/msal-common v13.0.0 2023-05-01 */
1
+ /*! @azure/msal-common v14.0.0-alpha.2 2023-05-17 */
2
2
  'use strict';
3
- import { __awaiter, __generator } from '../_virtual/_tslib.js';
4
3
  import { AuthError } from '../error/AuthError.js';
5
4
 
6
- /*
7
- * Copyright (c) Microsoft Corporation. All rights reserved.
8
- * Licensed under the MIT License.
9
- */
10
- var DEFAULT_CRYPTO_IMPLEMENTATION = {
11
- createNewGuid: function () {
12
- var notImplErr = "Crypto interface - createNewGuid() has not been implemented";
13
- throw AuthError.createUnexpectedError(notImplErr);
14
- },
15
- base64Decode: function () {
16
- var notImplErr = "Crypto interface - base64Decode() has not been implemented";
17
- throw AuthError.createUnexpectedError(notImplErr);
18
- },
19
- base64Encode: function () {
20
- var notImplErr = "Crypto interface - base64Encode() has not been implemented";
21
- throw AuthError.createUnexpectedError(notImplErr);
22
- },
23
- generatePkceCodes: function () {
24
- return __awaiter(this, void 0, void 0, function () {
25
- var notImplErr;
26
- return __generator(this, function (_a) {
27
- notImplErr = "Crypto interface - generatePkceCodes() has not been implemented";
28
- throw AuthError.createUnexpectedError(notImplErr);
29
- });
30
- });
31
- },
32
- getPublicKeyThumbprint: function () {
33
- return __awaiter(this, void 0, void 0, function () {
34
- var notImplErr;
35
- return __generator(this, function (_a) {
36
- notImplErr = "Crypto interface - getPublicKeyThumbprint() has not been implemented";
37
- throw AuthError.createUnexpectedError(notImplErr);
38
- });
39
- });
40
- },
41
- removeTokenBindingKey: function () {
42
- return __awaiter(this, void 0, void 0, function () {
43
- var notImplErr;
44
- return __generator(this, function (_a) {
45
- notImplErr = "Crypto interface - removeTokenBindingKey() has not been implemented";
46
- throw AuthError.createUnexpectedError(notImplErr);
47
- });
48
- });
49
- },
50
- clearKeystore: function () {
51
- return __awaiter(this, void 0, void 0, function () {
52
- var notImplErr;
53
- return __generator(this, function (_a) {
54
- notImplErr = "Crypto interface - clearKeystore() has not been implemented";
55
- throw AuthError.createUnexpectedError(notImplErr);
56
- });
57
- });
58
- },
59
- signJwt: function () {
60
- return __awaiter(this, void 0, void 0, function () {
61
- var notImplErr;
62
- return __generator(this, function (_a) {
63
- notImplErr = "Crypto interface - signJwt() has not been implemented";
64
- throw AuthError.createUnexpectedError(notImplErr);
65
- });
66
- });
67
- },
68
- hashString: function () {
69
- return __awaiter(this, void 0, void 0, function () {
70
- var notImplErr;
71
- return __generator(this, function (_a) {
72
- notImplErr = "Crypto interface - hashString() has not been implemented";
73
- throw AuthError.createUnexpectedError(notImplErr);
74
- });
75
- });
76
- }
5
+ /*
6
+ * Copyright (c) Microsoft Corporation. All rights reserved.
7
+ * Licensed under the MIT License.
8
+ */
9
+ const DEFAULT_CRYPTO_IMPLEMENTATION = {
10
+ createNewGuid: () => {
11
+ const notImplErr = "Crypto interface - createNewGuid() has not been implemented";
12
+ throw AuthError.createUnexpectedError(notImplErr);
13
+ },
14
+ base64Decode: () => {
15
+ const notImplErr = "Crypto interface - base64Decode() has not been implemented";
16
+ throw AuthError.createUnexpectedError(notImplErr);
17
+ },
18
+ base64Encode: () => {
19
+ const notImplErr = "Crypto interface - base64Encode() has not been implemented";
20
+ throw AuthError.createUnexpectedError(notImplErr);
21
+ },
22
+ async generatePkceCodes() {
23
+ const notImplErr = "Crypto interface - generatePkceCodes() has not been implemented";
24
+ throw AuthError.createUnexpectedError(notImplErr);
25
+ },
26
+ async getPublicKeyThumbprint() {
27
+ const notImplErr = "Crypto interface - getPublicKeyThumbprint() has not been implemented";
28
+ throw AuthError.createUnexpectedError(notImplErr);
29
+ },
30
+ async removeTokenBindingKey() {
31
+ const notImplErr = "Crypto interface - removeTokenBindingKey() has not been implemented";
32
+ throw AuthError.createUnexpectedError(notImplErr);
33
+ },
34
+ async clearKeystore() {
35
+ const notImplErr = "Crypto interface - clearKeystore() has not been implemented";
36
+ throw AuthError.createUnexpectedError(notImplErr);
37
+ },
38
+ async signJwt() {
39
+ const notImplErr = "Crypto interface - signJwt() has not been implemented";
40
+ throw AuthError.createUnexpectedError(notImplErr);
41
+ },
42
+ async hashString() {
43
+ const notImplErr = "Crypto interface - hashString() has not been implemented";
44
+ throw AuthError.createUnexpectedError(notImplErr);
45
+ },
77
46
  };
78
47
 
79
48
  export { DEFAULT_CRYPTO_IMPLEMENTATION };
@@ -1 +1 @@
1
- {"version":3,"file":"ICrypto.js","sources":["../../src/crypto/ICrypto.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { AuthError } from \"../error/AuthError\";\nimport { BaseAuthRequest } from \"../request/BaseAuthRequest\";\nimport { SignedHttpRequest } from \"./SignedHttpRequest\";\n\n/**\n * The PkceCodes type describes the structure\n * of objects that contain PKCE code\n * challenge and verifier pairs\n */\nexport type PkceCodes = {\n verifier: string,\n challenge: string\n};\n\nexport type SignedHttpRequestParameters = Pick<BaseAuthRequest, \"resourceRequestMethod\" | \"resourceRequestUri\" | \"shrClaims\" | \"shrNonce\" > & {\n correlationId?: string\n};\n\n/**\n * Interface for crypto functions used by library\n */\nexport interface ICrypto {\n /**\n * Creates a guid randomly.\n */\n createNewGuid(): string;\n /**\n * base64 Encode string\n * @param input \n */\n base64Encode(input: string): string;\n /**\n * base64 decode string\n * @param input \n */\n base64Decode(input: string): string;\n /**\n * Generate PKCE codes for OAuth. See RFC here: https://tools.ietf.org/html/rfc7636\n */\n generatePkceCodes(): Promise<PkceCodes>;\n /**\n * Generates an JWK RSA S256 Thumbprint\n * @param request\n */\n getPublicKeyThumbprint(request: SignedHttpRequestParameters): Promise<string>;\n /**\n * Removes cryptographic keypair from key store matching the keyId passed in\n * @param kid \n */\n removeTokenBindingKey(kid: string): Promise<boolean>;\n /**\n * Removes all cryptographic keys from IndexedDB storage\n */\n clearKeystore(): Promise<boolean>;\n /** \n * Returns a signed proof-of-possession token with a given acces token that contains a cnf claim with the required kid.\n * @param accessToken \n */\n signJwt(payload: SignedHttpRequest, kid: string, correlationId?: string): Promise<string>;\n /**\n * Returns the SHA-256 hash of an input string\n * @param plainText\n */\n hashString(plainText: string): Promise<string>;\n}\n\nexport const DEFAULT_CRYPTO_IMPLEMENTATION: ICrypto = {\n createNewGuid: (): string => {\n const notImplErr = \"Crypto interface - createNewGuid() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n base64Decode: (): string => {\n const notImplErr = \"Crypto interface - base64Decode() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n base64Encode: (): string => {\n const notImplErr = \"Crypto interface - base64Encode() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n async generatePkceCodes(): Promise<PkceCodes> {\n const notImplErr = \"Crypto interface - generatePkceCodes() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n async getPublicKeyThumbprint(): Promise<string> {\n const notImplErr = \"Crypto interface - getPublicKeyThumbprint() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n async removeTokenBindingKey(): Promise<boolean> {\n const notImplErr = \"Crypto interface - removeTokenBindingKey() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n async clearKeystore(): Promise<boolean> {\n const notImplErr = \"Crypto interface - clearKeystore() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n async signJwt(): Promise<string> {\n const notImplErr = \"Crypto interface - signJwt() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n },\n async hashString(): Promise<string> {\n const notImplErr = \"Crypto interface - hashString() has not been implemented\";\n throw AuthError.createUnexpectedError(notImplErr);\n }\n};\n"],"names":[],"mappings":";;;;;AAAA;;;AAGG;AAoEU,IAAA,6BAA6B,GAAY;AAClD,IAAA,aAAa,EAAE,YAAA;QACX,IAAM,UAAU,GAAG,6DAA6D,CAAC;AACjF,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,YAAY,EAAE,YAAA;QACV,IAAM,UAAU,GAAG,4DAA4D,CAAC;AAChF,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,YAAY,EAAE,YAAA;QACV,IAAM,UAAU,GAAG,4DAA4D,CAAC;AAChF,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACK,IAAA,iBAAiB,EAAvB,YAAA;;;;gBACU,UAAU,GAAG,iEAAiE,CAAC;AACrF,gBAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;;;AACrD,KAAA;AACK,IAAA,sBAAsB,EAA5B,YAAA;;;;gBACU,UAAU,GAAG,sEAAsE,CAAC;AAC1F,gBAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;;;AACrD,KAAA;AACK,IAAA,qBAAqB,EAA3B,YAAA;;;;gBACU,UAAU,GAAG,qEAAqE,CAAC;AACzF,gBAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;;;AACrD,KAAA;AACK,IAAA,aAAa,EAAnB,YAAA;;;;gBACU,UAAU,GAAG,6DAA6D,CAAC;AACjF,gBAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;;;AACrD,KAAA;AACK,IAAA,OAAO,EAAb,YAAA;;;;gBACU,UAAU,GAAG,uDAAuD,CAAC;AAC3E,gBAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;;;AACrD,KAAA;AACK,IAAA,UAAU,EAAhB,YAAA;;;;gBACU,UAAU,GAAG,0DAA0D,CAAC;AAC9E,gBAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;;;AACrD,KAAA;;;;;"}
1
+ {"version":3,"file":"ICrypto.js","sources":["../../src/crypto/ICrypto.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;;;AAGG;AA6EU,MAAA,6BAA6B,GAAY;IAClD,aAAa,EAAE,MAAa;QACxB,MAAM,UAAU,GACZ,6DAA6D,CAAC;AAClE,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;IACD,YAAY,EAAE,MAAa;QACvB,MAAM,UAAU,GACZ,4DAA4D,CAAC;AACjE,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;IACD,YAAY,EAAE,MAAa;QACvB,MAAM,UAAU,GACZ,4DAA4D,CAAC;AACjE,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,MAAM,iBAAiB,GAAA;QACnB,MAAM,UAAU,GACZ,iEAAiE,CAAC;AACtE,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,MAAM,sBAAsB,GAAA;QACxB,MAAM,UAAU,GACZ,sEAAsE,CAAC;AAC3E,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,MAAM,qBAAqB,GAAA;QACvB,MAAM,UAAU,GACZ,qEAAqE,CAAC;AAC1E,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,MAAM,aAAa,GAAA;QACf,MAAM,UAAU,GACZ,6DAA6D,CAAC;AAClE,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,MAAM,OAAO,GAAA;QACT,MAAM,UAAU,GACZ,uDAAuD,CAAC;AAC5D,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;AACD,IAAA,MAAM,UAAU,GAAA;QACZ,MAAM,UAAU,GACZ,0DAA0D,CAAC;AAC/D,QAAA,MAAM,SAAS,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;KACrD;;;;;"}
@@ -1,5 +1,5 @@
1
- export interface IGuidGenerator {
2
- generateGuid(): string;
3
- isGuid(guid: string): boolean;
4
- }
1
+ export interface IGuidGenerator {
2
+ generateGuid(): string;
3
+ isGuid(guid: string): boolean;
4
+ }
5
5
  //# sourceMappingURL=IGuidGenerator.d.ts.map
@@ -1,22 +1,22 @@
1
- import { JsonTypes } from "../utils/Constants";
2
- export declare type JoseHeaderOptions = {
3
- typ?: JsonTypes;
4
- alg?: string;
5
- kid?: string;
6
- };
7
- export declare class JoseHeader {
8
- typ?: JsonTypes;
9
- alg?: string;
10
- kid?: string;
11
- constructor(options: JoseHeaderOptions);
12
- /**
13
- * Builds SignedHttpRequest formatted JOSE Header from the
14
- * JOSE Header options provided or previously set on the object and returns
15
- * the stringified header object.
16
- * Throws if keyId or algorithm aren't provided since they are required for Access Token Binding.
17
- * @param shrHeaderOptions
18
- * @returns
19
- */
20
- static getShrHeaderString(shrHeaderOptions: JoseHeaderOptions): string;
21
- }
1
+ import { JsonTypes } from "../utils/Constants";
2
+ export type JoseHeaderOptions = {
3
+ typ?: JsonTypes;
4
+ alg?: string;
5
+ kid?: string;
6
+ };
7
+ export declare class JoseHeader {
8
+ typ?: JsonTypes;
9
+ alg?: string;
10
+ kid?: string;
11
+ constructor(options: JoseHeaderOptions);
12
+ /**
13
+ * Builds SignedHttpRequest formatted JOSE Header from the
14
+ * JOSE Header options provided or previously set on the object and returns
15
+ * the stringified header object.
16
+ * Throws if keyId or algorithm aren't provided since they are required for Access Token Binding.
17
+ * @param shrHeaderOptions
18
+ * @returns
19
+ */
20
+ static getShrHeaderString(shrHeaderOptions: JoseHeaderOptions): string;
21
+ }
22
22
  //# sourceMappingURL=JoseHeader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JoseHeader.d.ts","sourceRoot":"","sources":["../../src/crypto/JoseHeader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,oBAAY,iBAAiB,GAAG;IAC5B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;CACf,CAAC;AAEF,qBAAa,UAAU;IACZ,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;gBAEP,OAAO,EAAE,iBAAiB;IAMvC;;;;;;;OAOG;IACH,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,MAAM;CAoBzE"}
1
+ {"version":3,"file":"JoseHeader.d.ts","sourceRoot":"","sources":["../../src/crypto/JoseHeader.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,MAAM,iBAAiB,GAAG;IAC5B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,qBAAa,UAAU;IACZ,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;gBAER,OAAO,EAAE,iBAAiB;IAMtC;;;;;;;OAOG;IACH,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,MAAM;CAoBzE"}
@@ -1,45 +1,44 @@
1
- /*! @azure/msal-common v13.0.0 2023-05-01 */
1
+ /*! @azure/msal-common v14.0.0-alpha.2 2023-05-17 */
2
2
  'use strict';
3
3
  import { JoseHeaderError } from '../error/JoseHeaderError.js';
4
4
  import { JsonTypes } from '../utils/Constants.js';
5
5
 
6
- /*
7
- * Copyright (c) Microsoft Corporation. All rights reserved.
8
- * Licensed under the MIT License.
9
- */
10
- var JoseHeader = /** @class */ (function () {
11
- function JoseHeader(options) {
12
- this.typ = options.typ;
13
- this.alg = options.alg;
14
- this.kid = options.kid;
15
- }
16
- /**
17
- * Builds SignedHttpRequest formatted JOSE Header from the
18
- * JOSE Header options provided or previously set on the object and returns
19
- * the stringified header object.
20
- * Throws if keyId or algorithm aren't provided since they are required for Access Token Binding.
21
- * @param shrHeaderOptions
22
- * @returns
23
- */
24
- JoseHeader.getShrHeaderString = function (shrHeaderOptions) {
25
- // KeyID is required on the SHR header
26
- if (!shrHeaderOptions.kid) {
27
- throw JoseHeaderError.createMissingKidError();
28
- }
29
- // Alg is required on the SHR header
30
- if (!shrHeaderOptions.alg) {
31
- throw JoseHeaderError.createMissingAlgError();
32
- }
33
- var shrHeader = new JoseHeader({
34
- // Access Token PoP headers must have type pop, but the type header can be overriden for special cases
35
- typ: shrHeaderOptions.typ || JsonTypes.Pop,
36
- kid: shrHeaderOptions.kid,
37
- alg: shrHeaderOptions.alg
38
- });
39
- return JSON.stringify(shrHeader);
40
- };
41
- return JoseHeader;
42
- }());
6
+ /*
7
+ * Copyright (c) Microsoft Corporation. All rights reserved.
8
+ * Licensed under the MIT License.
9
+ */
10
+ class JoseHeader {
11
+ constructor(options) {
12
+ this.typ = options.typ;
13
+ this.alg = options.alg;
14
+ this.kid = options.kid;
15
+ }
16
+ /**
17
+ * Builds SignedHttpRequest formatted JOSE Header from the
18
+ * JOSE Header options provided or previously set on the object and returns
19
+ * the stringified header object.
20
+ * Throws if keyId or algorithm aren't provided since they are required for Access Token Binding.
21
+ * @param shrHeaderOptions
22
+ * @returns
23
+ */
24
+ static getShrHeaderString(shrHeaderOptions) {
25
+ // KeyID is required on the SHR header
26
+ if (!shrHeaderOptions.kid) {
27
+ throw JoseHeaderError.createMissingKidError();
28
+ }
29
+ // Alg is required on the SHR header
30
+ if (!shrHeaderOptions.alg) {
31
+ throw JoseHeaderError.createMissingAlgError();
32
+ }
33
+ const shrHeader = new JoseHeader({
34
+ // Access Token PoP headers must have type pop, but the type header can be overriden for special cases
35
+ typ: shrHeaderOptions.typ || JsonTypes.Pop,
36
+ kid: shrHeaderOptions.kid,
37
+ alg: shrHeaderOptions.alg,
38
+ });
39
+ return JSON.stringify(shrHeader);
40
+ }
41
+ }
43
42
 
44
43
  export { JoseHeader };
45
44
  //# sourceMappingURL=JoseHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JoseHeader.js","sources":["../../src/crypto/JoseHeader.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { JoseHeaderError } from \"../error/JoseHeaderError\";\nimport { JsonTypes } from \"../utils/Constants\";\n\nexport type JoseHeaderOptions = {\n typ?: JsonTypes,\n alg?: string,\n kid?: string\n};\n\nexport class JoseHeader {\n public typ?: JsonTypes;\n public alg?: string;\n public kid?: string;\n\n constructor (options: JoseHeaderOptions) {\n this.typ = options.typ;\n this.alg = options.alg;\n this.kid = options.kid;\n }\n\n /**\n * Builds SignedHttpRequest formatted JOSE Header from the\n * JOSE Header options provided or previously set on the object and returns\n * the stringified header object.\n * Throws if keyId or algorithm aren't provided since they are required for Access Token Binding.\n * @param shrHeaderOptions \n * @returns \n */\n static getShrHeaderString(shrHeaderOptions: JoseHeaderOptions): string {\n // KeyID is required on the SHR header\n if (!shrHeaderOptions.kid) {\n throw JoseHeaderError.createMissingKidError();\n }\n\n // Alg is required on the SHR header\n if (!shrHeaderOptions.alg) {\n throw JoseHeaderError.createMissingAlgError();\n }\n\n const shrHeader = new JoseHeader({\n // Access Token PoP headers must have type pop, but the type header can be overriden for special cases\n typ: shrHeaderOptions.typ || JsonTypes.Pop,\n kid: shrHeaderOptions.kid,\n alg: shrHeaderOptions.alg\n });\n\n return JSON.stringify(shrHeader);\n }\n}\n"],"names":[],"mappings":";;;;;AAAA;;;AAGG;AAWH,IAAA,UAAA,kBAAA,YAAA;AAKI,IAAA,SAAA,UAAA,CAAa,OAA0B,EAAA;AACnC,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;AACvB,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;AACvB,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;KAC1B;AAED;;;;;;;AAOG;IACI,UAAkB,CAAA,kBAAA,GAAzB,UAA0B,gBAAmC,EAAA;;AAEzD,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE;AACvB,YAAA,MAAM,eAAe,CAAC,qBAAqB,EAAE,CAAC;AACjD,SAAA;;AAGD,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE;AACvB,YAAA,MAAM,eAAe,CAAC,qBAAqB,EAAE,CAAC;AACjD,SAAA;AAED,QAAA,IAAM,SAAS,GAAG,IAAI,UAAU,CAAC;;AAE7B,YAAA,GAAG,EAAE,gBAAgB,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG;YAC1C,GAAG,EAAE,gBAAgB,CAAC,GAAG;YACzB,GAAG,EAAE,gBAAgB,CAAC,GAAG;AAC5B,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KACpC,CAAA;IACL,OAAC,UAAA,CAAA;AAAD,CAAC,EAAA;;;;"}
1
+ {"version":3,"file":"JoseHeader.js","sources":["../../src/crypto/JoseHeader.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAAA;;;AAGG;MAWU,UAAU,CAAA;AAKnB,IAAA,WAAA,CAAY,OAA0B,EAAA;AAClC,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;AACvB,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;AACvB,QAAA,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;KAC1B;AAED;;;;;;;AAOG;IACH,OAAO,kBAAkB,CAAC,gBAAmC,EAAA;;AAEzD,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE;AACvB,YAAA,MAAM,eAAe,CAAC,qBAAqB,EAAE,CAAC;AACjD,SAAA;;AAGD,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE;AACvB,YAAA,MAAM,eAAe,CAAC,qBAAqB,EAAE,CAAC;AACjD,SAAA;AAED,QAAA,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC;;AAE7B,YAAA,GAAG,EAAE,gBAAgB,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG;YAC1C,GAAG,EAAE,gBAAgB,CAAC,GAAG;YACzB,GAAG,EAAE,gBAAgB,CAAC,GAAG;AAC5B,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KACpC;AACJ;;;;"}
@@ -1,58 +1,58 @@
1
- import { ICrypto, SignedHttpRequestParameters } from "./ICrypto";
2
- import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
3
- /**
4
- * See eSTS docs for more info.
5
- * - A kid element, with the value containing an RFC 7638-compliant JWK thumbprint that is base64 encoded.
6
- * - xms_ksl element, representing the storage location of the key's secret component on the client device. One of two values:
7
- * - sw: software storage
8
- * - uhw: hardware storage
9
- */
10
- declare type ReqCnf = {
11
- kid: string;
12
- xms_ksl: KeyLocation;
13
- };
14
- export declare type ReqCnfData = {
15
- kid: string;
16
- reqCnfString: string;
17
- reqCnfHash: string;
18
- };
19
- declare enum KeyLocation {
20
- SW = "sw",
21
- UHW = "uhw"
22
- }
23
- export declare class PopTokenGenerator {
24
- private cryptoUtils;
25
- private performanceClient?;
26
- constructor(cryptoUtils: ICrypto, performanceClient?: IPerformanceClient);
27
- /**
28
- * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
29
- * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
30
- * @param request
31
- * @returns
32
- */
33
- generateCnf(request: SignedHttpRequestParameters): Promise<ReqCnfData>;
34
- /**
35
- * Generates key_id for a SHR token request
36
- * @param request
37
- * @returns
38
- */
39
- generateKid(request: SignedHttpRequestParameters): Promise<ReqCnf>;
40
- /**
41
- * Signs the POP access_token with the local generated key-pair
42
- * @param accessToken
43
- * @param request
44
- * @returns
45
- */
46
- signPopToken(accessToken: string, keyId: string, request: SignedHttpRequestParameters): Promise<string>;
47
- /**
48
- * Utility function to generate the signed JWT for an access_token
49
- * @param payload
50
- * @param kid
51
- * @param request
52
- * @param claims
53
- * @returns
54
- */
55
- signPayload(payload: string, keyId: string, request: SignedHttpRequestParameters, claims?: object): Promise<string>;
56
- }
57
- export {};
1
+ import { ICrypto, SignedHttpRequestParameters } from "./ICrypto";
2
+ import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
3
+ /**
4
+ * See eSTS docs for more info.
5
+ * - A kid element, with the value containing an RFC 7638-compliant JWK thumbprint that is base64 encoded.
6
+ * - xms_ksl element, representing the storage location of the key's secret component on the client device. One of two values:
7
+ * - sw: software storage
8
+ * - uhw: hardware storage
9
+ */
10
+ type ReqCnf = {
11
+ kid: string;
12
+ xms_ksl: KeyLocation;
13
+ };
14
+ export type ReqCnfData = {
15
+ kid: string;
16
+ reqCnfString: string;
17
+ reqCnfHash: string;
18
+ };
19
+ declare enum KeyLocation {
20
+ SW = "sw",
21
+ UHW = "uhw"
22
+ }
23
+ export declare class PopTokenGenerator {
24
+ private cryptoUtils;
25
+ private performanceClient?;
26
+ constructor(cryptoUtils: ICrypto, performanceClient?: IPerformanceClient);
27
+ /**
28
+ * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
29
+ * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
30
+ * @param request
31
+ * @returns
32
+ */
33
+ generateCnf(request: SignedHttpRequestParameters): Promise<ReqCnfData>;
34
+ /**
35
+ * Generates key_id for a SHR token request
36
+ * @param request
37
+ * @returns
38
+ */
39
+ generateKid(request: SignedHttpRequestParameters): Promise<ReqCnf>;
40
+ /**
41
+ * Signs the POP access_token with the local generated key-pair
42
+ * @param accessToken
43
+ * @param request
44
+ * @returns
45
+ */
46
+ signPopToken(accessToken: string, keyId: string, request: SignedHttpRequestParameters): Promise<string>;
47
+ /**
48
+ * Utility function to generate the signed JWT for an access_token
49
+ * @param payload
50
+ * @param kid
51
+ * @param request
52
+ * @param claims
53
+ * @returns
54
+ */
55
+ signPayload(payload: string, keyId: string, request: SignedHttpRequestParameters, claims?: object): Promise<string>;
56
+ }
57
+ export {};
58
58
  //# sourceMappingURL=PopTokenGenerator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PopTokenGenerator.d.ts","sourceRoot":"","sources":["../../src/crypto/PopTokenGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAGjF;;;;;;GAMG;AACH,aAAK,MAAM,GAAG;IACV,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,WAAW,CAAC;CACxB,CAAC;AAEF,oBAAY,UAAU,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,aAAK,WAAW;IACZ,EAAE,OAAO;IACT,GAAG,QAAQ;CACd;AAED,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,WAAW,CAAU;IAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAqB;gBAEnC,WAAW,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,kBAAkB;IAKxE;;;;;OAKG;IACG,WAAW,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,UAAU,CAAC;IAc5E;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC;IAWxE;;;;;OAKG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7G;;;;;;;OAOG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAmB5H"}
1
+ {"version":3,"file":"PopTokenGenerator.d.ts","sourceRoot":"","sources":["../../src/crypto/PopTokenGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAGjF;;;;;;GAMG;AACH,KAAK,MAAM,GAAG;IACV,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,WAAW,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,aAAK,WAAW;IACZ,EAAE,OAAO;IACT,GAAG,QAAQ;CACd;AAED,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,WAAW,CAAU;IAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAqB;gBAEnC,WAAW,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,kBAAkB;IAKxE;;;;;OAKG;IACG,WAAW,CACb,OAAO,EAAE,2BAA2B,GACrC,OAAO,CAAC,UAAU,CAAC;IAsBtB;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBxE;;;;;OAKG;IACG,YAAY,CACd,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,2BAA2B,GACrC,OAAO,CAAC,MAAM,CAAC;IAIlB;;;;;;;OAOG;IACG,WAAW,CACb,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,2BAA2B,EACpC,MAAM,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC;CA+BrB"}
@@ -1,116 +1,92 @@
1
- /*! @azure/msal-common v13.0.0 2023-05-01 */
1
+ /*! @azure/msal-common v14.0.0-alpha.2 2023-05-17 */
2
2
  'use strict';
3
- import { __awaiter, __generator, __assign } from '../_virtual/_tslib.js';
4
3
  import { TimeUtils } from '../utils/TimeUtils.js';
5
4
  import { UrlString } from '../url/UrlString.js';
6
5
  import { PerformanceEvents } from '../telemetry/performance/PerformanceEvent.js';
7
6
 
8
- /*
9
- * Copyright (c) Microsoft Corporation. All rights reserved.
10
- * Licensed under the MIT License.
11
- */
12
- var KeyLocation;
13
- (function (KeyLocation) {
14
- KeyLocation["SW"] = "sw";
15
- KeyLocation["UHW"] = "uhw";
16
- })(KeyLocation || (KeyLocation = {}));
17
- var PopTokenGenerator = /** @class */ (function () {
18
- function PopTokenGenerator(cryptoUtils, performanceClient) {
19
- this.cryptoUtils = cryptoUtils;
20
- this.performanceClient = performanceClient;
21
- }
22
- /**
23
- * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
24
- * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
25
- * @param request
26
- * @returns
27
- */
28
- PopTokenGenerator.prototype.generateCnf = function (request) {
29
- var _a, _b;
30
- return __awaiter(this, void 0, void 0, function () {
31
- var reqCnf, reqCnfString, _c;
32
- return __generator(this, function (_d) {
33
- switch (_d.label) {
34
- case 0:
35
- (_a = this.performanceClient) === null || _a === void 0 ? void 0 : _a.addQueueMeasurement(PerformanceEvents.PopTokenGenerateCnf, request.correlationId);
36
- (_b = this.performanceClient) === null || _b === void 0 ? void 0 : _b.setPreQueueTime(PerformanceEvents.PopTokenGenerateKid, request.correlationId);
37
- return [4 /*yield*/, this.generateKid(request)];
38
- case 1:
39
- reqCnf = _d.sent();
40
- reqCnfString = this.cryptoUtils.base64Encode(JSON.stringify(reqCnf));
41
- _c = {
42
- kid: reqCnf.kid,
43
- reqCnfString: reqCnfString
44
- };
45
- return [4 /*yield*/, this.cryptoUtils.hashString(reqCnfString)];
46
- case 2: return [2 /*return*/, (_c.reqCnfHash = _d.sent(),
47
- _c)];
48
- }
49
- });
50
- });
51
- };
52
- /**
53
- * Generates key_id for a SHR token request
54
- * @param request
55
- * @returns
56
- */
57
- PopTokenGenerator.prototype.generateKid = function (request) {
58
- var _a;
59
- return __awaiter(this, void 0, void 0, function () {
60
- var kidThumbprint;
61
- return __generator(this, function (_b) {
62
- switch (_b.label) {
63
- case 0:
64
- (_a = this.performanceClient) === null || _a === void 0 ? void 0 : _a.addQueueMeasurement(PerformanceEvents.PopTokenGenerateKid, request.correlationId);
65
- return [4 /*yield*/, this.cryptoUtils.getPublicKeyThumbprint(request)];
66
- case 1:
67
- kidThumbprint = _b.sent();
68
- return [2 /*return*/, {
69
- kid: kidThumbprint,
70
- xms_ksl: KeyLocation.SW
71
- }];
72
- }
73
- });
74
- });
75
- };
76
- /**
77
- * Signs the POP access_token with the local generated key-pair
78
- * @param accessToken
79
- * @param request
80
- * @returns
81
- */
82
- PopTokenGenerator.prototype.signPopToken = function (accessToken, keyId, request) {
83
- return __awaiter(this, void 0, void 0, function () {
84
- return __generator(this, function (_a) {
85
- return [2 /*return*/, this.signPayload(accessToken, keyId, request)];
86
- });
87
- });
88
- };
89
- /**
90
- * Utility function to generate the signed JWT for an access_token
91
- * @param payload
92
- * @param kid
93
- * @param request
94
- * @param claims
95
- * @returns
96
- */
97
- PopTokenGenerator.prototype.signPayload = function (payload, keyId, request, claims) {
98
- return __awaiter(this, void 0, void 0, function () {
99
- var resourceRequestMethod, resourceRequestUri, shrClaims, shrNonce, resourceUrlString, resourceUrlComponents;
100
- return __generator(this, function (_a) {
101
- switch (_a.label) {
102
- case 0:
103
- resourceRequestMethod = request.resourceRequestMethod, resourceRequestUri = request.resourceRequestUri, shrClaims = request.shrClaims, shrNonce = request.shrNonce;
104
- resourceUrlString = (resourceRequestUri) ? new UrlString(resourceRequestUri) : undefined;
105
- resourceUrlComponents = resourceUrlString === null || resourceUrlString === void 0 ? void 0 : resourceUrlString.getUrlComponents();
106
- return [4 /*yield*/, this.cryptoUtils.signJwt(__assign({ at: payload, ts: TimeUtils.nowSeconds(), m: resourceRequestMethod === null || resourceRequestMethod === void 0 ? void 0 : resourceRequestMethod.toUpperCase(), u: resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.HostNameAndPort, nonce: shrNonce || this.cryptoUtils.createNewGuid(), p: resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.AbsolutePath, q: (resourceUrlComponents === null || resourceUrlComponents === void 0 ? void 0 : resourceUrlComponents.QueryString) ? [[], resourceUrlComponents.QueryString] : undefined, client_claims: shrClaims || undefined }, claims), keyId, request.correlationId)];
107
- case 1: return [2 /*return*/, _a.sent()];
108
- }
109
- });
110
- });
111
- };
112
- return PopTokenGenerator;
113
- }());
7
+ /*
8
+ * Copyright (c) Microsoft Corporation. All rights reserved.
9
+ * Licensed under the MIT License.
10
+ */
11
+ var KeyLocation;
12
+ (function (KeyLocation) {
13
+ KeyLocation["SW"] = "sw";
14
+ KeyLocation["UHW"] = "uhw";
15
+ })(KeyLocation || (KeyLocation = {}));
16
+ class PopTokenGenerator {
17
+ constructor(cryptoUtils, performanceClient) {
18
+ this.cryptoUtils = cryptoUtils;
19
+ this.performanceClient = performanceClient;
20
+ }
21
+ /**
22
+ * Generates the req_cnf validated at the RP in the POP protocol for SHR parameters
23
+ * and returns an object containing the keyid, the full req_cnf string and the req_cnf string hash
24
+ * @param request
25
+ * @returns
26
+ */
27
+ async generateCnf(request) {
28
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.PopTokenGenerateCnf, request.correlationId);
29
+ this.performanceClient?.setPreQueueTime(PerformanceEvents.PopTokenGenerateKid, request.correlationId);
30
+ const reqCnf = await this.generateKid(request);
31
+ const reqCnfString = this.cryptoUtils.base64Encode(JSON.stringify(reqCnf));
32
+ return {
33
+ kid: reqCnf.kid,
34
+ reqCnfString,
35
+ reqCnfHash: await this.cryptoUtils.hashString(reqCnfString),
36
+ };
37
+ }
38
+ /**
39
+ * Generates key_id for a SHR token request
40
+ * @param request
41
+ * @returns
42
+ */
43
+ async generateKid(request) {
44
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.PopTokenGenerateKid, request.correlationId);
45
+ const kidThumbprint = await this.cryptoUtils.getPublicKeyThumbprint(request);
46
+ return {
47
+ kid: kidThumbprint,
48
+ xms_ksl: KeyLocation.SW,
49
+ };
50
+ }
51
+ /**
52
+ * Signs the POP access_token with the local generated key-pair
53
+ * @param accessToken
54
+ * @param request
55
+ * @returns
56
+ */
57
+ async signPopToken(accessToken, keyId, request) {
58
+ return this.signPayload(accessToken, keyId, request);
59
+ }
60
+ /**
61
+ * Utility function to generate the signed JWT for an access_token
62
+ * @param payload
63
+ * @param kid
64
+ * @param request
65
+ * @param claims
66
+ * @returns
67
+ */
68
+ async signPayload(payload, keyId, request, claims) {
69
+ // Deconstruct request to extract SHR parameters
70
+ const { resourceRequestMethod, resourceRequestUri, shrClaims, shrNonce, } = request;
71
+ const resourceUrlString = resourceRequestUri
72
+ ? new UrlString(resourceRequestUri)
73
+ : undefined;
74
+ const resourceUrlComponents = resourceUrlString?.getUrlComponents();
75
+ return await this.cryptoUtils.signJwt({
76
+ at: payload,
77
+ ts: TimeUtils.nowSeconds(),
78
+ m: resourceRequestMethod?.toUpperCase(),
79
+ u: resourceUrlComponents?.HostNameAndPort,
80
+ nonce: shrNonce || this.cryptoUtils.createNewGuid(),
81
+ p: resourceUrlComponents?.AbsolutePath,
82
+ q: resourceUrlComponents?.QueryString
83
+ ? [[], resourceUrlComponents.QueryString]
84
+ : undefined,
85
+ client_claims: shrClaims || undefined,
86
+ ...claims,
87
+ }, keyId, request.correlationId);
88
+ }
89
+ }
114
90
 
115
91
  export { PopTokenGenerator };
116
92
  //# sourceMappingURL=PopTokenGenerator.js.map