@azure/identity 4.13.0 → 4.13.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 (540) hide show
  1. package/dist/browser/constants.d.ts +1 -1
  2. package/dist/browser/constants.js +1 -1
  3. package/dist/browser/constants.js.map +1 -1
  4. package/dist/browser/credentials/{authorizationCodeCredential.d.ts → authorizationCodeCredential-browser.d.mts} +2 -2
  5. package/dist/browser/credentials/authorizationCodeCredential-browser.d.mts.map +1 -1
  6. package/dist/browser/credentials/{authorizationCodeCredential.js → authorizationCodeCredential-browser.mjs} +1 -1
  7. package/dist/browser/credentials/authorizationCodeCredential-browser.mjs.map +1 -1
  8. package/dist/browser/credentials/authorizationCodeCredentialOptions.d.ts.map +1 -1
  9. package/dist/browser/credentials/authorizationCodeCredentialOptions.js.map +1 -1
  10. package/dist/browser/credentials/azureCliCredential-browser.d.mts +14 -0
  11. package/dist/browser/credentials/azureCliCredential-browser.d.mts.map +1 -1
  12. package/dist/browser/credentials/{azureCliCredential.js → azureCliCredential-browser.mjs} +2 -2
  13. package/dist/browser/credentials/azureCliCredential-browser.mjs.map +1 -1
  14. package/dist/browser/credentials/azureDeveloperCliCredential-browser.d.mts +14 -0
  15. package/dist/browser/credentials/azureDeveloperCliCredential-browser.d.mts.map +1 -1
  16. package/dist/browser/credentials/{azureDeveloperCliCredential.js → azureDeveloperCliCredential-browser.mjs} +2 -2
  17. package/dist/browser/credentials/azureDeveloperCliCredential-browser.mjs.map +1 -1
  18. package/dist/browser/credentials/azurePipelinesCredential-browser.d.mts +14 -0
  19. package/dist/browser/credentials/azurePipelinesCredential-browser.d.mts.map +1 -1
  20. package/dist/browser/credentials/{azurePipelinesCredential.js → azurePipelinesCredential-browser.mjs} +2 -2
  21. package/dist/browser/credentials/azurePipelinesCredential-browser.mjs.map +1 -1
  22. package/dist/browser/credentials/azurePipelinesCredentialOptions.d.ts.map +1 -1
  23. package/dist/browser/credentials/azurePipelinesCredentialOptions.js.map +1 -1
  24. package/dist/browser/credentials/azurePowerShellCredential-browser.d.mts +13 -0
  25. package/dist/browser/credentials/azurePowerShellCredential-browser.d.mts.map +1 -1
  26. package/dist/browser/credentials/{azurePowerShellCredential.js → azurePowerShellCredential-browser.mjs} +2 -2
  27. package/dist/browser/credentials/azurePowerShellCredential-browser.mjs.map +1 -1
  28. package/dist/browser/credentials/clientAssertionCredential-browser.d.mts +13 -0
  29. package/dist/browser/credentials/clientAssertionCredential-browser.d.mts.map +1 -1
  30. package/dist/browser/credentials/{clientAssertionCredential.js → clientAssertionCredential-browser.mjs} +2 -2
  31. package/dist/browser/credentials/clientAssertionCredential-browser.mjs.map +1 -1
  32. package/dist/browser/credentials/clientAssertionCredentialOptions.d.ts.map +1 -1
  33. package/dist/browser/credentials/clientAssertionCredentialOptions.js.map +1 -1
  34. package/dist/browser/credentials/clientCertificateCredential-browser.d.mts +15 -0
  35. package/dist/browser/credentials/clientCertificateCredential-browser.d.mts.map +1 -1
  36. package/dist/browser/credentials/{clientCertificateCredential.js → clientCertificateCredential-browser.mjs} +2 -2
  37. package/dist/browser/credentials/clientCertificateCredential-browser.mjs.map +1 -1
  38. package/dist/browser/credentials/clientCertificateCredentialModels.d.ts.map +1 -1
  39. package/dist/browser/credentials/clientCertificateCredentialModels.js.map +1 -1
  40. package/dist/browser/credentials/clientCertificateCredentialOptions.d.ts.map +1 -1
  41. package/dist/browser/credentials/clientCertificateCredentialOptions.js.map +1 -1
  42. package/dist/browser/credentials/clientSecretCredentialOptions.d.ts.map +1 -1
  43. package/dist/browser/credentials/clientSecretCredentialOptions.js.map +1 -1
  44. package/dist/browser/credentials/{defaultAzureCredential.d.ts → defaultAzureCredential-browser.d.mts} +2 -2
  45. package/dist/browser/credentials/defaultAzureCredential-browser.d.mts.map +1 -1
  46. package/dist/browser/credentials/{defaultAzureCredential.js → defaultAzureCredential-browser.mjs} +1 -1
  47. package/dist/browser/credentials/defaultAzureCredential-browser.mjs.map +1 -1
  48. package/dist/browser/credentials/defaultAzureCredentialOptions.d.ts.map +1 -1
  49. package/dist/browser/credentials/defaultAzureCredentialOptions.js.map +1 -1
  50. package/dist/browser/credentials/deviceCodeCredential-browser.d.mts +14 -0
  51. package/dist/browser/credentials/deviceCodeCredential-browser.d.mts.map +1 -1
  52. package/dist/browser/credentials/{deviceCodeCredential.js → deviceCodeCredential-browser.mjs} +2 -2
  53. package/dist/browser/credentials/deviceCodeCredential-browser.mjs.map +1 -1
  54. package/dist/browser/credentials/deviceCodeCredentialOptions.d.ts.map +1 -1
  55. package/dist/browser/credentials/deviceCodeCredentialOptions.js.map +1 -1
  56. package/dist/browser/credentials/environmentCredential-browser.d.mts +14 -0
  57. package/dist/browser/credentials/environmentCredential-browser.d.mts.map +1 -1
  58. package/dist/browser/credentials/{environmentCredential.js → environmentCredential-browser.mjs} +2 -2
  59. package/dist/browser/credentials/environmentCredential-browser.mjs.map +1 -1
  60. package/dist/browser/credentials/environmentCredentialOptions.d.ts.map +1 -1
  61. package/dist/browser/credentials/environmentCredentialOptions.js.map +1 -1
  62. package/dist/browser/credentials/interactiveBrowserCredentialOptions.d.ts.map +1 -1
  63. package/dist/browser/credentials/interactiveBrowserCredentialOptions.js.map +1 -1
  64. package/dist/browser/credentials/interactiveCredentialOptions.d.ts.map +1 -1
  65. package/dist/browser/credentials/interactiveCredentialOptions.js.map +1 -1
  66. package/dist/browser/credentials/managedIdentityCredential/index-browser.d.mts +11 -0
  67. package/dist/browser/credentials/managedIdentityCredential/index-browser.d.mts.map +1 -1
  68. package/dist/browser/credentials/managedIdentityCredential/{index.js → index-browser.mjs} +2 -2
  69. package/dist/browser/credentials/managedIdentityCredential/index-browser.mjs.map +1 -1
  70. package/dist/browser/credentials/onBehalfOfCredential-browser.d.mts +13 -0
  71. package/dist/browser/credentials/onBehalfOfCredential-browser.d.mts.map +1 -1
  72. package/dist/browser/credentials/{onBehalfOfCredential.js → onBehalfOfCredential-browser.mjs} +2 -2
  73. package/dist/browser/credentials/onBehalfOfCredential-browser.mjs.map +1 -1
  74. package/dist/browser/credentials/usernamePasswordCredential-browser.mjs.map +1 -1
  75. package/dist/browser/credentials/usernamePasswordCredentialOptions.d.ts.map +1 -1
  76. package/dist/browser/credentials/usernamePasswordCredentialOptions.js.map +1 -1
  77. package/dist/browser/credentials/{visualStudioCodeCredential.d.ts → visualStudioCodeCredential-browser.d.mts} +4 -3
  78. package/dist/browser/credentials/visualStudioCodeCredential-browser.d.mts.map +1 -1
  79. package/dist/browser/credentials/{visualStudioCodeCredential.js → visualStudioCodeCredential-browser.mjs} +2 -2
  80. package/dist/browser/credentials/visualStudioCodeCredential-browser.mjs.map +1 -1
  81. package/dist/browser/credentials/{workloadIdentityCredential.d.ts → workloadIdentityCredential-browser.d.mts} +4 -3
  82. package/dist/browser/credentials/workloadIdentityCredential-browser.d.mts.map +1 -1
  83. package/dist/browser/credentials/{workloadIdentityCredential.js → workloadIdentityCredential-browser.mjs} +2 -2
  84. package/dist/browser/credentials/workloadIdentityCredential-browser.mjs.map +1 -1
  85. package/dist/browser/credentials/workloadIdentityCredentialOptions.d.ts.map +1 -1
  86. package/dist/browser/credentials/workloadIdentityCredentialOptions.js.map +1 -1
  87. package/dist/browser/index.d.ts +51 -51
  88. package/dist/browser/index.d.ts.map +1 -1
  89. package/dist/browser/index.js +19 -19
  90. package/dist/browser/index.js.map +1 -1
  91. package/dist/browser/msal/browserFlows/msalBrowserCommon.d.ts.map +1 -1
  92. package/dist/browser/msal/browserFlows/msalBrowserCommon.js +4 -4
  93. package/dist/browser/msal/browserFlows/msalBrowserCommon.js.map +1 -1
  94. package/dist/browser/msal/utils.d.ts +1 -1
  95. package/dist/browser/msal/utils.d.ts.map +1 -1
  96. package/dist/browser/msal/utils.js +1 -1
  97. package/dist/browser/msal/utils.js.map +1 -1
  98. package/dist/browser/util/tenantIdUtils.d.ts +1 -1
  99. package/dist/browser/util/tenantIdUtils.d.ts.map +1 -1
  100. package/dist/browser/util/tenantIdUtils.js +1 -1
  101. package/dist/browser/util/tenantIdUtils.js.map +1 -1
  102. package/dist/commonjs/client/identityClient.js +263 -252
  103. package/dist/commonjs/client/identityClient.js.map +7 -1
  104. package/dist/commonjs/constants.d.ts +1 -1
  105. package/dist/commonjs/constants.js +61 -78
  106. package/dist/commonjs/constants.js.map +7 -1
  107. package/dist/commonjs/credentials/authorityValidationOptions.js +16 -5
  108. package/dist/commonjs/credentials/authorityValidationOptions.js.map +7 -1
  109. package/dist/commonjs/credentials/authorizationCodeCredential.js +99 -75
  110. package/dist/commonjs/credentials/authorizationCodeCredential.js.map +7 -1
  111. package/dist/commonjs/credentials/authorizationCodeCredentialOptions.d.ts.map +1 -1
  112. package/dist/commonjs/credentials/authorizationCodeCredentialOptions.js +16 -5
  113. package/dist/commonjs/credentials/authorizationCodeCredentialOptions.js.map +7 -1
  114. package/dist/commonjs/credentials/azureCliCredential.d.ts.map +1 -1
  115. package/dist/commonjs/credentials/azureCliCredential.js +228 -214
  116. package/dist/commonjs/credentials/azureCliCredential.js.map +7 -1
  117. package/dist/commonjs/credentials/azureCliCredentialOptions.js +16 -5
  118. package/dist/commonjs/credentials/azureCliCredentialOptions.js.map +7 -1
  119. package/dist/commonjs/credentials/azureDeveloperCliCredential.d.ts.map +1 -1
  120. package/dist/commonjs/credentials/azureDeveloperCliCredential.js +192 -202
  121. package/dist/commonjs/credentials/azureDeveloperCliCredential.js.map +7 -1
  122. package/dist/commonjs/credentials/azureDeveloperCliCredentialOptions.js +16 -5
  123. package/dist/commonjs/credentials/azureDeveloperCliCredentialOptions.js.map +7 -1
  124. package/dist/commonjs/credentials/azurePipelinesCredential.js +173 -135
  125. package/dist/commonjs/credentials/azurePipelinesCredential.js.map +7 -1
  126. package/dist/commonjs/credentials/azurePipelinesCredentialOptions.d.ts.map +1 -1
  127. package/dist/commonjs/credentials/azurePipelinesCredentialOptions.js +16 -5
  128. package/dist/commonjs/credentials/azurePipelinesCredentialOptions.js.map +7 -1
  129. package/dist/commonjs/credentials/azurePowerShellCredential.d.ts +10 -0
  130. package/dist/commonjs/credentials/azurePowerShellCredential.d.ts.map +1 -1
  131. package/dist/commonjs/credentials/azurePowerShellCredential.js +229 -208
  132. package/dist/commonjs/credentials/azurePowerShellCredential.js.map +7 -1
  133. package/dist/commonjs/credentials/azurePowerShellCredentialOptions.js +16 -5
  134. package/dist/commonjs/credentials/azurePowerShellCredentialOptions.js.map +7 -1
  135. package/dist/commonjs/credentials/brokerAuthOptions.js +16 -3
  136. package/dist/commonjs/credentials/brokerAuthOptions.js.map +7 -1
  137. package/dist/commonjs/credentials/brokerCredential.d.ts +2 -2
  138. package/dist/commonjs/credentials/brokerCredential.d.ts.map +1 -1
  139. package/dist/commonjs/credentials/brokerCredential.js +104 -71
  140. package/dist/commonjs/credentials/brokerCredential.js.map +7 -1
  141. package/dist/commonjs/credentials/browserCustomizationOptions.js +16 -5
  142. package/dist/commonjs/credentials/browserCustomizationOptions.js.map +7 -1
  143. package/dist/commonjs/credentials/chainedTokenCredential.js +113 -93
  144. package/dist/commonjs/credentials/chainedTokenCredential.js.map +7 -1
  145. package/dist/commonjs/credentials/clientAssertionCredential.js +102 -64
  146. package/dist/commonjs/credentials/clientAssertionCredential.js.map +7 -1
  147. package/dist/commonjs/credentials/clientAssertionCredentialOptions.d.ts.map +1 -1
  148. package/dist/commonjs/credentials/clientAssertionCredentialOptions.js +16 -5
  149. package/dist/commonjs/credentials/clientAssertionCredentialOptions.js.map +7 -1
  150. package/dist/commonjs/credentials/clientCertificateCredential.js +139 -134
  151. package/dist/commonjs/credentials/clientCertificateCredential.js.map +7 -1
  152. package/dist/commonjs/credentials/clientCertificateCredentialModels.d.ts.map +1 -1
  153. package/dist/commonjs/credentials/clientCertificateCredentialModels.js +16 -5
  154. package/dist/commonjs/credentials/clientCertificateCredentialModels.js.map +7 -1
  155. package/dist/commonjs/credentials/clientCertificateCredentialOptions.d.ts.map +1 -1
  156. package/dist/commonjs/credentials/clientCertificateCredentialOptions.js +16 -5
  157. package/dist/commonjs/credentials/clientCertificateCredentialOptions.js.map +7 -1
  158. package/dist/commonjs/credentials/clientSecretCredential.js +97 -68
  159. package/dist/commonjs/credentials/clientSecretCredential.js.map +7 -1
  160. package/dist/commonjs/credentials/clientSecretCredentialOptions.d.ts.map +1 -1
  161. package/dist/commonjs/credentials/clientSecretCredentialOptions.js +16 -5
  162. package/dist/commonjs/credentials/clientSecretCredentialOptions.js.map +7 -1
  163. package/dist/commonjs/credentials/credentialPersistenceOptions.js +16 -5
  164. package/dist/commonjs/credentials/credentialPersistenceOptions.js.map +7 -1
  165. package/dist/commonjs/credentials/defaultAzureCredential.js +121 -159
  166. package/dist/commonjs/credentials/defaultAzureCredential.js.map +7 -1
  167. package/dist/commonjs/credentials/defaultAzureCredentialFunctions.js +110 -140
  168. package/dist/commonjs/credentials/defaultAzureCredentialFunctions.js.map +7 -1
  169. package/dist/commonjs/credentials/defaultAzureCredentialOptions.d.ts.map +1 -1
  170. package/dist/commonjs/credentials/defaultAzureCredentialOptions.js +16 -5
  171. package/dist/commonjs/credentials/defaultAzureCredentialOptions.js.map +7 -1
  172. package/dist/commonjs/credentials/deviceCodeCredential.js +133 -104
  173. package/dist/commonjs/credentials/deviceCodeCredential.js.map +7 -1
  174. package/dist/commonjs/credentials/deviceCodeCredentialOptions.d.ts.map +1 -1
  175. package/dist/commonjs/credentials/deviceCodeCredentialOptions.js +16 -5
  176. package/dist/commonjs/credentials/deviceCodeCredentialOptions.js.map +7 -1
  177. package/dist/commonjs/credentials/environmentCredential.d.ts.map +1 -1
  178. package/dist/commonjs/credentials/environmentCredential.js +157 -123
  179. package/dist/commonjs/credentials/environmentCredential.js.map +7 -1
  180. package/dist/commonjs/credentials/environmentCredentialOptions.d.ts.map +1 -1
  181. package/dist/commonjs/credentials/environmentCredentialOptions.js +16 -5
  182. package/dist/commonjs/credentials/environmentCredentialOptions.js.map +7 -1
  183. package/dist/commonjs/credentials/interactiveBrowserCredential.js +145 -108
  184. package/dist/commonjs/credentials/interactiveBrowserCredential.js.map +7 -1
  185. package/dist/commonjs/credentials/interactiveBrowserCredentialOptions.d.ts.map +1 -1
  186. package/dist/commonjs/credentials/interactiveBrowserCredentialOptions.js +16 -5
  187. package/dist/commonjs/credentials/interactiveBrowserCredentialOptions.js.map +7 -1
  188. package/dist/commonjs/credentials/interactiveCredentialOptions.d.ts.map +1 -1
  189. package/dist/commonjs/credentials/interactiveCredentialOptions.js +16 -5
  190. package/dist/commonjs/credentials/interactiveCredentialOptions.js.map +7 -1
  191. package/dist/commonjs/credentials/managedIdentityCredential/imdsMsi.js +92 -91
  192. package/dist/commonjs/credentials/managedIdentityCredential/imdsMsi.js.map +7 -1
  193. package/dist/commonjs/credentials/managedIdentityCredential/imdsRetryPolicy.js +51 -44
  194. package/dist/commonjs/credentials/managedIdentityCredential/imdsRetryPolicy.js.map +7 -1
  195. package/dist/commonjs/credentials/managedIdentityCredential/index.js +256 -242
  196. package/dist/commonjs/credentials/managedIdentityCredential/index.js.map +7 -1
  197. package/dist/commonjs/credentials/managedIdentityCredential/models.js +16 -5
  198. package/dist/commonjs/credentials/managedIdentityCredential/models.js.map +7 -1
  199. package/dist/commonjs/credentials/managedIdentityCredential/options.js +16 -5
  200. package/dist/commonjs/credentials/managedIdentityCredential/options.js.map +7 -1
  201. package/dist/commonjs/credentials/managedIdentityCredential/tokenExchangeMsi.js +56 -39
  202. package/dist/commonjs/credentials/managedIdentityCredential/tokenExchangeMsi.js.map +7 -1
  203. package/dist/commonjs/credentials/managedIdentityCredential/utils.js +79 -75
  204. package/dist/commonjs/credentials/managedIdentityCredential/utils.js.map +7 -1
  205. package/dist/commonjs/credentials/multiTenantTokenCredentialOptions.js +16 -5
  206. package/dist/commonjs/credentials/multiTenantTokenCredentialOptions.js.map +7 -1
  207. package/dist/commonjs/credentials/onBehalfOfCredential.js +169 -127
  208. package/dist/commonjs/credentials/onBehalfOfCredential.js.map +7 -1
  209. package/dist/commonjs/credentials/onBehalfOfCredentialOptions.js +16 -5
  210. package/dist/commonjs/credentials/onBehalfOfCredentialOptions.js.map +7 -1
  211. package/dist/commonjs/credentials/usernamePasswordCredential.js +113 -76
  212. package/dist/commonjs/credentials/usernamePasswordCredential.js.map +7 -1
  213. package/dist/commonjs/credentials/usernamePasswordCredentialOptions.d.ts.map +1 -1
  214. package/dist/commonjs/credentials/usernamePasswordCredentialOptions.js +16 -5
  215. package/dist/commonjs/credentials/usernamePasswordCredentialOptions.js.map +7 -1
  216. package/dist/commonjs/credentials/visualStudioCodeCredential.d.ts.map +1 -1
  217. package/dist/commonjs/credentials/visualStudioCodeCredential.js +144 -132
  218. package/dist/commonjs/credentials/visualStudioCodeCredential.js.map +7 -1
  219. package/dist/commonjs/credentials/visualStudioCodeCredentialOptions.js +16 -5
  220. package/dist/commonjs/credentials/visualStudioCodeCredentialOptions.js.map +7 -1
  221. package/dist/commonjs/credentials/workloadIdentityCredential.js +123 -109
  222. package/dist/commonjs/credentials/workloadIdentityCredential.js.map +7 -1
  223. package/dist/commonjs/credentials/workloadIdentityCredentialOptions.d.ts.map +1 -1
  224. package/dist/commonjs/credentials/workloadIdentityCredentialOptions.js +16 -5
  225. package/dist/commonjs/credentials/workloadIdentityCredentialOptions.js.map +7 -1
  226. package/dist/commonjs/errors.js +131 -132
  227. package/dist/commonjs/errors.js.map +7 -1
  228. package/dist/commonjs/index.d.ts +33 -33
  229. package/dist/commonjs/index.d.ts.map +1 -1
  230. package/dist/commonjs/index.js +115 -67
  231. package/dist/commonjs/index.js.map +7 -1
  232. package/dist/commonjs/msal/msal.js +38 -9
  233. package/dist/commonjs/msal/msal.js.map +7 -1
  234. package/dist/commonjs/msal/nodeFlows/brokerOptions.js +16 -3
  235. package/dist/commonjs/msal/nodeFlows/brokerOptions.js.map +7 -1
  236. package/dist/commonjs/msal/nodeFlows/msalClient.js +449 -478
  237. package/dist/commonjs/msal/nodeFlows/msalClient.js.map +7 -1
  238. package/dist/commonjs/msal/nodeFlows/msalPlugins.d.ts.map +1 -1
  239. package/dist/commonjs/msal/nodeFlows/msalPlugins.js +140 -147
  240. package/dist/commonjs/msal/nodeFlows/msalPlugins.js.map +7 -1
  241. package/dist/commonjs/msal/nodeFlows/tokenCachePersistenceOptions.js +16 -5
  242. package/dist/commonjs/msal/nodeFlows/tokenCachePersistenceOptions.js.map +7 -1
  243. package/dist/commonjs/msal/types.js +16 -5
  244. package/dist/commonjs/msal/types.js.map +7 -1
  245. package/dist/commonjs/msal/utils.d.ts.map +1 -1
  246. package/dist/commonjs/msal/utils.js +179 -224
  247. package/dist/commonjs/msal/utils.js.map +7 -1
  248. package/dist/commonjs/plugins/consumer.js +32 -40
  249. package/dist/commonjs/plugins/consumer.js.map +7 -1
  250. package/dist/commonjs/plugins/provider.js +16 -5
  251. package/dist/commonjs/plugins/provider.js.map +7 -1
  252. package/dist/commonjs/regionalAuthority.js +93 -141
  253. package/dist/commonjs/regionalAuthority.js.map +7 -1
  254. package/dist/commonjs/tokenCredentialOptions.js +16 -5
  255. package/dist/commonjs/tokenCredentialOptions.js.map +7 -1
  256. package/dist/commonjs/tokenProvider.js +52 -52
  257. package/dist/commonjs/tokenProvider.js.map +7 -1
  258. package/dist/commonjs/tsdoc-metadata.json +1 -1
  259. package/dist/commonjs/util/identityTokenEndpoint.js +32 -12
  260. package/dist/commonjs/util/identityTokenEndpoint.js.map +7 -1
  261. package/dist/commonjs/util/logging.js +91 -97
  262. package/dist/commonjs/util/logging.js.map +7 -1
  263. package/dist/commonjs/util/processMultiTenantRequest.js +43 -33
  264. package/dist/commonjs/util/processMultiTenantRequest.js.map +7 -1
  265. package/dist/commonjs/util/processUtils.d.ts +14 -3
  266. package/dist/commonjs/util/processUtils.d.ts.map +1 -1
  267. package/dist/commonjs/util/processUtils.js +67 -35
  268. package/dist/commonjs/util/processUtils.js.map +7 -1
  269. package/dist/commonjs/util/scopeUtils.js +39 -28
  270. package/dist/commonjs/util/scopeUtils.js.map +7 -1
  271. package/dist/commonjs/util/subscriptionUtils.js +35 -17
  272. package/dist/commonjs/util/subscriptionUtils.js.map +7 -1
  273. package/dist/commonjs/util/tenantIdUtils.d.ts.map +1 -1
  274. package/dist/commonjs/util/tenantIdUtils.js +61 -45
  275. package/dist/commonjs/util/tenantIdUtils.js.map +7 -1
  276. package/dist/commonjs/util/tracing.js +33 -16
  277. package/dist/commonjs/util/tracing.js.map +7 -1
  278. package/dist/esm/constants.d.ts +1 -1
  279. package/dist/esm/constants.js +1 -1
  280. package/dist/esm/constants.js.map +1 -1
  281. package/dist/esm/credentials/authorizationCodeCredentialOptions.d.ts.map +1 -1
  282. package/dist/esm/credentials/authorizationCodeCredentialOptions.js.map +1 -1
  283. package/dist/esm/credentials/azureCliCredential.d.ts.map +1 -1
  284. package/dist/esm/credentials/azureCliCredential.js +21 -24
  285. package/dist/esm/credentials/azureCliCredential.js.map +1 -1
  286. package/dist/esm/credentials/azureDeveloperCliCredential.d.ts.map +1 -1
  287. package/dist/esm/credentials/azureDeveloperCliCredential.js +16 -24
  288. package/dist/esm/credentials/azureDeveloperCliCredential.js.map +1 -1
  289. package/dist/esm/credentials/azurePipelinesCredential.js.map +1 -1
  290. package/dist/esm/credentials/azurePipelinesCredentialOptions.d.ts.map +1 -1
  291. package/dist/esm/credentials/azurePipelinesCredentialOptions.js.map +1 -1
  292. package/dist/esm/credentials/azurePowerShellCredential.d.ts +10 -0
  293. package/dist/esm/credentials/azurePowerShellCredential.d.ts.map +1 -1
  294. package/dist/esm/credentials/azurePowerShellCredential.js +26 -6
  295. package/dist/esm/credentials/azurePowerShellCredential.js.map +1 -1
  296. package/dist/esm/credentials/brokerCredential.d.ts +2 -2
  297. package/dist/esm/credentials/brokerCredential.d.ts.map +1 -1
  298. package/dist/esm/credentials/brokerCredential.js.map +1 -1
  299. package/dist/esm/credentials/clientAssertionCredentialOptions.d.ts.map +1 -1
  300. package/dist/esm/credentials/clientAssertionCredentialOptions.js.map +1 -1
  301. package/dist/esm/credentials/clientCertificateCredentialModels.d.ts.map +1 -1
  302. package/dist/esm/credentials/clientCertificateCredentialModels.js.map +1 -1
  303. package/dist/esm/credentials/clientCertificateCredentialOptions.d.ts.map +1 -1
  304. package/dist/esm/credentials/clientCertificateCredentialOptions.js.map +1 -1
  305. package/dist/esm/credentials/clientSecretCredentialOptions.d.ts.map +1 -1
  306. package/dist/esm/credentials/clientSecretCredentialOptions.js.map +1 -1
  307. package/dist/esm/credentials/defaultAzureCredential.js.map +1 -1
  308. package/dist/esm/credentials/defaultAzureCredentialFunctions.js.map +1 -1
  309. package/dist/esm/credentials/defaultAzureCredentialOptions.d.ts.map +1 -1
  310. package/dist/esm/credentials/defaultAzureCredentialOptions.js.map +1 -1
  311. package/dist/esm/credentials/deviceCodeCredentialOptions.d.ts.map +1 -1
  312. package/dist/esm/credentials/deviceCodeCredentialOptions.js.map +1 -1
  313. package/dist/esm/credentials/environmentCredential.d.ts.map +1 -1
  314. package/dist/esm/credentials/environmentCredential.js.map +1 -1
  315. package/dist/esm/credentials/environmentCredentialOptions.d.ts.map +1 -1
  316. package/dist/esm/credentials/environmentCredentialOptions.js.map +1 -1
  317. package/dist/esm/credentials/interactiveBrowserCredentialOptions.d.ts.map +1 -1
  318. package/dist/esm/credentials/interactiveBrowserCredentialOptions.js.map +1 -1
  319. package/dist/esm/credentials/interactiveCredentialOptions.d.ts.map +1 -1
  320. package/dist/esm/credentials/interactiveCredentialOptions.js.map +1 -1
  321. package/dist/esm/credentials/managedIdentityCredential/tokenExchangeMsi.js.map +1 -1
  322. package/dist/esm/credentials/usernamePasswordCredentialOptions.d.ts.map +1 -1
  323. package/dist/esm/credentials/usernamePasswordCredentialOptions.js.map +1 -1
  324. package/dist/esm/credentials/visualStudioCodeCredential.d.ts.map +1 -1
  325. package/dist/esm/credentials/visualStudioCodeCredential.js.map +1 -1
  326. package/dist/esm/credentials/workloadIdentityCredential.js.map +1 -1
  327. package/dist/esm/credentials/workloadIdentityCredentialOptions.d.ts.map +1 -1
  328. package/dist/esm/credentials/workloadIdentityCredentialOptions.js.map +1 -1
  329. package/dist/esm/index.d.ts +33 -33
  330. package/dist/esm/index.d.ts.map +1 -1
  331. package/dist/esm/index.js.map +1 -1
  332. package/dist/esm/msal/nodeFlows/msalClient.js +3 -3
  333. package/dist/esm/msal/nodeFlows/msalClient.js.map +1 -1
  334. package/dist/esm/msal/nodeFlows/msalPlugins.d.ts.map +1 -1
  335. package/dist/esm/msal/nodeFlows/msalPlugins.js.map +1 -1
  336. package/dist/esm/msal/utils.d.ts.map +1 -1
  337. package/dist/esm/msal/utils.js.map +1 -1
  338. package/dist/esm/util/processUtils.d.ts +14 -3
  339. package/dist/esm/util/processUtils.d.ts.map +1 -1
  340. package/dist/esm/util/processUtils.js +36 -19
  341. package/dist/esm/util/processUtils.js.map +1 -1
  342. package/dist/esm/util/tenantIdUtils.d.ts.map +1 -1
  343. package/dist/esm/util/tenantIdUtils.js.map +1 -1
  344. package/dist/workerd/constants.d.ts +1 -1
  345. package/dist/workerd/constants.js +1 -1
  346. package/dist/workerd/constants.js.map +1 -1
  347. package/dist/workerd/credentials/authorizationCodeCredentialOptions.d.ts.map +1 -1
  348. package/dist/workerd/credentials/authorizationCodeCredentialOptions.js.map +1 -1
  349. package/dist/workerd/credentials/azureCliCredential.d.ts.map +1 -1
  350. package/dist/workerd/credentials/azureCliCredential.js +21 -24
  351. package/dist/workerd/credentials/azureCliCredential.js.map +1 -1
  352. package/dist/workerd/credentials/azureDeveloperCliCredential.d.ts.map +1 -1
  353. package/dist/workerd/credentials/azureDeveloperCliCredential.js +16 -24
  354. package/dist/workerd/credentials/azureDeveloperCliCredential.js.map +1 -1
  355. package/dist/workerd/credentials/azurePipelinesCredential.js.map +1 -1
  356. package/dist/workerd/credentials/azurePipelinesCredentialOptions.d.ts.map +1 -1
  357. package/dist/workerd/credentials/azurePipelinesCredentialOptions.js.map +1 -1
  358. package/dist/workerd/credentials/azurePowerShellCredential.d.ts +10 -0
  359. package/dist/workerd/credentials/azurePowerShellCredential.d.ts.map +1 -1
  360. package/dist/workerd/credentials/azurePowerShellCredential.js +26 -6
  361. package/dist/workerd/credentials/azurePowerShellCredential.js.map +1 -1
  362. package/dist/workerd/credentials/brokerCredential.d.ts +2 -2
  363. package/dist/workerd/credentials/brokerCredential.d.ts.map +1 -1
  364. package/dist/workerd/credentials/brokerCredential.js.map +1 -1
  365. package/dist/workerd/credentials/clientAssertionCredentialOptions.d.ts.map +1 -1
  366. package/dist/workerd/credentials/clientAssertionCredentialOptions.js.map +1 -1
  367. package/dist/workerd/credentials/clientCertificateCredentialModels.d.ts.map +1 -1
  368. package/dist/workerd/credentials/clientCertificateCredentialModels.js.map +1 -1
  369. package/dist/workerd/credentials/clientCertificateCredentialOptions.d.ts.map +1 -1
  370. package/dist/workerd/credentials/clientCertificateCredentialOptions.js.map +1 -1
  371. package/dist/workerd/credentials/clientSecretCredentialOptions.d.ts.map +1 -1
  372. package/dist/workerd/credentials/clientSecretCredentialOptions.js.map +1 -1
  373. package/dist/workerd/credentials/defaultAzureCredential.js.map +1 -1
  374. package/dist/workerd/credentials/defaultAzureCredentialFunctions.js.map +1 -1
  375. package/dist/workerd/credentials/defaultAzureCredentialOptions.d.ts.map +1 -1
  376. package/dist/workerd/credentials/defaultAzureCredentialOptions.js.map +1 -1
  377. package/dist/workerd/credentials/deviceCodeCredentialOptions.d.ts.map +1 -1
  378. package/dist/workerd/credentials/deviceCodeCredentialOptions.js.map +1 -1
  379. package/dist/workerd/credentials/environmentCredential.d.ts.map +1 -1
  380. package/dist/workerd/credentials/environmentCredential.js.map +1 -1
  381. package/dist/workerd/credentials/environmentCredentialOptions.d.ts.map +1 -1
  382. package/dist/workerd/credentials/environmentCredentialOptions.js.map +1 -1
  383. package/dist/workerd/credentials/interactiveBrowserCredentialOptions.d.ts.map +1 -1
  384. package/dist/workerd/credentials/interactiveBrowserCredentialOptions.js.map +1 -1
  385. package/dist/workerd/credentials/interactiveCredentialOptions.d.ts.map +1 -1
  386. package/dist/workerd/credentials/interactiveCredentialOptions.js.map +1 -1
  387. package/dist/workerd/credentials/managedIdentityCredential/tokenExchangeMsi.js.map +1 -1
  388. package/dist/workerd/credentials/usernamePasswordCredentialOptions.d.ts.map +1 -1
  389. package/dist/workerd/credentials/usernamePasswordCredentialOptions.js.map +1 -1
  390. package/dist/workerd/credentials/visualStudioCodeCredential.d.ts.map +1 -1
  391. package/dist/workerd/credentials/visualStudioCodeCredential.js.map +1 -1
  392. package/dist/workerd/credentials/workloadIdentityCredential.js.map +1 -1
  393. package/dist/workerd/credentials/workloadIdentityCredentialOptions.d.ts.map +1 -1
  394. package/dist/workerd/credentials/workloadIdentityCredentialOptions.js.map +1 -1
  395. package/dist/workerd/index.d.ts +33 -33
  396. package/dist/workerd/index.d.ts.map +1 -1
  397. package/dist/workerd/index.js.map +1 -1
  398. package/dist/workerd/msal/nodeFlows/msalClient.js +3 -3
  399. package/dist/workerd/msal/nodeFlows/msalClient.js.map +1 -1
  400. package/dist/workerd/msal/nodeFlows/msalPlugins.d.ts.map +1 -1
  401. package/dist/workerd/msal/nodeFlows/msalPlugins.js.map +1 -1
  402. package/dist/workerd/msal/utils.d.ts.map +1 -1
  403. package/dist/workerd/msal/utils.js.map +1 -1
  404. package/dist/workerd/util/processUtils.d.ts +14 -3
  405. package/dist/workerd/util/processUtils.d.ts.map +1 -1
  406. package/dist/workerd/util/processUtils.js +36 -19
  407. package/dist/workerd/util/processUtils.js.map +1 -1
  408. package/dist/workerd/util/tenantIdUtils.d.ts.map +1 -1
  409. package/dist/workerd/util/tenantIdUtils.js.map +1 -1
  410. package/package.json +36 -38
  411. package/dist/browser/credentials/azureCliCredential.d.ts +0 -13
  412. package/dist/browser/credentials/azureDeveloperCliCredential.d.ts +0 -13
  413. package/dist/browser/credentials/azurePipelinesCredential.d.ts +0 -13
  414. package/dist/browser/credentials/azurePowerShellCredential.d.ts +0 -12
  415. package/dist/browser/credentials/brokerCredential.d.ts +0 -35
  416. package/dist/browser/credentials/brokerCredential.d.ts.map +0 -1
  417. package/dist/browser/credentials/brokerCredential.js +0 -69
  418. package/dist/browser/credentials/brokerCredential.js.map +0 -1
  419. package/dist/browser/credentials/clientAssertionCredential.d.ts +0 -12
  420. package/dist/browser/credentials/clientCertificateCredential.d.ts +0 -13
  421. package/dist/browser/credentials/defaultAzureCredentialFunctions.d.ts +0 -64
  422. package/dist/browser/credentials/defaultAzureCredentialFunctions.d.ts.map +0 -1
  423. package/dist/browser/credentials/defaultAzureCredentialFunctions.js +0 -147
  424. package/dist/browser/credentials/defaultAzureCredentialFunctions.js.map +0 -1
  425. package/dist/browser/credentials/deviceCodeCredential.d.ts +0 -13
  426. package/dist/browser/credentials/environmentCredential.d.ts +0 -13
  427. package/dist/browser/credentials/managedIdentityCredential/imdsMsi.d.ts +0 -18
  428. package/dist/browser/credentials/managedIdentityCredential/imdsMsi.d.ts.map +0 -1
  429. package/dist/browser/credentials/managedIdentityCredential/imdsMsi.js +0 -97
  430. package/dist/browser/credentials/managedIdentityCredential/imdsMsi.js.map +0 -1
  431. package/dist/browser/credentials/managedIdentityCredential/imdsRetryPolicy.d.ts +0 -13
  432. package/dist/browser/credentials/managedIdentityCredential/imdsRetryPolicy.d.ts.map +0 -1
  433. package/dist/browser/credentials/managedIdentityCredential/imdsRetryPolicy.js +0 -43
  434. package/dist/browser/credentials/managedIdentityCredential/imdsRetryPolicy.js.map +0 -1
  435. package/dist/browser/credentials/managedIdentityCredential/index.d.ts +0 -6
  436. package/dist/browser/credentials/managedIdentityCredential/models.d.ts +0 -24
  437. package/dist/browser/credentials/managedIdentityCredential/models.d.ts.map +0 -1
  438. package/dist/browser/credentials/managedIdentityCredential/models.js +0 -4
  439. package/dist/browser/credentials/managedIdentityCredential/models.js.map +0 -1
  440. package/dist/browser/credentials/managedIdentityCredential/tokenExchangeMsi.d.ts +0 -14
  441. package/dist/browser/credentials/managedIdentityCredential/tokenExchangeMsi.d.ts.map +0 -1
  442. package/dist/browser/credentials/managedIdentityCredential/tokenExchangeMsi.js +0 -38
  443. package/dist/browser/credentials/managedIdentityCredential/tokenExchangeMsi.js.map +0 -1
  444. package/dist/browser/credentials/onBehalfOfCredential.d.ts +0 -12
  445. package/dist/browser/credentials/visualStudioCodeCredentialPlugin.d.ts +0 -12
  446. package/dist/browser/credentials/visualStudioCodeCredentialPlugin.d.ts.map +0 -1
  447. package/dist/browser/credentials/visualStudioCodeCredentialPlugin.js +0 -4
  448. package/dist/browser/credentials/visualStudioCodeCredentialPlugin.js.map +0 -1
  449. package/dist/browser/msal/nodeFlows/msalClient.d.ts +0 -199
  450. package/dist/browser/msal/nodeFlows/msalClient.d.ts.map +0 -1
  451. package/dist/browser/msal/nodeFlows/msalClient.js +0 -499
  452. package/dist/browser/msal/nodeFlows/msalClient.js.map +0 -1
  453. package/dist/browser/msal/nodeFlows/msalPlugins.d.ts +0 -109
  454. package/dist/browser/msal/nodeFlows/msalPlugins.d.ts.map +0 -1
  455. package/dist/browser/msal/nodeFlows/msalPlugins.js +0 -160
  456. package/dist/browser/msal/nodeFlows/msalPlugins.js.map +0 -1
  457. package/dist/browser/regionalAuthority.d.ts +0 -122
  458. package/dist/browser/regionalAuthority.d.ts.map +0 -1
  459. package/dist/browser/regionalAuthority.js +0 -139
  460. package/dist/browser/regionalAuthority.js.map +0 -1
  461. package/dist/browser/util/authHostEnv-browser.d.mts +0 -4
  462. package/dist/browser/util/authHostEnv-browser.d.mts.map +0 -1
  463. package/dist/browser/util/authHostEnv-browser.mjs +0 -7
  464. package/dist/browser/util/authHostEnv-browser.mjs.map +0 -1
  465. package/dist/browser/util/processUtils.d.ts +0 -13
  466. package/dist/browser/util/processUtils.d.ts.map +0 -1
  467. package/dist/browser/util/processUtils.js +0 -32
  468. package/dist/browser/util/processUtils.js.map +0 -1
  469. package/dist/browser/util/subscriptionUtils.d.ts +0 -6
  470. package/dist/browser/util/subscriptionUtils.d.ts.map +0 -1
  471. package/dist/browser/util/subscriptionUtils.js +0 -16
  472. package/dist/browser/util/subscriptionUtils.js.map +0 -1
  473. package/dist/commonjs/credentials/visualStudioCodeCredentialPlugin.d.ts +0 -12
  474. package/dist/commonjs/credentials/visualStudioCodeCredentialPlugin.d.ts.map +0 -1
  475. package/dist/commonjs/credentials/visualStudioCodeCredentialPlugin.js +0 -5
  476. package/dist/commonjs/credentials/visualStudioCodeCredentialPlugin.js.map +0 -1
  477. package/dist/commonjs/msal/browserFlows/msalBrowserCommon.d.ts +0 -19
  478. package/dist/commonjs/msal/browserFlows/msalBrowserCommon.d.ts.map +0 -1
  479. package/dist/commonjs/msal/browserFlows/msalBrowserCommon.js +0 -265
  480. package/dist/commonjs/msal/browserFlows/msalBrowserCommon.js.map +0 -1
  481. package/dist/commonjs/msal/browserFlows/msalBrowserOptions.d.ts +0 -87
  482. package/dist/commonjs/msal/browserFlows/msalBrowserOptions.d.ts.map +0 -1
  483. package/dist/commonjs/msal/browserFlows/msalBrowserOptions.js +0 -5
  484. package/dist/commonjs/msal/browserFlows/msalBrowserOptions.js.map +0 -1
  485. package/dist/commonjs/msal/credentials.d.ts +0 -52
  486. package/dist/commonjs/msal/credentials.d.ts.map +0 -1
  487. package/dist/commonjs/msal/credentials.js +0 -5
  488. package/dist/commonjs/msal/credentials.js.map +0 -1
  489. package/dist/esm/credentials/visualStudioCodeCredentialPlugin.d.ts +0 -12
  490. package/dist/esm/credentials/visualStudioCodeCredentialPlugin.d.ts.map +0 -1
  491. package/dist/esm/credentials/visualStudioCodeCredentialPlugin.js +0 -4
  492. package/dist/esm/credentials/visualStudioCodeCredentialPlugin.js.map +0 -1
  493. package/dist/esm/msal/browserFlows/msalBrowserCommon.d.ts +0 -19
  494. package/dist/esm/msal/browserFlows/msalBrowserCommon.d.ts.map +0 -1
  495. package/dist/esm/msal/browserFlows/msalBrowserCommon.js +0 -261
  496. package/dist/esm/msal/browserFlows/msalBrowserCommon.js.map +0 -1
  497. package/dist/esm/msal/browserFlows/msalBrowserOptions.d.ts +0 -87
  498. package/dist/esm/msal/browserFlows/msalBrowserOptions.d.ts.map +0 -1
  499. package/dist/esm/msal/browserFlows/msalBrowserOptions.js +0 -4
  500. package/dist/esm/msal/browserFlows/msalBrowserOptions.js.map +0 -1
  501. package/dist/esm/msal/credentials.d.ts +0 -52
  502. package/dist/esm/msal/credentials.d.ts.map +0 -1
  503. package/dist/esm/msal/credentials.js +0 -4
  504. package/dist/esm/msal/credentials.js.map +0 -1
  505. package/dist/esm/util/authHostEnv-browser.d.mts +0 -4
  506. package/dist/esm/util/authHostEnv-browser.d.mts.map +0 -1
  507. package/dist/esm/util/authHostEnv-browser.mjs +0 -7
  508. package/dist/esm/util/authHostEnv-browser.mjs.map +0 -1
  509. package/dist/workerd/credentials/visualStudioCodeCredentialPlugin.d.ts +0 -12
  510. package/dist/workerd/credentials/visualStudioCodeCredentialPlugin.d.ts.map +0 -1
  511. package/dist/workerd/credentials/visualStudioCodeCredentialPlugin.js +0 -4
  512. package/dist/workerd/credentials/visualStudioCodeCredentialPlugin.js.map +0 -1
  513. package/dist/workerd/msal/browserFlows/msalBrowserCommon.d.ts +0 -19
  514. package/dist/workerd/msal/browserFlows/msalBrowserCommon.d.ts.map +0 -1
  515. package/dist/workerd/msal/browserFlows/msalBrowserCommon.js +0 -261
  516. package/dist/workerd/msal/browserFlows/msalBrowserCommon.js.map +0 -1
  517. package/dist/workerd/msal/browserFlows/msalBrowserOptions.d.ts +0 -87
  518. package/dist/workerd/msal/browserFlows/msalBrowserOptions.d.ts.map +0 -1
  519. package/dist/workerd/msal/browserFlows/msalBrowserOptions.js +0 -4
  520. package/dist/workerd/msal/browserFlows/msalBrowserOptions.js.map +0 -1
  521. package/dist/workerd/msal/credentials.d.ts +0 -52
  522. package/dist/workerd/msal/credentials.d.ts.map +0 -1
  523. package/dist/workerd/msal/credentials.js +0 -4
  524. package/dist/workerd/msal/credentials.js.map +0 -1
  525. package/dist/workerd/util/authHostEnv-browser.d.mts +0 -4
  526. package/dist/workerd/util/authHostEnv-browser.d.mts.map +0 -1
  527. package/dist/workerd/util/authHostEnv-browser.mjs +0 -7
  528. package/dist/workerd/util/authHostEnv-browser.mjs.map +0 -1
  529. /package/dist/browser/credentials/{clientSecretCredential.d.ts → clientSecretCredential-browser.d.mts} +0 -0
  530. /package/dist/browser/credentials/{clientSecretCredential.js → clientSecretCredential-browser.mjs} +0 -0
  531. /package/dist/browser/credentials/{interactiveBrowserCredential.d.ts → interactiveBrowserCredential-browser.d.mts} +0 -0
  532. /package/dist/browser/credentials/{interactiveBrowserCredential.js → interactiveBrowserCredential-browser.mjs} +0 -0
  533. /package/dist/browser/credentials/{usernamePasswordCredential.d.ts → usernamePasswordCredential-browser.d.mts} +0 -0
  534. /package/dist/browser/credentials/{usernamePasswordCredential.js → usernamePasswordCredential-browser.mjs} +0 -0
  535. /package/dist/browser/msal/{msal.d.ts → msal-browser.d.mts} +0 -0
  536. /package/dist/browser/msal/{msal.js → msal-browser.mjs} +0 -0
  537. /package/dist/browser/plugins/{consumer.d.ts → consumer-browser.d.mts} +0 -0
  538. /package/dist/browser/plugins/{consumer.js → consumer-browser.mjs} +0 -0
  539. /package/dist/browser/util/{processMultiTenantRequest.d.ts → processMultiTenantRequest-browser.d.mts} +0 -0
  540. /package/dist/browser/util/{processMultiTenantRequest.js → processMultiTenantRequest-browser.mjs} +0 -0
@@ -1,68 +1,106 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.ClientAssertionCredential = void 0;
6
- const msalClient_js_1 = require("../msal/nodeFlows/msalClient.js");
7
- const tenantIdUtils_js_1 = require("../util/tenantIdUtils.js");
8
- const errors_js_1 = require("../errors.js");
9
- const logging_js_1 = require("../util/logging.js");
10
- const tracing_js_1 = require("../util/tracing.js");
11
- const logger = (0, logging_js_1.credentialLogger)("ClientAssertionCredential");
12
- /**
13
- * Authenticates a service principal with a JWT assertion.
14
- */
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var clientAssertionCredential_exports = {};
19
+ __export(clientAssertionCredential_exports, {
20
+ ClientAssertionCredential: () => ClientAssertionCredential
21
+ });
22
+ module.exports = __toCommonJS(clientAssertionCredential_exports);
23
+ var import_msalClient = require("../msal/nodeFlows/msalClient.js");
24
+ var import_tenantIdUtils = require("../util/tenantIdUtils.js");
25
+ var import_errors = require("../errors.js");
26
+ var import_logging = require("../util/logging.js");
27
+ var import_tracing = require("../util/tracing.js");
28
+ const logger = (0, import_logging.credentialLogger)("ClientAssertionCredential");
15
29
  class ClientAssertionCredential {
16
- msalClient;
17
- tenantId;
18
- additionallyAllowedTenantIds;
19
- getAssertion;
20
- options;
21
- /**
22
- * Creates an instance of the ClientAssertionCredential with the details
23
- * needed to authenticate against Microsoft Entra ID with a client
24
- * assertion provided by the developer through the `getAssertion` function parameter.
25
- *
26
- * @param tenantId - The Microsoft Entra tenant (directory) ID.
27
- * @param clientId - The client (application) ID of an App Registration in the tenant.
28
- * @param getAssertion - A function that retrieves the assertion for the credential to use.
29
- * @param options - Options for configuring the client which makes the authentication request.
30
- */
31
- constructor(tenantId, clientId, getAssertion, options = {}) {
32
- if (!tenantId) {
33
- throw new errors_js_1.CredentialUnavailableError("ClientAssertionCredential: tenantId is a required parameter.");
34
- }
35
- if (!clientId) {
36
- throw new errors_js_1.CredentialUnavailableError("ClientAssertionCredential: clientId is a required parameter.");
37
- }
38
- if (!getAssertion) {
39
- throw new errors_js_1.CredentialUnavailableError("ClientAssertionCredential: clientAssertion is a required parameter.");
40
- }
41
- this.tenantId = tenantId;
42
- this.additionallyAllowedTenantIds = (0, tenantIdUtils_js_1.resolveAdditionallyAllowedTenantIds)(options?.additionallyAllowedTenants);
43
- this.options = options;
44
- this.getAssertion = getAssertion;
45
- this.msalClient = (0, msalClient_js_1.createMsalClient)(clientId, tenantId, {
46
- ...options,
47
- logger,
48
- tokenCredentialOptions: this.options,
49
- });
30
+ msalClient;
31
+ tenantId;
32
+ additionallyAllowedTenantIds;
33
+ getAssertion;
34
+ options;
35
+ /**
36
+ * Creates an instance of the ClientAssertionCredential with the details
37
+ * needed to authenticate against Microsoft Entra ID with a client
38
+ * assertion provided by the developer through the `getAssertion` function parameter.
39
+ *
40
+ * @param tenantId - The Microsoft Entra tenant (directory) ID.
41
+ * @param clientId - The client (application) ID of an App Registration in the tenant.
42
+ * @param getAssertion - A function that retrieves the assertion for the credential to use.
43
+ * @param options - Options for configuring the client which makes the authentication request.
44
+ */
45
+ constructor(tenantId, clientId, getAssertion, options = {}) {
46
+ if (!tenantId) {
47
+ throw new import_errors.CredentialUnavailableError(
48
+ "ClientAssertionCredential: tenantId is a required parameter."
49
+ );
50
50
  }
51
- /**
52
- * Authenticates with Microsoft Entra ID and returns an access token if successful.
53
- * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.
54
- *
55
- * @param scopes - The list of scopes for which the token will have access.
56
- * @param options - The options used to configure any requests this
57
- * TokenCredential implementation might make.
58
- */
59
- async getToken(scopes, options = {}) {
60
- return tracing_js_1.tracingClient.withSpan(`${this.constructor.name}.getToken`, options, async (newOptions) => {
61
- newOptions.tenantId = (0, tenantIdUtils_js_1.processMultiTenantRequest)(this.tenantId, newOptions, this.additionallyAllowedTenantIds, logger);
62
- const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];
63
- return this.msalClient.getTokenByClientAssertion(arrayScopes, this.getAssertion, newOptions);
64
- });
51
+ if (!clientId) {
52
+ throw new import_errors.CredentialUnavailableError(
53
+ "ClientAssertionCredential: clientId is a required parameter."
54
+ );
65
55
  }
56
+ if (!getAssertion) {
57
+ throw new import_errors.CredentialUnavailableError(
58
+ "ClientAssertionCredential: clientAssertion is a required parameter."
59
+ );
60
+ }
61
+ this.tenantId = tenantId;
62
+ this.additionallyAllowedTenantIds = (0, import_tenantIdUtils.resolveAdditionallyAllowedTenantIds)(
63
+ options?.additionallyAllowedTenants
64
+ );
65
+ this.options = options;
66
+ this.getAssertion = getAssertion;
67
+ this.msalClient = (0, import_msalClient.createMsalClient)(clientId, tenantId, {
68
+ ...options,
69
+ logger,
70
+ tokenCredentialOptions: this.options
71
+ });
72
+ }
73
+ /**
74
+ * Authenticates with Microsoft Entra ID and returns an access token if successful.
75
+ * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.
76
+ *
77
+ * @param scopes - The list of scopes for which the token will have access.
78
+ * @param options - The options used to configure any requests this
79
+ * TokenCredential implementation might make.
80
+ */
81
+ async getToken(scopes, options = {}) {
82
+ return import_tracing.tracingClient.withSpan(
83
+ `${this.constructor.name}.getToken`,
84
+ options,
85
+ async (newOptions) => {
86
+ newOptions.tenantId = (0, import_tenantIdUtils.processMultiTenantRequest)(
87
+ this.tenantId,
88
+ newOptions,
89
+ this.additionallyAllowedTenantIds,
90
+ logger
91
+ );
92
+ const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];
93
+ return this.msalClient.getTokenByClientAssertion(
94
+ arrayScopes,
95
+ this.getAssertion,
96
+ newOptions
97
+ );
98
+ }
99
+ );
100
+ }
66
101
  }
67
- exports.ClientAssertionCredential = ClientAssertionCredential;
68
- //# sourceMappingURL=clientAssertionCredential.js.map
102
+ // Annotate the CommonJS export names for ESM import in node:
103
+ 0 && (module.exports = {
104
+ ClientAssertionCredential
105
+ });
106
+ //# sourceMappingURL=clientAssertionCredential.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"clientAssertionCredential.js","sourceRoot":"","sources":["../../../src/credentials/clientAssertionCredential.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAIlC,mEAAmE;AACnE,+DAGkC;AAGlC,4CAA0D;AAC1D,mDAAsD;AACtD,mDAAmD;AAEnD,MAAM,MAAM,GAAG,IAAA,6BAAgB,EAAC,2BAA2B,CAAC,CAAC;AAE7D;;GAEG;AACH,MAAa,yBAAyB;IAC5B,UAAU,CAAa;IACvB,QAAQ,CAAS;IACjB,4BAA4B,CAAW;IACvC,YAAY,CAAwB;IACpC,OAAO,CAAmC;IAElD;;;;;;;;;OASG;IACH,YACE,QAAgB,EAChB,QAAgB,EAChB,YAAmC,EACnC,UAA4C,EAAE;QAE9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,sCAA0B,CAClC,8DAA8D,CAC/D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,sCAA0B,CAClC,8DAA8D,CAC/D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,sCAA0B,CAClC,qEAAqE,CACtE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,4BAA4B,GAAG,IAAA,sDAAmC,EACrE,OAAO,EAAE,0BAA0B,CACpC,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,UAAU,GAAG,IAAA,gCAAgB,EAAC,QAAQ,EAAE,QAAQ,EAAE;YACrD,GAAG,OAAO;YACV,MAAM;YACN,sBAAsB,EAAE,IAAI,CAAC,OAAO;SACrC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAyB,EAAE,UAA2B,EAAE;QACrE,OAAO,0BAAa,CAAC,QAAQ,CAC3B,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,WAAW,EACnC,OAAO,EACP,KAAK,EAAE,UAAU,EAAE,EAAE;YACnB,UAAU,CAAC,QAAQ,GAAG,IAAA,4CAAyB,EAC7C,IAAI,CAAC,QAAQ,EACb,UAAU,EACV,IAAI,CAAC,4BAA4B,EACjC,MAAM,CACP,CAAC;YAEF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAC9C,WAAW,EACX,IAAI,CAAC,YAAY,EACjB,UAAU,CACX,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;CACF;AAnFD,8DAmFC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AccessToken, GetTokenOptions, TokenCredential } from \"@azure/core-auth\";\nimport type { MsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport { createMsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport {\n processMultiTenantRequest,\n resolveAdditionallyAllowedTenantIds,\n} from \"../util/tenantIdUtils.js\";\n\nimport type { ClientAssertionCredentialOptions } from \"./clientAssertionCredentialOptions.js\";\nimport { CredentialUnavailableError } from \"../errors.js\";\nimport { credentialLogger } from \"../util/logging.js\";\nimport { tracingClient } from \"../util/tracing.js\";\n\nconst logger = credentialLogger(\"ClientAssertionCredential\");\n\n/**\n * Authenticates a service principal with a JWT assertion.\n */\nexport class ClientAssertionCredential implements TokenCredential {\n private msalClient: MsalClient;\n private tenantId: string;\n private additionallyAllowedTenantIds: string[];\n private getAssertion: () => Promise<string>;\n private options: ClientAssertionCredentialOptions;\n\n /**\n * Creates an instance of the ClientAssertionCredential with the details\n * needed to authenticate against Microsoft Entra ID with a client\n * assertion provided by the developer through the `getAssertion` function parameter.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param getAssertion - A function that retrieves the assertion for the credential to use.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n getAssertion: () => Promise<string>,\n options: ClientAssertionCredentialOptions = {},\n ) {\n if (!tenantId) {\n throw new CredentialUnavailableError(\n \"ClientAssertionCredential: tenantId is a required parameter.\",\n );\n }\n\n if (!clientId) {\n throw new CredentialUnavailableError(\n \"ClientAssertionCredential: clientId is a required parameter.\",\n );\n }\n\n if (!getAssertion) {\n throw new CredentialUnavailableError(\n \"ClientAssertionCredential: clientAssertion is a required parameter.\",\n );\n }\n this.tenantId = tenantId;\n this.additionallyAllowedTenantIds = resolveAdditionallyAllowedTenantIds(\n options?.additionallyAllowedTenants,\n );\n\n this.options = options;\n this.getAssertion = getAssertion;\n this.msalClient = createMsalClient(clientId, tenantId, {\n ...options,\n logger,\n tokenCredentialOptions: this.options,\n });\n }\n\n /**\n * Authenticates with Microsoft Entra ID and returns an access token if successful.\n * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.\n *\n * @param scopes - The list of scopes for which the token will have access.\n * @param options - The options used to configure any requests this\n * TokenCredential implementation might make.\n */\n async getToken(scopes: string | string[], options: GetTokenOptions = {}): Promise<AccessToken> {\n return tracingClient.withSpan(\n `${this.constructor.name}.getToken`,\n options,\n async (newOptions) => {\n newOptions.tenantId = processMultiTenantRequest(\n this.tenantId,\n newOptions,\n this.additionallyAllowedTenantIds,\n logger,\n );\n\n const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];\n return this.msalClient.getTokenByClientAssertion(\n arrayScopes,\n this.getAssertion,\n newOptions,\n );\n },\n );\n }\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/credentials/clientAssertionCredential.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AccessToken, GetTokenOptions, TokenCredential } from \"@azure/core-auth\";\nimport type { MsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport { createMsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport {\n processMultiTenantRequest,\n resolveAdditionallyAllowedTenantIds,\n} from \"../util/tenantIdUtils.js\";\n\nimport type { ClientAssertionCredentialOptions } from \"./clientAssertionCredentialOptions.js\";\nimport { CredentialUnavailableError } from \"../errors.js\";\nimport { credentialLogger } from \"../util/logging.js\";\nimport { tracingClient } from \"../util/tracing.js\";\n\nconst logger = credentialLogger(\"ClientAssertionCredential\");\n\n/**\n * Authenticates a service principal with a JWT assertion.\n */\nexport class ClientAssertionCredential implements TokenCredential {\n private msalClient: MsalClient;\n private tenantId: string;\n private additionallyAllowedTenantIds: string[];\n private getAssertion: () => Promise<string>;\n private options: ClientAssertionCredentialOptions;\n\n /**\n * Creates an instance of the ClientAssertionCredential with the details\n * needed to authenticate against Microsoft Entra ID with a client\n * assertion provided by the developer through the `getAssertion` function parameter.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param getAssertion - A function that retrieves the assertion for the credential to use.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n getAssertion: () => Promise<string>,\n options: ClientAssertionCredentialOptions = {},\n ) {\n if (!tenantId) {\n throw new CredentialUnavailableError(\n \"ClientAssertionCredential: tenantId is a required parameter.\",\n );\n }\n\n if (!clientId) {\n throw new CredentialUnavailableError(\n \"ClientAssertionCredential: clientId is a required parameter.\",\n );\n }\n\n if (!getAssertion) {\n throw new CredentialUnavailableError(\n \"ClientAssertionCredential: clientAssertion is a required parameter.\",\n );\n }\n this.tenantId = tenantId;\n this.additionallyAllowedTenantIds = resolveAdditionallyAllowedTenantIds(\n options?.additionallyAllowedTenants,\n );\n\n this.options = options;\n this.getAssertion = getAssertion;\n this.msalClient = createMsalClient(clientId, tenantId, {\n ...options,\n logger,\n tokenCredentialOptions: this.options,\n });\n }\n\n /**\n * Authenticates with Microsoft Entra ID and returns an access token if successful.\n * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.\n *\n * @param scopes - The list of scopes for which the token will have access.\n * @param options - The options used to configure any requests this\n * TokenCredential implementation might make.\n */\n async getToken(scopes: string | string[], options: GetTokenOptions = {}): Promise<AccessToken> {\n return tracingClient.withSpan(\n `${this.constructor.name}.getToken`,\n options,\n async (newOptions) => {\n newOptions.tenantId = processMultiTenantRequest(\n this.tenantId,\n newOptions,\n this.additionallyAllowedTenantIds,\n logger,\n );\n\n const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];\n return this.msalClient.getTokenByClientAssertion(\n arrayScopes,\n this.getAssertion,\n newOptions,\n );\n },\n );\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,wBAAiC;AACjC,2BAGO;AAGP,oBAA2C;AAC3C,qBAAiC;AACjC,qBAA8B;AAE9B,MAAM,aAAS,iCAAiB,2BAA2B;AAKpD,MAAM,0BAAqD;AAAA,EACxD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYR,YACE,UACA,UACA,cACA,UAA4C,CAAC,GAC7C;AACA,QAAI,CAAC,UAAU;AACb,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,QAAI,CAAC,UAAU;AACb,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,QAAI,CAAC,cAAc;AACjB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AACA,SAAK,WAAW;AAChB,SAAK,mCAA+B;AAAA,MAClC,SAAS;AAAA,IACX;AAEA,SAAK,UAAU;AACf,SAAK,eAAe;AACpB,SAAK,iBAAa,oCAAiB,UAAU,UAAU;AAAA,MACrD,GAAG;AAAA,MACH;AAAA,MACA,wBAAwB,KAAK;AAAA,IAC/B,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAM,SAAS,QAA2B,UAA2B,CAAC,GAAyB;AAC7F,WAAO,6BAAc;AAAA,MACnB,GAAG,KAAK,YAAY,IAAI;AAAA,MACxB;AAAA,MACA,OAAO,eAAe;AACpB,mBAAW,eAAW;AAAA,UACpB,KAAK;AAAA,UACL;AAAA,UACA,KAAK;AAAA,UACL;AAAA,QACF;AAEA,cAAM,cAAc,MAAM,QAAQ,MAAM,IAAI,SAAS,CAAC,MAAM;AAC5D,eAAO,KAAK,WAAW;AAAA,UACrB;AAAA,UACA,KAAK;AAAA,UACL;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"clientAssertionCredentialOptions.d.ts","sourceRoot":"","sources":["../../../src/credentials/clientAssertionCredentialOptions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAEhG;;GAEG;AACH,MAAM,WAAW,gCACf,SAAQ,iCAAiC,EACvC,4BAA4B,EAC5B,0BAA0B;CAAG"}
1
+ {"version":3,"file":"clientAssertionCredentialOptions.d.ts","sourceRoot":"","sources":["../../../src/credentials/clientAssertionCredentialOptions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAEhG;;GAEG;AACH,MAAM,WAAW,gCACf,SACE,iCAAiC,EACjC,4BAA4B,EAC5B,0BAA0B;CAAG"}
@@ -1,5 +1,16 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- //# sourceMappingURL=clientAssertionCredentialOptions.js.map
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from))
8
+ if (!__hasOwnProp.call(to, key) && key !== except)
9
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ }
11
+ return to;
12
+ };
13
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
+ var clientAssertionCredentialOptions_exports = {};
15
+ module.exports = __toCommonJS(clientAssertionCredentialOptions_exports);
16
+ //# sourceMappingURL=clientAssertionCredentialOptions.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"clientAssertionCredentialOptions.js","sourceRoot":"","sources":["../../../src/credentials/clientAssertionCredentialOptions.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AuthorityValidationOptions } from \"./authorityValidationOptions.js\";\nimport type { CredentialPersistenceOptions } from \"./credentialPersistenceOptions.js\";\nimport type { MultiTenantTokenCredentialOptions } from \"./multiTenantTokenCredentialOptions.js\";\n\n/**\n * Options for the {@link ClientAssertionCredential}\n */\nexport interface ClientAssertionCredentialOptions\n extends MultiTenantTokenCredentialOptions,\n CredentialPersistenceOptions,\n AuthorityValidationOptions {}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/credentials/clientAssertionCredentialOptions.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AuthorityValidationOptions } from \"./authorityValidationOptions.js\";\nimport type { CredentialPersistenceOptions } from \"./credentialPersistenceOptions.js\";\nimport type { MultiTenantTokenCredentialOptions } from \"./multiTenantTokenCredentialOptions.js\";\n\n/**\n * Options for the {@link ClientAssertionCredential}\n */\nexport interface ClientAssertionCredentialOptions\n extends\n MultiTenantTokenCredentialOptions,\n CredentialPersistenceOptions,\n AuthorityValidationOptions {}\n"],
5
+ "mappings": ";;;;;;;;;;;;;AAAA;AAAA;",
6
+ "names": []
7
+ }
@@ -1,143 +1,148 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.ClientCertificateCredential = void 0;
6
- exports.parseCertificate = parseCertificate;
7
- const msalClient_js_1 = require("../msal/nodeFlows/msalClient.js");
8
- const node_crypto_1 = require("node:crypto");
9
- const tenantIdUtils_js_1 = require("../util/tenantIdUtils.js");
10
- const logging_js_1 = require("../util/logging.js");
11
- const promises_1 = require("node:fs/promises");
12
- const tracing_js_1 = require("../util/tracing.js");
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var clientCertificateCredential_exports = {};
19
+ __export(clientCertificateCredential_exports, {
20
+ ClientCertificateCredential: () => ClientCertificateCredential,
21
+ parseCertificate: () => parseCertificate
22
+ });
23
+ module.exports = __toCommonJS(clientCertificateCredential_exports);
24
+ var import_msalClient = require("../msal/nodeFlows/msalClient.js");
25
+ var import_node_crypto = require("node:crypto");
26
+ var import_tenantIdUtils = require("../util/tenantIdUtils.js");
27
+ var import_logging = require("../util/logging.js");
28
+ var import_promises = require("node:fs/promises");
29
+ var import_tracing = require("../util/tracing.js");
13
30
  const credentialName = "ClientCertificateCredential";
14
- const logger = (0, logging_js_1.credentialLogger)(credentialName);
15
- /**
16
- * Enables authentication to Microsoft Entra ID using a PEM-encoded
17
- * certificate that is assigned to an App Registration. More information
18
- * on how to configure certificate authentication can be found here:
19
- *
20
- * https://learn.microsoft.com/azure/active-directory/develop/active-directory-certificate-credentials#register-your-certificate-with-azure-ad
21
- *
22
- */
31
+ const logger = (0, import_logging.credentialLogger)(credentialName);
23
32
  class ClientCertificateCredential {
24
- tenantId;
25
- additionallyAllowedTenantIds;
26
- certificateConfiguration;
27
- sendCertificateChain;
28
- msalClient;
29
- constructor(tenantId, clientId, certificatePathOrConfiguration, options = {}) {
30
- if (!tenantId || !clientId) {
31
- throw new Error(`${credentialName}: tenantId and clientId are required parameters.`);
32
- }
33
- this.tenantId = tenantId;
34
- this.additionallyAllowedTenantIds = (0, tenantIdUtils_js_1.resolveAdditionallyAllowedTenantIds)(options?.additionallyAllowedTenants);
35
- this.sendCertificateChain = options.sendCertificateChain;
36
- this.certificateConfiguration = {
37
- ...(typeof certificatePathOrConfiguration === "string"
38
- ? {
39
- certificatePath: certificatePathOrConfiguration,
40
- }
41
- : certificatePathOrConfiguration),
42
- };
43
- const certificate = this.certificateConfiguration
44
- .certificate;
45
- const certificatePath = this.certificateConfiguration
46
- .certificatePath;
47
- if (!this.certificateConfiguration || !(certificate || certificatePath)) {
48
- throw new Error(`${credentialName}: Provide either a PEM certificate in string form, or the path to that certificate in the filesystem. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`);
49
- }
50
- if (certificate && certificatePath) {
51
- throw new Error(`${credentialName}: To avoid unexpected behaviors, providing both the contents of a PEM certificate and the path to a PEM certificate is forbidden. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`);
52
- }
53
- this.msalClient = (0, msalClient_js_1.createMsalClient)(clientId, tenantId, {
54
- ...options,
55
- logger,
56
- tokenCredentialOptions: options,
57
- });
33
+ tenantId;
34
+ additionallyAllowedTenantIds;
35
+ certificateConfiguration;
36
+ sendCertificateChain;
37
+ msalClient;
38
+ constructor(tenantId, clientId, certificatePathOrConfiguration, options = {}) {
39
+ if (!tenantId || !clientId) {
40
+ throw new Error(`${credentialName}: tenantId and clientId are required parameters.`);
58
41
  }
59
- /**
60
- * Authenticates with Microsoft Entra ID and returns an access token if successful.
61
- * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.
62
- *
63
- * @param scopes - The list of scopes for which the token will have access.
64
- * @param options - The options used to configure any requests this
65
- * TokenCredential implementation might make.
66
- */
67
- async getToken(scopes, options = {}) {
68
- return tracing_js_1.tracingClient.withSpan(`${credentialName}.getToken`, options, async (newOptions) => {
69
- newOptions.tenantId = (0, tenantIdUtils_js_1.processMultiTenantRequest)(this.tenantId, newOptions, this.additionallyAllowedTenantIds, logger);
70
- const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];
71
- const certificate = await this.buildClientCertificate();
72
- return this.msalClient.getTokenByClientCertificate(arrayScopes, certificate, newOptions);
73
- });
42
+ this.tenantId = tenantId;
43
+ this.additionallyAllowedTenantIds = (0, import_tenantIdUtils.resolveAdditionallyAllowedTenantIds)(
44
+ options?.additionallyAllowedTenants
45
+ );
46
+ this.sendCertificateChain = options.sendCertificateChain;
47
+ this.certificateConfiguration = {
48
+ ...typeof certificatePathOrConfiguration === "string" ? {
49
+ certificatePath: certificatePathOrConfiguration
50
+ } : certificatePathOrConfiguration
51
+ };
52
+ const certificate = this.certificateConfiguration.certificate;
53
+ const certificatePath = this.certificateConfiguration.certificatePath;
54
+ if (!this.certificateConfiguration || !(certificate || certificatePath)) {
55
+ throw new Error(
56
+ `${credentialName}: Provide either a PEM certificate in string form, or the path to that certificate in the filesystem. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`
57
+ );
74
58
  }
75
- async buildClientCertificate() {
76
- const parts = await parseCertificate(this.certificateConfiguration, this.sendCertificateChain ?? false);
77
- let privateKey;
78
- if (this.certificateConfiguration.certificatePassword !== undefined) {
79
- privateKey = (0, node_crypto_1.createPrivateKey)({
80
- key: parts.certificateContents,
81
- passphrase: this.certificateConfiguration.certificatePassword,
82
- format: "pem",
83
- })
84
- .export({
85
- format: "pem",
86
- type: "pkcs8",
87
- })
88
- .toString();
89
- }
90
- else {
91
- privateKey = parts.certificateContents;
92
- }
93
- return {
94
- thumbprint: parts.thumbprint,
95
- thumbprintSha256: parts.thumbprintSha256,
96
- privateKey,
97
- x5c: parts.x5c,
98
- };
59
+ if (certificate && certificatePath) {
60
+ throw new Error(
61
+ `${credentialName}: To avoid unexpected behaviors, providing both the contents of a PEM certificate and the path to a PEM certificate is forbidden. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`
62
+ );
99
63
  }
100
- }
101
- exports.ClientCertificateCredential = ClientCertificateCredential;
102
- /**
103
- * Parses a certificate into its relevant parts
104
- *
105
- * @param certificateConfiguration - The certificate contents or path to the certificate
106
- * @param sendCertificateChain - true if the entire certificate chain should be sent for SNI, false otherwise
107
- * @returns The parsed certificate parts and the certificate contents
108
- */
109
- async function parseCertificate(certificateConfiguration, sendCertificateChain) {
110
- const certificate = certificateConfiguration.certificate;
111
- const certificatePath = certificateConfiguration
112
- .certificatePath;
113
- const certificateContents = certificate || (await (0, promises_1.readFile)(certificatePath, "utf8"));
114
- const x5c = sendCertificateChain ? certificateContents : undefined;
115
- const certificatePattern = /(-+BEGIN CERTIFICATE-+)(\n\r?|\r\n?)([A-Za-z0-9+/\n\r]+=*)(\n\r?|\r\n?)(-+END CERTIFICATE-+)/g;
116
- const publicKeys = [];
117
- // Match all possible certificates, in the order they are in the file. These will form the chain that is used for x5c
118
- let match;
119
- do {
120
- match = certificatePattern.exec(certificateContents);
121
- if (match) {
122
- publicKeys.push(match[3]);
123
- }
124
- } while (match);
125
- if (publicKeys.length === 0) {
126
- throw new Error("The file at the specified path does not contain a PEM-encoded certificate.");
64
+ this.msalClient = (0, import_msalClient.createMsalClient)(clientId, tenantId, {
65
+ ...options,
66
+ logger,
67
+ tokenCredentialOptions: options
68
+ });
69
+ }
70
+ /**
71
+ * Authenticates with Microsoft Entra ID and returns an access token if successful.
72
+ * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.
73
+ *
74
+ * @param scopes - The list of scopes for which the token will have access.
75
+ * @param options - The options used to configure any requests this
76
+ * TokenCredential implementation might make.
77
+ */
78
+ async getToken(scopes, options = {}) {
79
+ return import_tracing.tracingClient.withSpan(`${credentialName}.getToken`, options, async (newOptions) => {
80
+ newOptions.tenantId = (0, import_tenantIdUtils.processMultiTenantRequest)(
81
+ this.tenantId,
82
+ newOptions,
83
+ this.additionallyAllowedTenantIds,
84
+ logger
85
+ );
86
+ const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];
87
+ const certificate = await this.buildClientCertificate();
88
+ return this.msalClient.getTokenByClientCertificate(arrayScopes, certificate, newOptions);
89
+ });
90
+ }
91
+ async buildClientCertificate() {
92
+ const parts = await parseCertificate(
93
+ this.certificateConfiguration,
94
+ this.sendCertificateChain ?? false
95
+ );
96
+ let privateKey;
97
+ if (this.certificateConfiguration.certificatePassword !== void 0) {
98
+ privateKey = (0, import_node_crypto.createPrivateKey)({
99
+ key: parts.certificateContents,
100
+ passphrase: this.certificateConfiguration.certificatePassword,
101
+ format: "pem"
102
+ }).export({
103
+ format: "pem",
104
+ type: "pkcs8"
105
+ }).toString();
106
+ } else {
107
+ privateKey = parts.certificateContents;
127
108
  }
128
- const thumbprint = (0, node_crypto_1.createHash)("sha1") // CodeQL [SM04514] Needed for backward compatibility reason
129
- .update(Buffer.from(publicKeys[0], "base64"))
130
- .digest("hex")
131
- .toUpperCase();
132
- const thumbprintSha256 = (0, node_crypto_1.createHash)("sha256")
133
- .update(Buffer.from(publicKeys[0], "base64"))
134
- .digest("hex")
135
- .toUpperCase();
136
109
  return {
137
- certificateContents,
138
- thumbprintSha256,
139
- thumbprint,
140
- x5c,
110
+ thumbprint: parts.thumbprint,
111
+ thumbprintSha256: parts.thumbprintSha256,
112
+ privateKey,
113
+ x5c: parts.x5c
141
114
  };
115
+ }
116
+ }
117
+ async function parseCertificate(certificateConfiguration, sendCertificateChain) {
118
+ const certificate = certificateConfiguration.certificate;
119
+ const certificatePath = certificateConfiguration.certificatePath;
120
+ const certificateContents = certificate || await (0, import_promises.readFile)(certificatePath, "utf8");
121
+ const x5c = sendCertificateChain ? certificateContents : void 0;
122
+ const certificatePattern = /(-+BEGIN CERTIFICATE-+)(\n\r?|\r\n?)([A-Za-z0-9+/\n\r]+=*)(\n\r?|\r\n?)(-+END CERTIFICATE-+)/g;
123
+ const publicKeys = [];
124
+ let match;
125
+ do {
126
+ match = certificatePattern.exec(certificateContents);
127
+ if (match) {
128
+ publicKeys.push(match[3]);
129
+ }
130
+ } while (match);
131
+ if (publicKeys.length === 0) {
132
+ throw new Error("The file at the specified path does not contain a PEM-encoded certificate.");
133
+ }
134
+ const thumbprint = (0, import_node_crypto.createHash)("sha1").update(Buffer.from(publicKeys[0], "base64")).digest("hex").toUpperCase();
135
+ const thumbprintSha256 = (0, import_node_crypto.createHash)("sha256").update(Buffer.from(publicKeys[0], "base64")).digest("hex").toUpperCase();
136
+ return {
137
+ certificateContents,
138
+ thumbprintSha256,
139
+ thumbprint,
140
+ x5c
141
+ };
142
142
  }
143
- //# sourceMappingURL=clientCertificateCredential.js.map
143
+ // Annotate the CommonJS export names for ESM import in node:
144
+ 0 && (module.exports = {
145
+ ClientCertificateCredential,
146
+ parseCertificate
147
+ });
148
+ //# sourceMappingURL=clientCertificateCredential.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"clientCertificateCredential.js","sourceRoot":"","sources":["../../../src/credentials/clientCertificateCredential.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AccessToken, GetTokenOptions, TokenCredential } from \"@azure/core-auth\";\nimport type { MsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport { createMsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport { createHash, createPrivateKey } from \"node:crypto\";\nimport {\n processMultiTenantRequest,\n resolveAdditionallyAllowedTenantIds,\n} from \"../util/tenantIdUtils.js\";\n\nimport type { CertificateParts } from \"../msal/types.js\";\nimport type { ClientCertificateCredentialOptions } from \"./clientCertificateCredentialOptions.js\";\nimport { credentialLogger } from \"../util/logging.js\";\nimport { readFile } from \"node:fs/promises\";\nimport { tracingClient } from \"../util/tracing.js\";\nimport type {\n ClientCertificateCredentialPEMConfiguration,\n ClientCertificatePEMCertificate,\n ClientCertificatePEMCertificatePath,\n} from \"./clientCertificateCredentialModels.js\";\n\nconst credentialName = \"ClientCertificateCredential\";\nconst logger = credentialLogger(credentialName);\n\n/**\n * Enables authentication to Microsoft Entra ID using a PEM-encoded\n * certificate that is assigned to an App Registration. More information\n * on how to configure certificate authentication can be found here:\n *\n * https://learn.microsoft.com/azure/active-directory/develop/active-directory-certificate-credentials#register-your-certificate-with-azure-ad\n *\n */\nexport class ClientCertificateCredential implements TokenCredential {\n private tenantId: string;\n private additionallyAllowedTenantIds: string[];\n private certificateConfiguration: ClientCertificateCredentialPEMConfiguration;\n private sendCertificateChain?: boolean;\n private msalClient: MsalClient;\n\n /**\n * Creates an instance of the ClientCertificateCredential with the details\n * needed to authenticate against Microsoft Entra ID with a certificate.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param certificatePath - The path to a PEM-encoded public/private key certificate on the filesystem.\n * Ensure that certificate is in PEM format and contains both the public and private keys.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n certificatePath: string,\n options?: ClientCertificateCredentialOptions,\n );\n /**\n * Creates an instance of the ClientCertificateCredential with the details\n * needed to authenticate against Microsoft Entra ID with a certificate.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param configuration - Other parameters required, including the path of the certificate on the filesystem.\n * If the type is ignored, we will throw the value of the path to a PEM certificate.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n configuration: ClientCertificatePEMCertificatePath,\n options?: ClientCertificateCredentialOptions,\n );\n /**\n * Creates an instance of the ClientCertificateCredential with the details\n * needed to authenticate against Microsoft Entra ID with a certificate.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param configuration - Other parameters required, including the PEM-encoded certificate as a string.\n * If the type is ignored, we will throw the value of the PEM-encoded certificate.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n configuration: ClientCertificatePEMCertificate,\n options?: ClientCertificateCredentialOptions,\n );\n constructor(\n tenantId: string,\n clientId: string,\n certificatePathOrConfiguration: string | ClientCertificateCredentialPEMConfiguration,\n options: ClientCertificateCredentialOptions = {},\n ) {\n if (!tenantId || !clientId) {\n throw new Error(`${credentialName}: tenantId and clientId are required parameters.`);\n }\n\n this.tenantId = tenantId;\n this.additionallyAllowedTenantIds = resolveAdditionallyAllowedTenantIds(\n options?.additionallyAllowedTenants,\n );\n\n this.sendCertificateChain = options.sendCertificateChain;\n\n this.certificateConfiguration = {\n ...(typeof certificatePathOrConfiguration === \"string\"\n ? {\n certificatePath: certificatePathOrConfiguration,\n }\n : certificatePathOrConfiguration),\n };\n const certificate = (this.certificateConfiguration as ClientCertificatePEMCertificate)\n .certificate;\n const certificatePath = (this.certificateConfiguration as ClientCertificatePEMCertificatePath)\n .certificatePath;\n if (!this.certificateConfiguration || !(certificate || certificatePath)) {\n throw new Error(\n `${credentialName}: Provide either a PEM certificate in string form, or the path to that certificate in the filesystem. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`,\n );\n }\n if (certificate && certificatePath) {\n throw new Error(\n `${credentialName}: To avoid unexpected behaviors, providing both the contents of a PEM certificate and the path to a PEM certificate is forbidden. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`,\n );\n }\n this.msalClient = createMsalClient(clientId, tenantId, {\n ...options,\n logger,\n tokenCredentialOptions: options,\n });\n }\n\n /**\n * Authenticates with Microsoft Entra ID and returns an access token if successful.\n * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.\n *\n * @param scopes - The list of scopes for which the token will have access.\n * @param options - The options used to configure any requests this\n * TokenCredential implementation might make.\n */\n async getToken(scopes: string | string[], options: GetTokenOptions = {}): Promise<AccessToken> {\n return tracingClient.withSpan(`${credentialName}.getToken`, options, async (newOptions) => {\n newOptions.tenantId = processMultiTenantRequest(\n this.tenantId,\n newOptions,\n this.additionallyAllowedTenantIds,\n logger,\n );\n\n const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];\n const certificate = await this.buildClientCertificate();\n return this.msalClient.getTokenByClientCertificate(arrayScopes, certificate, newOptions);\n });\n }\n\n private async buildClientCertificate(): Promise<CertificateParts> {\n const parts = await parseCertificate(\n this.certificateConfiguration,\n this.sendCertificateChain ?? false,\n );\n\n let privateKey: string;\n if (this.certificateConfiguration.certificatePassword !== undefined) {\n privateKey = createPrivateKey({\n key: parts.certificateContents,\n passphrase: this.certificateConfiguration.certificatePassword,\n format: \"pem\",\n })\n .export({\n format: \"pem\",\n type: \"pkcs8\",\n })\n .toString();\n } else {\n privateKey = parts.certificateContents;\n }\n\n return {\n thumbprint: parts.thumbprint,\n thumbprintSha256: parts.thumbprintSha256,\n privateKey,\n x5c: parts.x5c,\n };\n }\n}\n\n/**\n * Parses a certificate into its relevant parts\n *\n * @param certificateConfiguration - The certificate contents or path to the certificate\n * @param sendCertificateChain - true if the entire certificate chain should be sent for SNI, false otherwise\n * @returns The parsed certificate parts and the certificate contents\n */\nexport async function parseCertificate(\n certificateConfiguration: ClientCertificateCredentialPEMConfiguration,\n sendCertificateChain: boolean,\n): Promise<Omit<CertificateParts, \"privateKey\"> & { certificateContents: string }> {\n const certificate = (certificateConfiguration as ClientCertificatePEMCertificate).certificate;\n const certificatePath = (certificateConfiguration as ClientCertificatePEMCertificatePath)\n .certificatePath;\n const certificateContents = certificate || (await readFile(certificatePath!, \"utf8\"));\n const x5c = sendCertificateChain ? certificateContents : undefined;\n\n const certificatePattern =\n /(-+BEGIN CERTIFICATE-+)(\\n\\r?|\\r\\n?)([A-Za-z0-9+/\\n\\r]+=*)(\\n\\r?|\\r\\n?)(-+END CERTIFICATE-+)/g;\n const publicKeys: string[] = [];\n\n // Match all possible certificates, in the order they are in the file. These will form the chain that is used for x5c\n let match;\n do {\n match = certificatePattern.exec(certificateContents);\n if (match) {\n publicKeys.push(match[3]);\n }\n } while (match);\n\n if (publicKeys.length === 0) {\n throw new Error(\"The file at the specified path does not contain a PEM-encoded certificate.\");\n }\n\n const thumbprint = createHash(\"sha1\") // CodeQL [SM04514] Needed for backward compatibility reason\n .update(Buffer.from(publicKeys[0], \"base64\"))\n .digest(\"hex\")\n .toUpperCase();\n\n const thumbprintSha256 = createHash(\"sha256\")\n .update(Buffer.from(publicKeys[0], \"base64\"))\n .digest(\"hex\")\n .toUpperCase();\n\n return {\n certificateContents,\n thumbprintSha256,\n thumbprint,\n x5c,\n };\n}\n"]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/credentials/clientCertificateCredential.ts"],
4
+ "sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AccessToken, GetTokenOptions, TokenCredential } from \"@azure/core-auth\";\nimport type { MsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport { createMsalClient } from \"../msal/nodeFlows/msalClient.js\";\nimport { createHash, createPrivateKey } from \"node:crypto\";\nimport {\n processMultiTenantRequest,\n resolveAdditionallyAllowedTenantIds,\n} from \"../util/tenantIdUtils.js\";\n\nimport type { CertificateParts } from \"../msal/types.js\";\nimport type { ClientCertificateCredentialOptions } from \"./clientCertificateCredentialOptions.js\";\nimport { credentialLogger } from \"../util/logging.js\";\nimport { readFile } from \"node:fs/promises\";\nimport { tracingClient } from \"../util/tracing.js\";\nimport type {\n ClientCertificateCredentialPEMConfiguration,\n ClientCertificatePEMCertificate,\n ClientCertificatePEMCertificatePath,\n} from \"./clientCertificateCredentialModels.js\";\n\nconst credentialName = \"ClientCertificateCredential\";\nconst logger = credentialLogger(credentialName);\n\n/**\n * Enables authentication to Microsoft Entra ID using a PEM-encoded\n * certificate that is assigned to an App Registration. More information\n * on how to configure certificate authentication can be found here:\n *\n * https://learn.microsoft.com/azure/active-directory/develop/active-directory-certificate-credentials#register-your-certificate-with-azure-ad\n *\n */\nexport class ClientCertificateCredential implements TokenCredential {\n private tenantId: string;\n private additionallyAllowedTenantIds: string[];\n private certificateConfiguration: ClientCertificateCredentialPEMConfiguration;\n private sendCertificateChain?: boolean;\n private msalClient: MsalClient;\n\n /**\n * Creates an instance of the ClientCertificateCredential with the details\n * needed to authenticate against Microsoft Entra ID with a certificate.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param certificatePath - The path to a PEM-encoded public/private key certificate on the filesystem.\n * Ensure that certificate is in PEM format and contains both the public and private keys.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n certificatePath: string,\n options?: ClientCertificateCredentialOptions,\n );\n /**\n * Creates an instance of the ClientCertificateCredential with the details\n * needed to authenticate against Microsoft Entra ID with a certificate.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param configuration - Other parameters required, including the path of the certificate on the filesystem.\n * If the type is ignored, we will throw the value of the path to a PEM certificate.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n configuration: ClientCertificatePEMCertificatePath,\n options?: ClientCertificateCredentialOptions,\n );\n /**\n * Creates an instance of the ClientCertificateCredential with the details\n * needed to authenticate against Microsoft Entra ID with a certificate.\n *\n * @param tenantId - The Microsoft Entra tenant (directory) ID.\n * @param clientId - The client (application) ID of an App Registration in the tenant.\n * @param configuration - Other parameters required, including the PEM-encoded certificate as a string.\n * If the type is ignored, we will throw the value of the PEM-encoded certificate.\n * @param options - Options for configuring the client which makes the authentication request.\n */\n constructor(\n tenantId: string,\n clientId: string,\n configuration: ClientCertificatePEMCertificate,\n options?: ClientCertificateCredentialOptions,\n );\n constructor(\n tenantId: string,\n clientId: string,\n certificatePathOrConfiguration: string | ClientCertificateCredentialPEMConfiguration,\n options: ClientCertificateCredentialOptions = {},\n ) {\n if (!tenantId || !clientId) {\n throw new Error(`${credentialName}: tenantId and clientId are required parameters.`);\n }\n\n this.tenantId = tenantId;\n this.additionallyAllowedTenantIds = resolveAdditionallyAllowedTenantIds(\n options?.additionallyAllowedTenants,\n );\n\n this.sendCertificateChain = options.sendCertificateChain;\n\n this.certificateConfiguration = {\n ...(typeof certificatePathOrConfiguration === \"string\"\n ? {\n certificatePath: certificatePathOrConfiguration,\n }\n : certificatePathOrConfiguration),\n };\n const certificate = (this.certificateConfiguration as ClientCertificatePEMCertificate)\n .certificate;\n const certificatePath = (this.certificateConfiguration as ClientCertificatePEMCertificatePath)\n .certificatePath;\n if (!this.certificateConfiguration || !(certificate || certificatePath)) {\n throw new Error(\n `${credentialName}: Provide either a PEM certificate in string form, or the path to that certificate in the filesystem. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`,\n );\n }\n if (certificate && certificatePath) {\n throw new Error(\n `${credentialName}: To avoid unexpected behaviors, providing both the contents of a PEM certificate and the path to a PEM certificate is forbidden. To troubleshoot, visit https://aka.ms/azsdk/js/identity/serviceprincipalauthentication/troubleshoot.`,\n );\n }\n this.msalClient = createMsalClient(clientId, tenantId, {\n ...options,\n logger,\n tokenCredentialOptions: options,\n });\n }\n\n /**\n * Authenticates with Microsoft Entra ID and returns an access token if successful.\n * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure.\n *\n * @param scopes - The list of scopes for which the token will have access.\n * @param options - The options used to configure any requests this\n * TokenCredential implementation might make.\n */\n async getToken(scopes: string | string[], options: GetTokenOptions = {}): Promise<AccessToken> {\n return tracingClient.withSpan(`${credentialName}.getToken`, options, async (newOptions) => {\n newOptions.tenantId = processMultiTenantRequest(\n this.tenantId,\n newOptions,\n this.additionallyAllowedTenantIds,\n logger,\n );\n\n const arrayScopes = Array.isArray(scopes) ? scopes : [scopes];\n const certificate = await this.buildClientCertificate();\n return this.msalClient.getTokenByClientCertificate(arrayScopes, certificate, newOptions);\n });\n }\n\n private async buildClientCertificate(): Promise<CertificateParts> {\n const parts = await parseCertificate(\n this.certificateConfiguration,\n this.sendCertificateChain ?? false,\n );\n\n let privateKey: string;\n if (this.certificateConfiguration.certificatePassword !== undefined) {\n privateKey = createPrivateKey({\n key: parts.certificateContents,\n passphrase: this.certificateConfiguration.certificatePassword,\n format: \"pem\",\n })\n .export({\n format: \"pem\",\n type: \"pkcs8\",\n })\n .toString();\n } else {\n privateKey = parts.certificateContents;\n }\n\n return {\n thumbprint: parts.thumbprint,\n thumbprintSha256: parts.thumbprintSha256,\n privateKey,\n x5c: parts.x5c,\n };\n }\n}\n\n/**\n * Parses a certificate into its relevant parts\n *\n * @param certificateConfiguration - The certificate contents or path to the certificate\n * @param sendCertificateChain - true if the entire certificate chain should be sent for SNI, false otherwise\n * @returns The parsed certificate parts and the certificate contents\n */\nexport async function parseCertificate(\n certificateConfiguration: ClientCertificateCredentialPEMConfiguration,\n sendCertificateChain: boolean,\n): Promise<Omit<CertificateParts, \"privateKey\"> & { certificateContents: string }> {\n const certificate = (certificateConfiguration as ClientCertificatePEMCertificate).certificate;\n const certificatePath = (certificateConfiguration as ClientCertificatePEMCertificatePath)\n .certificatePath;\n const certificateContents = certificate || (await readFile(certificatePath!, \"utf8\"));\n const x5c = sendCertificateChain ? certificateContents : undefined;\n\n const certificatePattern =\n /(-+BEGIN CERTIFICATE-+)(\\n\\r?|\\r\\n?)([A-Za-z0-9+/\\n\\r]+=*)(\\n\\r?|\\r\\n?)(-+END CERTIFICATE-+)/g;\n const publicKeys: string[] = [];\n\n // Match all possible certificates, in the order they are in the file. These will form the chain that is used for x5c\n let match;\n do {\n match = certificatePattern.exec(certificateContents);\n if (match) {\n publicKeys.push(match[3]);\n }\n } while (match);\n\n if (publicKeys.length === 0) {\n throw new Error(\"The file at the specified path does not contain a PEM-encoded certificate.\");\n }\n\n const thumbprint = createHash(\"sha1\") // CodeQL [SM04514] Needed for backward compatibility reason\n .update(Buffer.from(publicKeys[0], \"base64\"))\n .digest(\"hex\")\n .toUpperCase();\n\n const thumbprintSha256 = createHash(\"sha256\")\n .update(Buffer.from(publicKeys[0], \"base64\"))\n .digest(\"hex\")\n .toUpperCase();\n\n return {\n certificateContents,\n thumbprintSha256,\n thumbprint,\n x5c,\n };\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"clientCertificateCredentialModels.d.ts","sourceRoot":"","sources":["../../../src/credentials/clientCertificateCredentialModels.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AACD;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AACD;;GAEG;AACH,MAAM,MAAM,2CAA2C,GACnD,+BAA+B,GAC/B,mCAAmC,CAAC"}
1
+ {"version":3,"file":"clientCertificateCredentialModels.d.ts","sourceRoot":"","sources":["../../../src/credentials/clientCertificateCredentialModels.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AACD;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AACD;;GAEG;AACH,MAAM,MAAM,2CAA2C,GACrD,+BAA+B,GAAG,mCAAmC,CAAC"}
@@ -1,5 +1,16 @@
1
- "use strict";
2
- // Copyright (c) Microsoft Corporation.
3
- // Licensed under the MIT License.
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- //# sourceMappingURL=clientCertificateCredentialModels.js.map
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from))
8
+ if (!__hasOwnProp.call(to, key) && key !== except)
9
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ }
11
+ return to;
12
+ };
13
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
+ var clientCertificateCredentialModels_exports = {};
15
+ module.exports = __toCommonJS(clientCertificateCredentialModels_exports);
16
+ //# sourceMappingURL=clientCertificateCredentialModels.js.map