keycloakify 10.0.0-rc.2 → 10.0.0-rc.20

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 (567) hide show
  1. package/PUBLIC_URL.js +1 -1
  2. package/PUBLIC_URL.js.map +1 -1
  3. package/account/Fallback.js +3 -0
  4. package/account/Fallback.js.map +1 -1
  5. package/account/Template.js +7 -7
  6. package/account/Template.js.map +1 -1
  7. package/account/i18n/baseMessages/index.js.map +1 -1
  8. package/account/i18n/i18n.d.ts +3 -4
  9. package/account/i18n/i18n.js +38 -31
  10. package/account/i18n/i18n.js.map +1 -1
  11. package/account/index.d.ts +1 -1
  12. package/account/kcContext/KcContext.d.ts +62 -59
  13. package/account/kcContext/KcContext.js.map +1 -1
  14. package/account/kcContext/createGetKcContext.d.ts +3 -3
  15. package/account/kcContext/createGetKcContext.js +20 -15
  16. package/account/kcContext/createGetKcContext.js.map +1 -1
  17. package/account/kcContext/getKcContext.js.map +1 -1
  18. package/account/kcContext/getKcContextFromWindow.d.ts +3 -1
  19. package/account/kcContext/getKcContextFromWindow.js +1 -1
  20. package/account/kcContext/getKcContextFromWindow.js.map +1 -1
  21. package/account/kcContext/kcContextMocks.js +155 -143
  22. package/account/kcContext/kcContextMocks.js.map +1 -1
  23. package/account/lib/useGetClassName.js +14 -14
  24. package/account/lib/useGetClassName.js.map +1 -1
  25. package/account/pages/Account.js +2 -2
  26. package/account/pages/Account.js.map +1 -1
  27. package/account/pages/Applications.js +3 -3
  28. package/account/pages/Applications.js.map +1 -1
  29. package/account/pages/FederatedIdentity.d.ts +7 -0
  30. package/account/pages/FederatedIdentity.js +8 -0
  31. package/account/pages/FederatedIdentity.js.map +1 -0
  32. package/account/pages/Log.js +2 -2
  33. package/account/pages/Log.js.map +1 -1
  34. package/account/pages/Password.js +9 -11
  35. package/account/pages/Password.js.map +1 -1
  36. package/account/pages/Sessions.js +1 -5
  37. package/account/pages/Sessions.js.map +1 -1
  38. package/account/pages/Totp.js +5 -5
  39. package/account/pages/Totp.js.map +1 -1
  40. package/bin/246.index.js +466 -0
  41. package/bin/420.index.js +508 -0
  42. package/bin/509.index.js +438 -0
  43. package/bin/772.index.js +1524 -0
  44. package/bin/main.js +155612 -0
  45. package/bin/{keycloakify/generateFtl/pageId.d.ts → shared/constants.d.ts} +16 -1
  46. package/bin/shared/constants.js +63 -0
  47. package/bin/shared/constants.js.map +1 -0
  48. package/lib/BASE_URL.js.map +1 -1
  49. package/lib/isStorybook.js +2 -1
  50. package/lib/isStorybook.js.map +1 -1
  51. package/lib/useGetClassName.js.map +1 -1
  52. package/login/Fallback.js.map +1 -1
  53. package/login/Template.js +17 -17
  54. package/login/Template.js.map +1 -1
  55. package/login/UserProfileFormFields.js +59 -59
  56. package/login/UserProfileFormFields.js.map +1 -1
  57. package/login/i18n/baseMessages/ca.d.ts +1 -1
  58. package/login/i18n/baseMessages/ca.js +1 -1
  59. package/login/i18n/baseMessages/el.d.ts +0 -1
  60. package/login/i18n/baseMessages/el.js +0 -1
  61. package/login/i18n/baseMessages/el.js.map +1 -1
  62. package/login/i18n/baseMessages/en.d.ts +1 -1
  63. package/login/i18n/baseMessages/en.js +1 -1
  64. package/login/i18n/baseMessages/es.d.ts +1 -1
  65. package/login/i18n/baseMessages/es.js +1 -1
  66. package/login/i18n/baseMessages/fa.d.ts +0 -1
  67. package/login/i18n/baseMessages/fa.js +0 -1
  68. package/login/i18n/baseMessages/fa.js.map +1 -1
  69. package/login/i18n/baseMessages/hu.d.ts +1 -1
  70. package/login/i18n/baseMessages/hu.js +1 -1
  71. package/login/i18n/baseMessages/index.d.ts +1 -2
  72. package/login/i18n/baseMessages/index.js.map +1 -1
  73. package/login/i18n/baseMessages/zh-CN.d.ts +1 -1
  74. package/login/i18n/baseMessages/zh-CN.js +1 -1
  75. package/login/i18n/i18n.d.ts +5 -5
  76. package/login/i18n/i18n.js +59 -41
  77. package/login/i18n/i18n.js.map +1 -1
  78. package/login/index.d.ts +1 -1
  79. package/login/kcContext/KcContext.d.ts +1 -0
  80. package/login/kcContext/KcContext.js +1 -0
  81. package/login/kcContext/KcContext.js.map +1 -1
  82. package/login/kcContext/createGetKcContext.d.ts +3 -3
  83. package/login/kcContext/createGetKcContext.js +30 -22
  84. package/login/kcContext/createGetKcContext.js.map +1 -1
  85. package/login/kcContext/getKcContext.js.map +1 -1
  86. package/login/kcContext/getKcContextFromWindow.d.ts +3 -1
  87. package/login/kcContext/getKcContextFromWindow.js +1 -1
  88. package/login/kcContext/getKcContextFromWindow.js.map +1 -1
  89. package/login/kcContext/kcContextMocks.js +235 -232
  90. package/login/kcContext/kcContextMocks.js.map +1 -1
  91. package/login/lib/useDownloadTerms.js +5 -6
  92. package/login/lib/useDownloadTerms.js.map +1 -1
  93. package/login/lib/useGetClassName.js +112 -112
  94. package/login/lib/useGetClassName.js.map +1 -1
  95. package/login/lib/useUserProfileForm.js +188 -188
  96. package/login/lib/useUserProfileForm.js.map +1 -1
  97. package/login/pages/Code.js +1 -1
  98. package/login/pages/Code.js.map +1 -1
  99. package/login/pages/DeleteAccountConfirm.js +5 -1
  100. package/login/pages/DeleteAccountConfirm.js.map +1 -1
  101. package/login/pages/DeleteCredential.js +1 -1
  102. package/login/pages/DeleteCredential.js.map +1 -1
  103. package/login/pages/Error.js +1 -1
  104. package/login/pages/Error.js.map +1 -1
  105. package/login/pages/FrontchannelLogout.js +1 -1
  106. package/login/pages/FrontchannelLogout.js.map +1 -1
  107. package/login/pages/IdpReviewUserProfile.js +1 -1
  108. package/login/pages/IdpReviewUserProfile.js.map +1 -1
  109. package/login/pages/Info.js +5 -5
  110. package/login/pages/Info.js.map +1 -1
  111. package/login/pages/Login.js +4 -4
  112. package/login/pages/Login.js.map +1 -1
  113. package/login/pages/LoginConfigTotp.js +2 -2
  114. package/login/pages/LoginConfigTotp.js.map +1 -1
  115. package/login/pages/LoginIdpLinkConfirm.js +1 -1
  116. package/login/pages/LoginIdpLinkConfirm.js.map +1 -1
  117. package/login/pages/LoginIdpLinkEmail.js +1 -1
  118. package/login/pages/LoginIdpLinkEmail.js.map +1 -1
  119. package/login/pages/LoginOauth2DeviceVerifyUserCode.js +1 -1
  120. package/login/pages/LoginOauth2DeviceVerifyUserCode.js.map +1 -1
  121. package/login/pages/LoginOauthGrant.js +2 -2
  122. package/login/pages/LoginOauthGrant.js.map +1 -1
  123. package/login/pages/LoginOtp.js +1 -1
  124. package/login/pages/LoginOtp.js.map +1 -1
  125. package/login/pages/LoginPageExpired.js +1 -1
  126. package/login/pages/LoginPageExpired.js.map +1 -1
  127. package/login/pages/LoginPassword.js +3 -3
  128. package/login/pages/LoginPassword.js.map +1 -1
  129. package/login/pages/LoginRecoveryAuthnCodeConfig.js +6 -6
  130. package/login/pages/LoginRecoveryAuthnCodeConfig.js.map +1 -1
  131. package/login/pages/LoginRecoveryAuthnCodeInput.js +1 -1
  132. package/login/pages/LoginRecoveryAuthnCodeInput.js.map +1 -1
  133. package/login/pages/LoginResetOtp.js +1 -1
  134. package/login/pages/LoginResetOtp.js.map +1 -1
  135. package/login/pages/LoginResetPassword.js +2 -2
  136. package/login/pages/LoginResetPassword.js.map +1 -1
  137. package/login/pages/LoginUpdatePassword.js +3 -3
  138. package/login/pages/LoginUpdatePassword.js.map +1 -1
  139. package/login/pages/LoginUpdateProfile.js +2 -4
  140. package/login/pages/LoginUpdateProfile.js.map +1 -1
  141. package/login/pages/LoginUsername.js +3 -3
  142. package/login/pages/LoginUsername.js.map +1 -1
  143. package/login/pages/LoginVerifyEmail.js +1 -1
  144. package/login/pages/LoginVerifyEmail.js.map +1 -1
  145. package/login/pages/LoginX509Info.js +1 -1
  146. package/login/pages/LoginX509Info.js.map +1 -1
  147. package/login/pages/LogoutConfirm.js +1 -1
  148. package/login/pages/LogoutConfirm.js.map +1 -1
  149. package/login/pages/Register.js +4 -8
  150. package/login/pages/Register.js.map +1 -1
  151. package/login/pages/SamlPostForm.js +1 -1
  152. package/login/pages/SamlPostForm.js.map +1 -1
  153. package/login/pages/SelectAuthenticator.js +2 -2
  154. package/login/pages/SelectAuthenticator.js.map +1 -1
  155. package/login/pages/Terms.js +1 -1
  156. package/login/pages/Terms.js.map +1 -1
  157. package/login/pages/UpdateEmail.js +3 -5
  158. package/login/pages/UpdateEmail.js.map +1 -1
  159. package/login/pages/WebauthnAuthenticate.js +17 -14
  160. package/login/pages/WebauthnAuthenticate.js.map +1 -1
  161. package/login/pages/WebauthnError.js +2 -2
  162. package/login/pages/WebauthnError.js.map +1 -1
  163. package/login/pages/WebauthnRegister.js +10 -10
  164. package/login/pages/WebauthnRegister.js.map +1 -1
  165. package/package.json +103 -512
  166. package/src/PUBLIC_URL.ts +4 -1
  167. package/src/account/Fallback.tsx +3 -0
  168. package/src/account/Template.tsx +7 -10
  169. package/src/account/TemplateProps.ts +4 -1
  170. package/src/account/i18n/i18n.tsx +44 -37
  171. package/src/account/index.ts +1 -1
  172. package/src/account/kcContext/KcContext.ts +76 -63
  173. package/src/account/kcContext/createGetKcContext.ts +48 -22
  174. package/src/account/kcContext/getKcContext.ts +3 -1
  175. package/src/account/kcContext/getKcContextFromWindow.ts +7 -3
  176. package/src/account/kcContext/kcContextMocks.ts +172 -162
  177. package/src/account/lib/useGetClassName.ts +15 -14
  178. package/src/account/pages/Account.tsx +2 -2
  179. package/src/account/pages/Applications.tsx +2 -2
  180. package/src/account/pages/FederatedIdentity.tsx +58 -0
  181. package/src/account/pages/Log.tsx +1 -1
  182. package/src/account/pages/Password.tsx +8 -8
  183. package/src/account/pages/Sessions.tsx +0 -3
  184. package/src/account/pages/Totp.tsx +23 -26
  185. package/src/bin/copy-keycloak-resources-to-public.ts +10 -106
  186. package/src/bin/download-keycloak-default-theme.ts +63 -0
  187. package/src/bin/eject-page.ts +176 -0
  188. package/src/bin/initialize-email-theme.ts +38 -29
  189. package/src/bin/keycloakify/buildJars/buildJar.ts +192 -72
  190. package/src/bin/keycloakify/buildJars/buildJars.ts +41 -23
  191. package/src/bin/keycloakify/buildJars/extensionVersions.ts +2 -1
  192. package/src/bin/keycloakify/buildJars/generatePom.ts +12 -4
  193. package/src/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.ts +73 -21
  194. package/src/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +182 -252
  195. package/src/bin/keycloakify/generateFtl/generateFtl.ts +59 -15
  196. package/src/bin/keycloakify/generateFtl/index.ts +0 -1
  197. package/src/bin/keycloakify/{generateTheme → generateSrcMainResources}/bringInAccountV1.ts +34 -22
  198. package/src/bin/keycloakify/{generateTheme → generateSrcMainResources}/generateMessageProperties.ts +72 -20
  199. package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResources.ts +34 -0
  200. package/src/bin/keycloakify/{generateTheme/generateSrcMainResources.ts → generateSrcMainResources/generateSrcMainResourcesForMainTheme.ts} +113 -74
  201. package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResourcesForThemeVariant.ts +80 -0
  202. package/src/bin/keycloakify/generateSrcMainResources/index.ts +1 -0
  203. package/src/bin/keycloakify/{generateTheme → generateSrcMainResources}/readExtraPageNames.ts +21 -8
  204. package/src/bin/keycloakify/generateSrcMainResources/readFieldNameUsage.ts +83 -0
  205. package/src/bin/keycloakify/generateStartKeycloakTestingContainer.ts +31 -18
  206. package/src/bin/keycloakify/index.ts +0 -7
  207. package/src/bin/keycloakify/keycloakify.ts +77 -69
  208. package/src/bin/keycloakify/replacers/replaceImportsInCssCode.ts +26 -7
  209. package/src/bin/keycloakify/replacers/replaceImportsInInlineCssCode.ts +8 -4
  210. package/src/bin/keycloakify/replacers/replaceImportsInJsCode/replaceImportsInJsCode.ts +7 -4
  211. package/src/bin/keycloakify/replacers/replaceImportsInJsCode/vite.ts +25 -7
  212. package/src/bin/keycloakify/replacers/replaceImportsInJsCode/webpack.ts +50 -12
  213. package/src/bin/main.ts +212 -0
  214. package/src/bin/shared/KeycloakVersionRange.ts +9 -0
  215. package/src/bin/shared/buildOptions.ts +307 -0
  216. package/src/bin/{keycloakify/generateFtl/pageId.ts → shared/constants.ts} +31 -1
  217. package/src/bin/shared/copyKeycloakResourcesToPublic.ts +104 -0
  218. package/src/bin/shared/downloadKeycloakDefaultTheme.ts +207 -0
  219. package/src/bin/shared/downloadKeycloakStaticResources.ts +53 -0
  220. package/src/bin/shared/getJarFileBasename.ts +11 -0
  221. package/src/bin/{getThemeSrcDirPath.ts → shared/getThemeSrcDirPath.ts} +6 -3
  222. package/src/bin/shared/metaInfKeycloakThemes.ts +61 -0
  223. package/src/bin/shared/promptKeycloakVersion.ts +125 -0
  224. package/src/bin/start-keycloak/appBuild.ts +129 -0
  225. package/src/bin/start-keycloak/index.ts +1 -0
  226. package/src/bin/start-keycloak/keycloakifyBuild.ts +41 -0
  227. package/src/bin/start-keycloak/myrealm-realm-23.json +2142 -0
  228. package/src/bin/start-keycloak/myrealm-realm-24.json +2318 -0
  229. package/src/bin/start-keycloak/start-keycloak.ts +467 -0
  230. package/src/bin/tools/SemVer.ts +32 -13
  231. package/src/bin/tools/String.prototype.replaceAll.ts +9 -2
  232. package/src/bin/tools/crawl.ts +4 -1
  233. package/src/bin/tools/crc32.ts +42 -24
  234. package/src/bin/tools/downloadAndExtractArchive/downloadAndExtractArchive.ts +262 -0
  235. package/src/bin/tools/downloadAndExtractArchive/fetchProxyOptions.ts +96 -0
  236. package/src/bin/tools/downloadAndExtractArchive/index.ts +1 -0
  237. package/src/bin/tools/extractArchive.ts +132 -0
  238. package/src/bin/tools/fetchProxyOptions.ts +31 -8
  239. package/src/bin/tools/fs.rmSync.ts +4 -4
  240. package/src/bin/tools/getAbsoluteAndInOsFormatPath.ts +17 -2
  241. package/src/bin/tools/getNpmWorkspaceRootDirPath.ts +73 -0
  242. package/src/bin/tools/octokit-addons/getLatestsSemVersionedTag.ts +8 -2
  243. package/src/bin/tools/octokit-addons/listTags.ts +15 -4
  244. package/src/bin/tools/partitionPromiseSettledResults.ts +12 -3
  245. package/src/bin/tools/{readThisNpmProjectVersion.ts → readThisNpmPackageVersion.ts} +6 -2
  246. package/src/bin/tools/transformCodebase.ts +29 -10
  247. package/src/bin/tools/trimIndent.ts +4 -1
  248. package/src/lib/isStorybook.ts +3 -1
  249. package/src/lib/useGetClassName.ts +12 -3
  250. package/src/login/Template.tsx +20 -36
  251. package/src/login/TemplateProps.ts +4 -1
  252. package/src/login/UserProfileFormFields.tsx +46 -47
  253. package/src/login/i18n/baseMessages/ca.ts +1 -1
  254. package/src/login/i18n/baseMessages/el.ts +0 -1
  255. package/src/login/i18n/baseMessages/en.ts +1 -1
  256. package/src/login/i18n/baseMessages/es.ts +1 -1
  257. package/src/login/i18n/baseMessages/fa.ts +0 -1
  258. package/src/login/i18n/baseMessages/hu.ts +1 -1
  259. package/src/login/i18n/baseMessages/zh-CN.ts +1 -1
  260. package/src/login/i18n/i18n.tsx +77 -54
  261. package/src/login/index.ts +1 -1
  262. package/src/login/kcContext/KcContext.ts +23 -4
  263. package/src/login/kcContext/createGetKcContext.ts +84 -37
  264. package/src/login/kcContext/getKcContext.ts +3 -1
  265. package/src/login/kcContext/getKcContextFromWindow.ts +7 -3
  266. package/src/login/kcContext/kcContextMocks.ts +340 -326
  267. package/src/login/lib/useDownloadTerms.ts +13 -9
  268. package/src/login/lib/useGetClassName.ts +119 -112
  269. package/src/login/lib/useUserProfileForm.tsx +227 -213
  270. package/src/login/pages/Code.tsx +1 -1
  271. package/src/login/pages/DeleteAccountConfirm.tsx +9 -3
  272. package/src/login/pages/FrontchannelLogout.tsx +1 -1
  273. package/src/login/pages/IdpReviewUserProfile.tsx +1 -1
  274. package/src/login/pages/Login.tsx +3 -3
  275. package/src/login/pages/LoginRecoveryAuthnCodeConfig.tsx +3 -3
  276. package/src/login/pages/LoginResetPassword.tsx +2 -2
  277. package/src/login/pages/LoginUpdateProfile.tsx +1 -1
  278. package/src/login/pages/LoginUsername.tsx +3 -3
  279. package/src/login/pages/Register.tsx +1 -1
  280. package/src/login/pages/UpdateEmail.tsx +1 -1
  281. package/src/login/pages/WebauthnAuthenticate.tsx +11 -8
  282. package/src/login/pages/WebauthnRegister.tsx +8 -8
  283. package/src/tools/AndByDiscriminatingKey.ts +12 -6
  284. package/src/tools/Array.prototype.every.ts +4 -1
  285. package/src/tools/LazyOrNot.ts +3 -1
  286. package/src/tools/StatefulObservable/README.md +16 -0
  287. package/src/tools/StatefulObservable/StatefulObservable.ts +58 -0
  288. package/src/tools/StatefulObservable/hooks/index.ts +2 -0
  289. package/src/tools/StatefulObservable/hooks/useObservable.ts +25 -0
  290. package/src/tools/StatefulObservable/hooks/useRerenderOnChange.ts +19 -0
  291. package/src/tools/StatefulObservable/index.ts +2 -0
  292. package/src/tools/clsx.ts +7 -1
  293. package/src/tools/deepAssign.ts +15 -8
  294. package/src/tools/deepClone.ts +3 -1
  295. package/src/tools/formatNumber.ts +4 -1
  296. package/src/tools/useConstCallback.ts +3 -1
  297. package/src/tools/useInsertLinkTags.ts +20 -7
  298. package/src/tools/useInsertScriptTags.ts +7 -2
  299. package/src/tools/useSetClassName.ts +4 -1
  300. package/src/vite-plugin/tsconfig.json +2 -1
  301. package/src/vite-plugin/vite-plugin.ts +64 -52
  302. package/tools/Array.prototype.every.js +2 -1
  303. package/tools/Array.prototype.every.js.map +1 -1
  304. package/tools/HTMLElement.prototype.prepend.js.map +1 -1
  305. package/tools/StatefulObservable/StatefulObservable.d.ts +8 -0
  306. package/tools/StatefulObservable/StatefulObservable.js +36 -0
  307. package/tools/StatefulObservable/StatefulObservable.js.map +1 -0
  308. package/tools/StatefulObservable/hooks/index.d.ts +2 -0
  309. package/tools/StatefulObservable/hooks/index.js +3 -0
  310. package/tools/StatefulObservable/hooks/index.js.map +1 -0
  311. package/tools/StatefulObservable/hooks/useObservable.d.ts +8 -0
  312. package/tools/StatefulObservable/hooks/useObservable.js +17 -0
  313. package/tools/StatefulObservable/hooks/useObservable.js.map +1 -0
  314. package/tools/StatefulObservable/hooks/useRerenderOnChange.d.ts +5 -0
  315. package/tools/StatefulObservable/hooks/useRerenderOnChange.js +14 -0
  316. package/tools/StatefulObservable/hooks/useRerenderOnChange.js.map +1 -0
  317. package/tools/StatefulObservable/index.d.ts +2 -0
  318. package/tools/StatefulObservable/index.js +3 -0
  319. package/tools/StatefulObservable/index.js.map +1 -0
  320. package/tools/clsx.js.map +1 -1
  321. package/tools/deepAssign.js +9 -7
  322. package/tools/deepAssign.js.map +1 -1
  323. package/tools/deepClone.js.map +1 -1
  324. package/tools/formatNumber.js.map +1 -1
  325. package/tools/memoize.js.map +1 -1
  326. package/tools/useConstCallback.js.map +1 -1
  327. package/tools/useInsertLinkTags.js +5 -4
  328. package/tools/useInsertLinkTags.js.map +1 -1
  329. package/tools/useInsertScriptTags.js +5 -2
  330. package/tools/useInsertScriptTags.js.map +1 -1
  331. package/tools/useSetClassName.js.map +1 -1
  332. package/vite-plugin/index.js +50234 -3
  333. package/bin/constants.d.ts +0 -10
  334. package/bin/constants.js +0 -13
  335. package/bin/constants.js.map +0 -1
  336. package/bin/copy-keycloak-resources-to-public.d.ts +0 -14
  337. package/bin/copy-keycloak-resources-to-public.js +0 -216
  338. package/bin/copy-keycloak-resources-to-public.js.map +0 -1
  339. package/bin/download-builtin-keycloak-theme.d.ts +0 -10
  340. package/bin/download-builtin-keycloak-theme.js +0 -352
  341. package/bin/download-builtin-keycloak-theme.js.map +0 -1
  342. package/bin/downloadAndUnzip.d.ts +0 -16
  343. package/bin/downloadAndUnzip.js +0 -255
  344. package/bin/downloadAndUnzip.js.map +0 -1
  345. package/bin/eject-keycloak-page.d.ts +0 -2
  346. package/bin/eject-keycloak-page.js +0 -132
  347. package/bin/eject-keycloak-page.js.map +0 -1
  348. package/bin/getThemeSrcDirPath.d.ts +0 -6
  349. package/bin/getThemeSrcDirPath.js +0 -123
  350. package/bin/getThemeSrcDirPath.js.map +0 -1
  351. package/bin/initialize-email-theme.d.ts +0 -2
  352. package/bin/initialize-email-theme.js +0 -121
  353. package/bin/initialize-email-theme.js.map +0 -1
  354. package/bin/keycloakify/buildJars/buildJar.d.ts +0 -14
  355. package/bin/keycloakify/buildJars/buildJar.js +0 -224
  356. package/bin/keycloakify/buildJars/buildJar.js.map +0 -1
  357. package/bin/keycloakify/buildJars/buildJars.d.ts +0 -10
  358. package/bin/keycloakify/buildJars/buildJars.js +0 -95
  359. package/bin/keycloakify/buildJars/buildJars.js.map +0 -1
  360. package/bin/keycloakify/buildJars/extensionVersions.d.ts +0 -12
  361. package/bin/keycloakify/buildJars/extensionVersions.js +0 -7
  362. package/bin/keycloakify/buildJars/extensionVersions.js.map +0 -1
  363. package/bin/keycloakify/buildJars/generatePom.d.ts +0 -13
  364. package/bin/keycloakify/buildJars/generatePom.js +0 -95
  365. package/bin/keycloakify/buildJars/generatePom.js.map +0 -1
  366. package/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.d.ts +0 -6
  367. package/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.js +0 -35
  368. package/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.js.map +0 -1
  369. package/bin/keycloakify/buildJars/index.d.ts +0 -1
  370. package/bin/keycloakify/buildJars/index.js +0 -18
  371. package/bin/keycloakify/buildJars/index.js.map +0 -1
  372. package/bin/keycloakify/buildOptions/UserProvidedBuildOptions.d.ts +0 -35
  373. package/bin/keycloakify/buildOptions/UserProvidedBuildOptions.js +0 -14
  374. package/bin/keycloakify/buildOptions/UserProvidedBuildOptions.js.map +0 -1
  375. package/bin/keycloakify/buildOptions/buildOptions.d.ts +0 -25
  376. package/bin/keycloakify/buildOptions/buildOptions.js +0 -178
  377. package/bin/keycloakify/buildOptions/buildOptions.js.map +0 -1
  378. package/bin/keycloakify/buildOptions/getCacheDirPath.d.ts +0 -5
  379. package/bin/keycloakify/buildOptions/getCacheDirPath.js +0 -22
  380. package/bin/keycloakify/buildOptions/getCacheDirPath.js.map +0 -1
  381. package/bin/keycloakify/buildOptions/getNpmWorkspaceRootDirPath.d.ts +0 -5
  382. package/bin/keycloakify/buildOptions/getNpmWorkspaceRootDirPath.js +0 -86
  383. package/bin/keycloakify/buildOptions/getNpmWorkspaceRootDirPath.js.map +0 -1
  384. package/bin/keycloakify/buildOptions/getReactAppRootDirPath.d.ts +0 -5
  385. package/bin/keycloakify/buildOptions/getReactAppRootDirPath.js +0 -26
  386. package/bin/keycloakify/buildOptions/getReactAppRootDirPath.js.map +0 -1
  387. package/bin/keycloakify/buildOptions/index.d.ts +0 -1
  388. package/bin/keycloakify/buildOptions/index.js +0 -18
  389. package/bin/keycloakify/buildOptions/index.js.map +0 -1
  390. package/bin/keycloakify/buildOptions/parsedPackageJson.d.ts +0 -10
  391. package/bin/keycloakify/buildOptions/parsedPackageJson.js +0 -49
  392. package/bin/keycloakify/buildOptions/parsedPackageJson.js.map +0 -1
  393. package/bin/keycloakify/buildOptions/resolvedViteConfig.d.ts +0 -13
  394. package/bin/keycloakify/buildOptions/resolvedViteConfig.js +0 -77
  395. package/bin/keycloakify/buildOptions/resolvedViteConfig.js.map +0 -1
  396. package/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +0 -604
  397. package/bin/keycloakify/generateFtl/generateFtl.d.ts +0 -23
  398. package/bin/keycloakify/generateFtl/generateFtl.js +0 -169
  399. package/bin/keycloakify/generateFtl/generateFtl.js.map +0 -1
  400. package/bin/keycloakify/generateFtl/index.d.ts +0 -2
  401. package/bin/keycloakify/generateFtl/index.js +0 -19
  402. package/bin/keycloakify/generateFtl/index.js.map +0 -1
  403. package/bin/keycloakify/generateFtl/pageId.js +0 -41
  404. package/bin/keycloakify/generateFtl/pageId.js.map +0 -1
  405. package/bin/keycloakify/generateStartKeycloakTestingContainer.d.ts +0 -11
  406. package/bin/keycloakify/generateStartKeycloakTestingContainer.js +0 -89
  407. package/bin/keycloakify/generateStartKeycloakTestingContainer.js.map +0 -1
  408. package/bin/keycloakify/generateTheme/bringInAccountV1.d.ts +0 -9
  409. package/bin/keycloakify/generateTheme/bringInAccountV1.js +0 -153
  410. package/bin/keycloakify/generateTheme/bringInAccountV1.js.map +0 -1
  411. package/bin/keycloakify/generateTheme/downloadKeycloakStaticResources.d.ts +0 -11
  412. package/bin/keycloakify/generateTheme/downloadKeycloakStaticResources.js +0 -102
  413. package/bin/keycloakify/generateTheme/downloadKeycloakStaticResources.js.map +0 -1
  414. package/bin/keycloakify/generateTheme/generateMessageProperties.d.ts +0 -8
  415. package/bin/keycloakify/generateTheme/generateMessageProperties.js +0 -271
  416. package/bin/keycloakify/generateTheme/generateMessageProperties.js.map +0 -1
  417. package/bin/keycloakify/generateTheme/generateSrcMainResources.d.ts +0 -21
  418. package/bin/keycloakify/generateTheme/generateSrcMainResources.js +0 -340
  419. package/bin/keycloakify/generateTheme/generateSrcMainResources.js.map +0 -1
  420. package/bin/keycloakify/generateTheme/generateTheme.d.ts +0 -13
  421. package/bin/keycloakify/generateTheme/generateTheme.js +0 -115
  422. package/bin/keycloakify/generateTheme/generateTheme.js.map +0 -1
  423. package/bin/keycloakify/generateTheme/generateThemeVariants.d.ts +0 -5
  424. package/bin/keycloakify/generateTheme/generateThemeVariants.js +0 -67
  425. package/bin/keycloakify/generateTheme/generateThemeVariants.js.map +0 -1
  426. package/bin/keycloakify/generateTheme/index.d.ts +0 -1
  427. package/bin/keycloakify/generateTheme/index.js +0 -18
  428. package/bin/keycloakify/generateTheme/index.js.map +0 -1
  429. package/bin/keycloakify/generateTheme/readExtraPageNames.d.ts +0 -5
  430. package/bin/keycloakify/generateTheme/readExtraPageNames.js +0 -105
  431. package/bin/keycloakify/generateTheme/readExtraPageNames.js.map +0 -1
  432. package/bin/keycloakify/generateTheme/readFieldNameUsage.d.ts +0 -7
  433. package/bin/keycloakify/generateTheme/readFieldNameUsage.js +0 -141
  434. package/bin/keycloakify/generateTheme/readFieldNameUsage.js.map +0 -1
  435. package/bin/keycloakify/index.d.ts +0 -2
  436. package/bin/keycloakify/index.js +0 -23
  437. package/bin/keycloakify/index.js.map +0 -1
  438. package/bin/keycloakify/keycloakify.d.ts +0 -1
  439. package/bin/keycloakify/keycloakify.js +0 -166
  440. package/bin/keycloakify/keycloakify.js.map +0 -1
  441. package/bin/keycloakify/replacers/replaceImportsInCssCode.d.ts +0 -15
  442. package/bin/keycloakify/replacers/replaceImportsInCssCode.js +0 -88
  443. package/bin/keycloakify/replacers/replaceImportsInCssCode.js.map +0 -1
  444. package/bin/keycloakify/replacers/replaceImportsInInlineCssCode.d.ts +0 -9
  445. package/bin/keycloakify/replacers/replaceImportsInInlineCssCode.js +0 -38
  446. package/bin/keycloakify/replacers/replaceImportsInInlineCssCode.js.map +0 -1
  447. package/bin/keycloakify/replacers/replaceImportsInJsCode/index.d.ts +0 -1
  448. package/bin/keycloakify/replacers/replaceImportsInJsCode/index.js +0 -18
  449. package/bin/keycloakify/replacers/replaceImportsInJsCode/index.js.map +0 -1
  450. package/bin/keycloakify/replacers/replaceImportsInJsCode/replaceImportsInJsCode.d.ts +0 -12
  451. package/bin/keycloakify/replacers/replaceImportsInJsCode/replaceImportsInJsCode.js +0 -70
  452. package/bin/keycloakify/replacers/replaceImportsInJsCode/replaceImportsInJsCode.js.map +0 -1
  453. package/bin/keycloakify/replacers/replaceImportsInJsCode/vite.d.ts +0 -13
  454. package/bin/keycloakify/replacers/replaceImportsInJsCode/vite.js +0 -95
  455. package/bin/keycloakify/replacers/replaceImportsInJsCode/vite.js.map +0 -1
  456. package/bin/keycloakify/replacers/replaceImportsInJsCode/webpack.d.ts +0 -12
  457. package/bin/keycloakify/replacers/replaceImportsInJsCode/webpack.js +0 -103
  458. package/bin/keycloakify/replacers/replaceImportsInJsCode/webpack.js.map +0 -1
  459. package/bin/promptKeycloakVersion.d.ts +0 -3
  460. package/bin/promptKeycloakVersion.js +0 -121
  461. package/bin/promptKeycloakVersion.js.map +0 -1
  462. package/bin/tools/OptionalIfCanBeUndefined.d.ts +0 -14
  463. package/bin/tools/OptionalIfCanBeUndefined.js +0 -3
  464. package/bin/tools/OptionalIfCanBeUndefined.js.map +0 -1
  465. package/bin/tools/SemVer.d.ts +0 -26
  466. package/bin/tools/SemVer.js +0 -119
  467. package/bin/tools/SemVer.js.map +0 -1
  468. package/bin/tools/String.prototype.replaceAll.d.ts +0 -1
  469. package/bin/tools/String.prototype.replaceAll.js +0 -29
  470. package/bin/tools/String.prototype.replaceAll.js.map +0 -1
  471. package/bin/tools/crawl.d.ts +0 -5
  472. package/bin/tools/crawl.js +0 -74
  473. package/bin/tools/crawl.js.map +0 -1
  474. package/bin/tools/crc32.d.ts +0 -9
  475. package/bin/tools/crc32.js +0 -64
  476. package/bin/tools/crc32.js.map +0 -1
  477. package/bin/tools/deflate.d.ts +0 -24
  478. package/bin/tools/deflate.js +0 -155
  479. package/bin/tools/deflate.js.map +0 -1
  480. package/bin/tools/fetchProxyOptions.d.ts +0 -5
  481. package/bin/tools/fetchProxyOptions.js +0 -172
  482. package/bin/tools/fetchProxyOptions.js.map +0 -1
  483. package/bin/tools/fs.existsAsync.d.ts +0 -1
  484. package/bin/tools/fs.existsAsync.js +0 -86
  485. package/bin/tools/fs.existsAsync.js.map +0 -1
  486. package/bin/tools/fs.rm.d.ts +0 -8
  487. package/bin/tools/fs.rm.js +0 -151
  488. package/bin/tools/fs.rm.js.map +0 -1
  489. package/bin/tools/fs.rmSync.d.ts +0 -8
  490. package/bin/tools/fs.rmSync.js +0 -58
  491. package/bin/tools/fs.rmSync.js.map +0 -1
  492. package/bin/tools/getAbsoluteAndInOsFormatPath.d.ts +0 -4
  493. package/bin/tools/getAbsoluteAndInOsFormatPath.js +0 -16
  494. package/bin/tools/getAbsoluteAndInOsFormatPath.js.map +0 -1
  495. package/bin/tools/getThisCodebaseRootDirPath.d.ts +0 -1
  496. package/bin/tools/getThisCodebaseRootDirPath.js +0 -43
  497. package/bin/tools/getThisCodebaseRootDirPath.js.map +0 -1
  498. package/bin/tools/grant-exec-perms.d.ts +0 -1
  499. package/bin/tools/grant-exec-perms.js +0 -100
  500. package/bin/tools/grant-exec-perms.js.map +0 -1
  501. package/bin/tools/isInside.d.ts +0 -4
  502. package/bin/tools/isInside.js +0 -10
  503. package/bin/tools/isInside.js.map +0 -1
  504. package/bin/tools/kebabCaseToSnakeCase.d.ts +0 -1
  505. package/bin/tools/kebabCaseToSnakeCase.js +0 -35
  506. package/bin/tools/kebabCaseToSnakeCase.js.map +0 -1
  507. package/bin/tools/logger.d.ts +0 -12
  508. package/bin/tools/logger.js +0 -23
  509. package/bin/tools/logger.js.map +0 -1
  510. package/bin/tools/octokit-addons/getLatestsSemVersionedTag.d.ts +0 -14
  511. package/bin/tools/octokit-addons/getLatestsSemVersionedTag.js +0 -119
  512. package/bin/tools/octokit-addons/getLatestsSemVersionedTag.js.map +0 -1
  513. package/bin/tools/octokit-addons/listTags.d.ts +0 -13
  514. package/bin/tools/octokit-addons/listTags.js +0 -154
  515. package/bin/tools/octokit-addons/listTags.js.map +0 -1
  516. package/bin/tools/partitionPromiseSettledResults.d.ts +0 -2
  517. package/bin/tools/partitionPromiseSettledResults.js +0 -41
  518. package/bin/tools/partitionPromiseSettledResults.js.map +0 -1
  519. package/bin/tools/readThisNpmProjectVersion.d.ts +0 -1
  520. package/bin/tools/readThisNpmProjectVersion.js +0 -37
  521. package/bin/tools/readThisNpmProjectVersion.js.map +0 -1
  522. package/bin/tools/tee.d.ts +0 -3
  523. package/bin/tools/tee.js +0 -37
  524. package/bin/tools/tee.js.map +0 -1
  525. package/bin/tools/transformCodebase.d.ts +0 -20
  526. package/bin/tools/transformCodebase.js +0 -97
  527. package/bin/tools/transformCodebase.js.map +0 -1
  528. package/bin/tools/trimIndent.d.ts +0 -5
  529. package/bin/tools/trimIndent.js +0 -82
  530. package/bin/tools/trimIndent.js.map +0 -1
  531. package/bin/tools/unzip.d.ts +0 -2
  532. package/bin/tools/unzip.js +0 -274
  533. package/bin/tools/unzip.js.map +0 -1
  534. package/index.d.ts +0 -1
  535. package/index.js +0 -2
  536. package/index.js.map +0 -1
  537. package/lib/keycloakJsAdapter.d.ts +0 -51
  538. package/lib/keycloakJsAdapter.js +0 -74
  539. package/lib/keycloakJsAdapter.js.map +0 -1
  540. package/src/bin/constants.ts +0 -13
  541. package/src/bin/download-builtin-keycloak-theme.ts +0 -290
  542. package/src/bin/downloadAndUnzip.ts +0 -203
  543. package/src/bin/eject-keycloak-page.ts +0 -64
  544. package/src/bin/keycloakify/buildOptions/UserProvidedBuildOptions.ts +0 -21
  545. package/src/bin/keycloakify/buildOptions/buildOptions.ts +0 -189
  546. package/src/bin/keycloakify/buildOptions/getCacheDirPath.ts +0 -25
  547. package/src/bin/keycloakify/buildOptions/getNpmWorkspaceRootDirPath.ts +0 -49
  548. package/src/bin/keycloakify/buildOptions/getReactAppRootDirPath.ts +0 -23
  549. package/src/bin/keycloakify/buildOptions/index.ts +0 -1
  550. package/src/bin/keycloakify/buildOptions/parsedPackageJson.ts +0 -32
  551. package/src/bin/keycloakify/buildOptions/resolvedViteConfig.ts +0 -74
  552. package/src/bin/keycloakify/generateTheme/downloadKeycloakStaticResources.ts +0 -49
  553. package/src/bin/keycloakify/generateTheme/generateTheme.ts +0 -44
  554. package/src/bin/keycloakify/generateTheme/generateThemeVariants.ts +0 -50
  555. package/src/bin/keycloakify/generateTheme/index.ts +0 -1
  556. package/src/bin/keycloakify/generateTheme/readFieldNameUsage.ts +0 -55
  557. package/src/bin/promptKeycloakVersion.ts +0 -49
  558. package/src/bin/tools/grant-exec-perms.ts +0 -19
  559. package/src/bin/tools/logger.ts +0 -27
  560. package/src/bin/tools/unzip.ts +0 -141
  561. package/src/index.ts +0 -1
  562. package/src/lib/keycloakJsAdapter.ts +0 -118
  563. package/vite-plugin/index.js.map +0 -1
  564. package/vite-plugin/tsconfig.tsbuildinfo +0 -1
  565. package/vite-plugin/vite-plugin.d.ts +0 -6
  566. package/vite-plugin/vite-plugin.js +0 -158
  567. package/vite-plugin/vite-plugin.js.map +0 -1
@@ -0,0 +1,2142 @@
1
+ {
2
+ "id": "34c5f904-d66e-4d8f-8876-8f00d9fa9d6c",
3
+ "realm": "myrealm",
4
+ "notBefore": 0,
5
+ "defaultSignatureAlgorithm": "RS256",
6
+ "revokeRefreshToken": false,
7
+ "refreshTokenMaxReuse": 0,
8
+ "accessTokenLifespan": 300,
9
+ "accessTokenLifespanForImplicitFlow": 900,
10
+ "ssoSessionIdleTimeout": 1800,
11
+ "ssoSessionMaxLifespan": 36000,
12
+ "ssoSessionIdleTimeoutRememberMe": 0,
13
+ "ssoSessionMaxLifespanRememberMe": 0,
14
+ "offlineSessionIdleTimeout": 2592000,
15
+ "offlineSessionMaxLifespanEnabled": false,
16
+ "offlineSessionMaxLifespan": 5184000,
17
+ "clientSessionIdleTimeout": 0,
18
+ "clientSessionMaxLifespan": 0,
19
+ "clientOfflineSessionIdleTimeout": 0,
20
+ "clientOfflineSessionMaxLifespan": 0,
21
+ "accessCodeLifespan": 60,
22
+ "accessCodeLifespanUserAction": 300,
23
+ "accessCodeLifespanLogin": 1800,
24
+ "actionTokenGeneratedByAdminLifespan": 43200,
25
+ "actionTokenGeneratedByUserLifespan": 300,
26
+ "oauth2DeviceCodeLifespan": 600,
27
+ "oauth2DevicePollingInterval": 5,
28
+ "enabled": true,
29
+ "sslRequired": "external",
30
+ "registrationAllowed": true,
31
+ "registrationEmailAsUsername": false,
32
+ "rememberMe": true,
33
+ "verifyEmail": false,
34
+ "loginWithEmailAllowed": true,
35
+ "duplicateEmailsAllowed": false,
36
+ "resetPasswordAllowed": true,
37
+ "editUsernameAllowed": false,
38
+ "bruteForceProtected": false,
39
+ "permanentLockout": false,
40
+ "maxFailureWaitSeconds": 900,
41
+ "minimumQuickLoginWaitSeconds": 60,
42
+ "waitIncrementSeconds": 60,
43
+ "quickLoginCheckMilliSeconds": 1000,
44
+ "maxDeltaTimeSeconds": 43200,
45
+ "failureFactor": 30,
46
+ "roles": {
47
+ "realm": [
48
+ {
49
+ "id": "73196a8b-eb0e-4053-bc2b-e687710af912",
50
+ "name": "default-roles-myrealm",
51
+ "description": "${role_default-roles}",
52
+ "composite": true,
53
+ "composites": {
54
+ "realm": ["offline_access", "uma_authorization"],
55
+ "client": {
56
+ "account": ["view-profile", "manage-account"]
57
+ }
58
+ },
59
+ "clientRole": false,
60
+ "containerId": "34c5f904-d66e-4d8f-8876-8f00d9fa9d6c",
61
+ "attributes": {}
62
+ },
63
+ {
64
+ "id": "a9fd407f-7ab1-4cf4-abcc-395666a8646f",
65
+ "name": "offline_access",
66
+ "description": "${role_offline-access}",
67
+ "composite": false,
68
+ "clientRole": false,
69
+ "containerId": "34c5f904-d66e-4d8f-8876-8f00d9fa9d6c",
70
+ "attributes": {}
71
+ },
72
+ {
73
+ "id": "b07d1a38-a41b-4ecb-a273-4d173d3a2f07",
74
+ "name": "uma_authorization",
75
+ "description": "${role_uma_authorization}",
76
+ "composite": false,
77
+ "clientRole": false,
78
+ "containerId": "34c5f904-d66e-4d8f-8876-8f00d9fa9d6c",
79
+ "attributes": {}
80
+ }
81
+ ],
82
+ "client": {
83
+ "myclient": [],
84
+ "realm-management": [
85
+ {
86
+ "id": "775657eb-5c58-4452-9b92-96303f63108b",
87
+ "name": "query-clients",
88
+ "description": "${role_query-clients}",
89
+ "composite": false,
90
+ "clientRole": true,
91
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
92
+ "attributes": {}
93
+ },
94
+ {
95
+ "id": "01d01f09-efb3-4402-8b55-4fab89745b4b",
96
+ "name": "manage-identity-providers",
97
+ "description": "${role_manage-identity-providers}",
98
+ "composite": false,
99
+ "clientRole": true,
100
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
101
+ "attributes": {}
102
+ },
103
+ {
104
+ "id": "f86b8c06-296a-4622-a9cc-e97805b43e4a",
105
+ "name": "manage-realm",
106
+ "description": "${role_manage-realm}",
107
+ "composite": false,
108
+ "clientRole": true,
109
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
110
+ "attributes": {}
111
+ },
112
+ {
113
+ "id": "d30523cd-7710-4756-b27e-3a0ab0489b57",
114
+ "name": "manage-clients",
115
+ "description": "${role_manage-clients}",
116
+ "composite": false,
117
+ "clientRole": true,
118
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
119
+ "attributes": {}
120
+ },
121
+ {
122
+ "id": "986aee27-8ba7-472f-b139-33a731dc2f1c",
123
+ "name": "query-realms",
124
+ "description": "${role_query-realms}",
125
+ "composite": false,
126
+ "clientRole": true,
127
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
128
+ "attributes": {}
129
+ },
130
+ {
131
+ "id": "83303573-1714-45a8-9ef2-096f68d0018c",
132
+ "name": "create-client",
133
+ "description": "${role_create-client}",
134
+ "composite": false,
135
+ "clientRole": true,
136
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
137
+ "attributes": {}
138
+ },
139
+ {
140
+ "id": "6d8d7cb2-e83b-4767-9778-2d76f0994285",
141
+ "name": "view-events",
142
+ "description": "${role_view-events}",
143
+ "composite": false,
144
+ "clientRole": true,
145
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
146
+ "attributes": {}
147
+ },
148
+ {
149
+ "id": "994c9ecd-bd42-4ef2-b795-89638aecfbee",
150
+ "name": "view-users",
151
+ "description": "${role_view-users}",
152
+ "composite": true,
153
+ "composites": {
154
+ "client": {
155
+ "realm-management": ["query-users", "query-groups"]
156
+ }
157
+ },
158
+ "clientRole": true,
159
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
160
+ "attributes": {}
161
+ },
162
+ {
163
+ "id": "09d43569-839d-45c0-b8e8-b0768e8b6b78",
164
+ "name": "query-groups",
165
+ "description": "${role_query-groups}",
166
+ "composite": false,
167
+ "clientRole": true,
168
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
169
+ "attributes": {}
170
+ },
171
+ {
172
+ "id": "2713d8c6-0dca-4c48-b321-503f69ff943b",
173
+ "name": "view-realm",
174
+ "description": "${role_view-realm}",
175
+ "composite": false,
176
+ "clientRole": true,
177
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
178
+ "attributes": {}
179
+ },
180
+ {
181
+ "id": "48b308dd-5b7c-4602-9aa1-c63ede77605a",
182
+ "name": "manage-events",
183
+ "description": "${role_manage-events}",
184
+ "composite": false,
185
+ "clientRole": true,
186
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
187
+ "attributes": {}
188
+ },
189
+ {
190
+ "id": "00e9e87f-fac2-4edd-a8f0-43376a0c1ba3",
191
+ "name": "manage-authorization",
192
+ "description": "${role_manage-authorization}",
193
+ "composite": false,
194
+ "clientRole": true,
195
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
196
+ "attributes": {}
197
+ },
198
+ {
199
+ "id": "3d30a0f9-61b2-4c73-b90a-adcd45d21fd9",
200
+ "name": "view-authorization",
201
+ "description": "${role_view-authorization}",
202
+ "composite": false,
203
+ "clientRole": true,
204
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
205
+ "attributes": {}
206
+ },
207
+ {
208
+ "id": "ffe5d44a-f8c4-4a60-b2ae-b00802a773e0",
209
+ "name": "query-users",
210
+ "description": "${role_query-users}",
211
+ "composite": false,
212
+ "clientRole": true,
213
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
214
+ "attributes": {}
215
+ },
216
+ {
217
+ "id": "f3b33996-32d4-4cc6-8a8a-7a6cfebfe961",
218
+ "name": "impersonation",
219
+ "description": "${role_impersonation}",
220
+ "composite": false,
221
+ "clientRole": true,
222
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
223
+ "attributes": {}
224
+ },
225
+ {
226
+ "id": "ba8de396-48e9-4b98-ade8-c647aa14b365",
227
+ "name": "view-clients",
228
+ "description": "${role_view-clients}",
229
+ "composite": true,
230
+ "composites": {
231
+ "client": {
232
+ "realm-management": ["query-clients"]
233
+ }
234
+ },
235
+ "clientRole": true,
236
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
237
+ "attributes": {}
238
+ },
239
+ {
240
+ "id": "02c214b0-85ec-477e-ae0b-9b6d189694d8",
241
+ "name": "realm-admin",
242
+ "description": "${role_realm-admin}",
243
+ "composite": true,
244
+ "composites": {
245
+ "client": {
246
+ "realm-management": [
247
+ "query-clients",
248
+ "manage-identity-providers",
249
+ "manage-realm",
250
+ "manage-clients",
251
+ "query-realms",
252
+ "create-client",
253
+ "view-events",
254
+ "view-users",
255
+ "query-groups",
256
+ "view-realm",
257
+ "manage-events",
258
+ "manage-authorization",
259
+ "view-authorization",
260
+ "query-users",
261
+ "view-clients",
262
+ "impersonation",
263
+ "manage-users",
264
+ "view-identity-providers"
265
+ ]
266
+ }
267
+ },
268
+ "clientRole": true,
269
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
270
+ "attributes": {}
271
+ },
272
+ {
273
+ "id": "b82280bc-9d94-4022-a4f2-7a8302aea121",
274
+ "name": "manage-users",
275
+ "description": "${role_manage-users}",
276
+ "composite": false,
277
+ "clientRole": true,
278
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
279
+ "attributes": {}
280
+ },
281
+ {
282
+ "id": "71b6fdbd-58a3-4dc6-a7f9-8f41e93e2a5a",
283
+ "name": "view-identity-providers",
284
+ "description": "${role_view-identity-providers}",
285
+ "composite": false,
286
+ "clientRole": true,
287
+ "containerId": "7b59a215-bad5-49e1-a128-fa3479cb016d",
288
+ "attributes": {}
289
+ }
290
+ ],
291
+ "security-admin-console": [],
292
+ "admin-cli": [],
293
+ "account-console": [],
294
+ "broker": [
295
+ {
296
+ "id": "cfa32acf-996e-424b-a95c-17f975671e95",
297
+ "name": "read-token",
298
+ "description": "${role_read-token}",
299
+ "composite": false,
300
+ "clientRole": true,
301
+ "containerId": "18fb8e89-9866-442c-8848-10bd0acd3ffe",
302
+ "attributes": {}
303
+ }
304
+ ],
305
+ "account": [
306
+ {
307
+ "id": "b1f05b6e-02ff-4c1a-a65d-82649d4a57ad",
308
+ "name": "manage-account-links",
309
+ "description": "${role_manage-account-links}",
310
+ "composite": false,
311
+ "clientRole": true,
312
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
313
+ "attributes": {}
314
+ },
315
+ {
316
+ "id": "752f2e72-5416-4b27-85e3-a9fa8aa67922",
317
+ "name": "view-profile",
318
+ "description": "${role_view-profile}",
319
+ "composite": false,
320
+ "clientRole": true,
321
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
322
+ "attributes": {}
323
+ },
324
+ {
325
+ "id": "5a202431-ccad-4d21-8883-31526b145490",
326
+ "name": "view-consent",
327
+ "description": "${role_view-consent}",
328
+ "composite": false,
329
+ "clientRole": true,
330
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
331
+ "attributes": {}
332
+ },
333
+ {
334
+ "id": "194a968b-9451-4f48-88c3-da89b230e3f8",
335
+ "name": "delete-account",
336
+ "description": "${role_delete-account}",
337
+ "composite": false,
338
+ "clientRole": true,
339
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
340
+ "attributes": {}
341
+ },
342
+ {
343
+ "id": "11e79573-634b-4ac7-aadd-acbf08f98329",
344
+ "name": "view-applications",
345
+ "description": "${role_view-applications}",
346
+ "composite": false,
347
+ "clientRole": true,
348
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
349
+ "attributes": {}
350
+ },
351
+ {
352
+ "id": "07a6864b-3f95-4508-9c65-b65eaa4d3efd",
353
+ "name": "manage-account",
354
+ "description": "${role_manage-account}",
355
+ "composite": true,
356
+ "composites": {
357
+ "client": {
358
+ "account": ["manage-account-links"]
359
+ }
360
+ },
361
+ "clientRole": true,
362
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
363
+ "attributes": {}
364
+ },
365
+ {
366
+ "id": "80cac64a-fc3f-46af-8e13-acdcf3701a72",
367
+ "name": "manage-consent",
368
+ "description": "${role_manage-consent}",
369
+ "composite": true,
370
+ "composites": {
371
+ "client": {
372
+ "account": ["view-consent"]
373
+ }
374
+ },
375
+ "clientRole": true,
376
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
377
+ "attributes": {}
378
+ },
379
+ {
380
+ "id": "2e765515-4128-4c7b-9aac-b94e39cdd956",
381
+ "name": "view-groups",
382
+ "description": "${role_view-groups}",
383
+ "composite": false,
384
+ "clientRole": true,
385
+ "containerId": "072175a1-a921-4c5e-89ca-77d99fe64f41",
386
+ "attributes": {}
387
+ }
388
+ ]
389
+ }
390
+ },
391
+ "groups": [],
392
+ "defaultRole": {
393
+ "id": "73196a8b-eb0e-4053-bc2b-e687710af912",
394
+ "name": "default-roles-myrealm",
395
+ "description": "${role_default-roles}",
396
+ "composite": true,
397
+ "clientRole": false,
398
+ "containerId": "34c5f904-d66e-4d8f-8876-8f00d9fa9d6c"
399
+ },
400
+ "requiredCredentials": ["password"],
401
+ "otpPolicyType": "totp",
402
+ "otpPolicyAlgorithm": "HmacSHA1",
403
+ "otpPolicyInitialCounter": 0,
404
+ "otpPolicyDigits": 6,
405
+ "otpPolicyLookAheadWindow": 1,
406
+ "otpPolicyPeriod": 30,
407
+ "otpPolicyCodeReusable": false,
408
+ "otpSupportedApplications": [
409
+ "totpAppFreeOTPName",
410
+ "totpAppGoogleName",
411
+ "totpAppMicrosoftAuthenticatorName"
412
+ ],
413
+ "localizationTexts": {},
414
+ "webAuthnPolicyRpEntityName": "keycloak",
415
+ "webAuthnPolicySignatureAlgorithms": ["ES256"],
416
+ "webAuthnPolicyRpId": "",
417
+ "webAuthnPolicyAttestationConveyancePreference": "not specified",
418
+ "webAuthnPolicyAuthenticatorAttachment": "not specified",
419
+ "webAuthnPolicyRequireResidentKey": "not specified",
420
+ "webAuthnPolicyUserVerificationRequirement": "not specified",
421
+ "webAuthnPolicyCreateTimeout": 0,
422
+ "webAuthnPolicyAvoidSameAuthenticatorRegister": false,
423
+ "webAuthnPolicyAcceptableAaguids": [],
424
+ "webAuthnPolicyExtraOrigins": [],
425
+ "webAuthnPolicyPasswordlessRpEntityName": "keycloak",
426
+ "webAuthnPolicyPasswordlessSignatureAlgorithms": ["ES256"],
427
+ "webAuthnPolicyPasswordlessRpId": "",
428
+ "webAuthnPolicyPasswordlessAttestationConveyancePreference": "not specified",
429
+ "webAuthnPolicyPasswordlessAuthenticatorAttachment": "not specified",
430
+ "webAuthnPolicyPasswordlessRequireResidentKey": "not specified",
431
+ "webAuthnPolicyPasswordlessUserVerificationRequirement": "not specified",
432
+ "webAuthnPolicyPasswordlessCreateTimeout": 0,
433
+ "webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister": false,
434
+ "webAuthnPolicyPasswordlessAcceptableAaguids": [],
435
+ "webAuthnPolicyPasswordlessExtraOrigins": [],
436
+ "users": [
437
+ {
438
+ "id": "00a62e75-bcc1-419a-a292-63ee5d161ed3",
439
+ "createdTimestamp": 1716214686563,
440
+ "username": "testuser",
441
+ "enabled": true,
442
+ "totp": false,
443
+ "emailVerified": true,
444
+ "firstName": "Test",
445
+ "lastName": "User",
446
+ "email": "testuser@gmail.com",
447
+ "credentials": [
448
+ {
449
+ "id": "60e992d6-6c7a-45a2-af0e-28d84c86629f",
450
+ "type": "password",
451
+ "userLabel": "My password",
452
+ "createdDate": 1716214710762,
453
+ "secretData": "{\"value\":\"OaI4sKqQn+NZtS6N/bcqoZ8Q+ucpBby1n4XmzVmioKw=\",\"salt\":\"temixVCSbpA7Genml2KTAw==\",\"additionalParameters\":{}}",
454
+ "credentialData": "{\"hashIterations\":27500,\"algorithm\":\"pbkdf2-sha256\",\"additionalParameters\":{}}"
455
+ }
456
+ ],
457
+ "disableableCredentialTypes": [],
458
+ "requiredActions": [],
459
+ "realmRoles": ["default-roles-myrealm"],
460
+ "notBefore": 0,
461
+ "groups": []
462
+ }
463
+ ],
464
+ "scopeMappings": [
465
+ {
466
+ "clientScope": "offline_access",
467
+ "roles": ["offline_access"]
468
+ }
469
+ ],
470
+ "clientScopeMappings": {
471
+ "account": [
472
+ {
473
+ "client": "account-console",
474
+ "roles": ["manage-account", "view-groups"]
475
+ }
476
+ ]
477
+ },
478
+ "clients": [
479
+ {
480
+ "id": "072175a1-a921-4c5e-89ca-77d99fe64f41",
481
+ "clientId": "account",
482
+ "name": "${client_account}",
483
+ "description": "",
484
+ "rootUrl": "${authBaseUrl}",
485
+ "adminUrl": "",
486
+ "baseUrl": "/realms/myrealm/account/",
487
+ "surrogateAuthRequired": false,
488
+ "enabled": true,
489
+ "alwaysDisplayInConsole": false,
490
+ "clientAuthenticatorType": "client-secret",
491
+ "redirectUris": ["/realms/myrealm/account/*"],
492
+ "webOrigins": [],
493
+ "notBefore": 0,
494
+ "bearerOnly": false,
495
+ "consentRequired": false,
496
+ "standardFlowEnabled": true,
497
+ "implicitFlowEnabled": false,
498
+ "directAccessGrantsEnabled": false,
499
+ "serviceAccountsEnabled": false,
500
+ "publicClient": true,
501
+ "frontchannelLogout": false,
502
+ "protocol": "openid-connect",
503
+ "attributes": {
504
+ "oidc.ciba.grant.enabled": "false",
505
+ "backchannel.logout.session.required": "true",
506
+ "login_theme": "keycloakify-starter",
507
+ "post.logout.redirect.uris": "+",
508
+ "oauth2.device.authorization.grant.enabled": "false",
509
+ "display.on.consent.screen": "false",
510
+ "backchannel.logout.revoke.offline.tokens": "false"
511
+ },
512
+ "authenticationFlowBindingOverrides": {},
513
+ "fullScopeAllowed": false,
514
+ "nodeReRegistrationTimeout": 0,
515
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
516
+ "optionalClientScopes": [
517
+ "address",
518
+ "phone",
519
+ "offline_access",
520
+ "microprofile-jwt"
521
+ ]
522
+ },
523
+ {
524
+ "id": "49254aff-1560-43e3-b10d-3e7e6aeba1b9",
525
+ "clientId": "account-console",
526
+ "name": "${client_account-console}",
527
+ "rootUrl": "${authBaseUrl}",
528
+ "baseUrl": "/realms/myrealm/account/",
529
+ "surrogateAuthRequired": false,
530
+ "enabled": true,
531
+ "alwaysDisplayInConsole": false,
532
+ "clientAuthenticatorType": "client-secret",
533
+ "redirectUris": ["/realms/myrealm/account/*"],
534
+ "webOrigins": [],
535
+ "notBefore": 0,
536
+ "bearerOnly": false,
537
+ "consentRequired": false,
538
+ "standardFlowEnabled": true,
539
+ "implicitFlowEnabled": false,
540
+ "directAccessGrantsEnabled": false,
541
+ "serviceAccountsEnabled": false,
542
+ "publicClient": true,
543
+ "frontchannelLogout": false,
544
+ "protocol": "openid-connect",
545
+ "attributes": {
546
+ "post.logout.redirect.uris": "+",
547
+ "pkce.code.challenge.method": "S256"
548
+ },
549
+ "authenticationFlowBindingOverrides": {},
550
+ "fullScopeAllowed": false,
551
+ "nodeReRegistrationTimeout": 0,
552
+ "protocolMappers": [
553
+ {
554
+ "id": "7053e4a2-2897-4fb1-99c9-e477a711444a",
555
+ "name": "audience resolve",
556
+ "protocol": "openid-connect",
557
+ "protocolMapper": "oidc-audience-resolve-mapper",
558
+ "consentRequired": false,
559
+ "config": {}
560
+ }
561
+ ],
562
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
563
+ "optionalClientScopes": [
564
+ "address",
565
+ "phone",
566
+ "offline_access",
567
+ "microprofile-jwt"
568
+ ]
569
+ },
570
+ {
571
+ "id": "525b15af-4a12-4d51-bdca-c7722d1a3f26",
572
+ "clientId": "admin-cli",
573
+ "name": "${client_admin-cli}",
574
+ "surrogateAuthRequired": false,
575
+ "enabled": true,
576
+ "alwaysDisplayInConsole": false,
577
+ "clientAuthenticatorType": "client-secret",
578
+ "redirectUris": [],
579
+ "webOrigins": [],
580
+ "notBefore": 0,
581
+ "bearerOnly": false,
582
+ "consentRequired": false,
583
+ "standardFlowEnabled": false,
584
+ "implicitFlowEnabled": false,
585
+ "directAccessGrantsEnabled": true,
586
+ "serviceAccountsEnabled": false,
587
+ "publicClient": true,
588
+ "frontchannelLogout": false,
589
+ "protocol": "openid-connect",
590
+ "attributes": {},
591
+ "authenticationFlowBindingOverrides": {},
592
+ "fullScopeAllowed": false,
593
+ "nodeReRegistrationTimeout": 0,
594
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
595
+ "optionalClientScopes": [
596
+ "address",
597
+ "phone",
598
+ "offline_access",
599
+ "microprofile-jwt"
600
+ ]
601
+ },
602
+ {
603
+ "id": "18fb8e89-9866-442c-8848-10bd0acd3ffe",
604
+ "clientId": "broker",
605
+ "name": "${client_broker}",
606
+ "surrogateAuthRequired": false,
607
+ "enabled": true,
608
+ "alwaysDisplayInConsole": false,
609
+ "clientAuthenticatorType": "client-secret",
610
+ "redirectUris": [],
611
+ "webOrigins": [],
612
+ "notBefore": 0,
613
+ "bearerOnly": true,
614
+ "consentRequired": false,
615
+ "standardFlowEnabled": true,
616
+ "implicitFlowEnabled": false,
617
+ "directAccessGrantsEnabled": false,
618
+ "serviceAccountsEnabled": false,
619
+ "publicClient": false,
620
+ "frontchannelLogout": false,
621
+ "protocol": "openid-connect",
622
+ "attributes": {},
623
+ "authenticationFlowBindingOverrides": {},
624
+ "fullScopeAllowed": false,
625
+ "nodeReRegistrationTimeout": 0,
626
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
627
+ "optionalClientScopes": [
628
+ "address",
629
+ "phone",
630
+ "offline_access",
631
+ "microprofile-jwt"
632
+ ]
633
+ },
634
+ {
635
+ "id": "d18075ea-e792-4e53-9a7c-1b724f652ea1",
636
+ "clientId": "myclient",
637
+ "name": "",
638
+ "description": "",
639
+ "rootUrl": "https://my-theme.keycloakify.dev",
640
+ "adminUrl": "https://my-theme.keycloakify.dev",
641
+ "baseUrl": "",
642
+ "surrogateAuthRequired": false,
643
+ "enabled": true,
644
+ "alwaysDisplayInConsole": false,
645
+ "clientAuthenticatorType": "client-secret",
646
+ "redirectUris": ["https://my-theme.keycloakify.dev/*", "http://localhost*"],
647
+ "webOrigins": ["*"],
648
+ "notBefore": 0,
649
+ "bearerOnly": false,
650
+ "consentRequired": false,
651
+ "standardFlowEnabled": true,
652
+ "implicitFlowEnabled": false,
653
+ "directAccessGrantsEnabled": true,
654
+ "serviceAccountsEnabled": false,
655
+ "publicClient": true,
656
+ "frontchannelLogout": true,
657
+ "protocol": "openid-connect",
658
+ "attributes": {
659
+ "oidc.ciba.grant.enabled": "false",
660
+ "backchannel.logout.session.required": "true",
661
+ "login_theme": "keycloakify-starter",
662
+ "post.logout.redirect.uris": "https://my-theme.keycloakify.dev/*",
663
+ "oauth2.device.authorization.grant.enabled": "false",
664
+ "display.on.consent.screen": "false",
665
+ "backchannel.logout.revoke.offline.tokens": "false"
666
+ },
667
+ "authenticationFlowBindingOverrides": {},
668
+ "fullScopeAllowed": true,
669
+ "nodeReRegistrationTimeout": -1,
670
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
671
+ "optionalClientScopes": [
672
+ "address",
673
+ "phone",
674
+ "offline_access",
675
+ "microprofile-jwt"
676
+ ]
677
+ },
678
+ {
679
+ "id": "7b59a215-bad5-49e1-a128-fa3479cb016d",
680
+ "clientId": "realm-management",
681
+ "name": "${client_realm-management}",
682
+ "surrogateAuthRequired": false,
683
+ "enabled": true,
684
+ "alwaysDisplayInConsole": false,
685
+ "clientAuthenticatorType": "client-secret",
686
+ "redirectUris": [],
687
+ "webOrigins": [],
688
+ "notBefore": 0,
689
+ "bearerOnly": true,
690
+ "consentRequired": false,
691
+ "standardFlowEnabled": true,
692
+ "implicitFlowEnabled": false,
693
+ "directAccessGrantsEnabled": false,
694
+ "serviceAccountsEnabled": false,
695
+ "publicClient": false,
696
+ "frontchannelLogout": false,
697
+ "protocol": "openid-connect",
698
+ "attributes": {},
699
+ "authenticationFlowBindingOverrides": {},
700
+ "fullScopeAllowed": false,
701
+ "nodeReRegistrationTimeout": 0,
702
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
703
+ "optionalClientScopes": [
704
+ "address",
705
+ "phone",
706
+ "offline_access",
707
+ "microprofile-jwt"
708
+ ]
709
+ },
710
+ {
711
+ "id": "b023c6db-b457-49f8-ac52-5b9dd4879871",
712
+ "clientId": "security-admin-console",
713
+ "name": "${client_security-admin-console}",
714
+ "rootUrl": "${authAdminUrl}",
715
+ "baseUrl": "/admin/myrealm/console/",
716
+ "surrogateAuthRequired": false,
717
+ "enabled": true,
718
+ "alwaysDisplayInConsole": false,
719
+ "clientAuthenticatorType": "client-secret",
720
+ "redirectUris": ["/admin/myrealm/console/*"],
721
+ "webOrigins": ["+"],
722
+ "notBefore": 0,
723
+ "bearerOnly": false,
724
+ "consentRequired": false,
725
+ "standardFlowEnabled": true,
726
+ "implicitFlowEnabled": false,
727
+ "directAccessGrantsEnabled": false,
728
+ "serviceAccountsEnabled": false,
729
+ "publicClient": true,
730
+ "frontchannelLogout": false,
731
+ "protocol": "openid-connect",
732
+ "attributes": {
733
+ "post.logout.redirect.uris": "+",
734
+ "pkce.code.challenge.method": "S256"
735
+ },
736
+ "authenticationFlowBindingOverrides": {},
737
+ "fullScopeAllowed": false,
738
+ "nodeReRegistrationTimeout": 0,
739
+ "protocolMappers": [
740
+ {
741
+ "id": "59cde7ae-2218-4a8e-83af-cad992c3a700",
742
+ "name": "locale",
743
+ "protocol": "openid-connect",
744
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
745
+ "consentRequired": false,
746
+ "config": {
747
+ "introspection.token.claim": "true",
748
+ "userinfo.token.claim": "true",
749
+ "user.attribute": "locale",
750
+ "id.token.claim": "true",
751
+ "access.token.claim": "true",
752
+ "claim.name": "locale",
753
+ "jsonType.label": "String"
754
+ }
755
+ }
756
+ ],
757
+ "defaultClientScopes": ["web-origins", "acr", "profile", "roles", "email"],
758
+ "optionalClientScopes": [
759
+ "address",
760
+ "phone",
761
+ "offline_access",
762
+ "microprofile-jwt"
763
+ ]
764
+ }
765
+ ],
766
+ "clientScopes": [
767
+ {
768
+ "id": "a34adbcc-2377-47ed-ab09-16d1c3710eab",
769
+ "name": "microprofile-jwt",
770
+ "description": "Microprofile - JWT built-in scope",
771
+ "protocol": "openid-connect",
772
+ "attributes": {
773
+ "include.in.token.scope": "true",
774
+ "display.on.consent.screen": "false"
775
+ },
776
+ "protocolMappers": [
777
+ {
778
+ "id": "f05416b9-66cf-4db7-a599-c82e517eec7a",
779
+ "name": "groups",
780
+ "protocol": "openid-connect",
781
+ "protocolMapper": "oidc-usermodel-realm-role-mapper",
782
+ "consentRequired": false,
783
+ "config": {
784
+ "introspection.token.claim": "true",
785
+ "multivalued": "true",
786
+ "user.attribute": "foo",
787
+ "id.token.claim": "true",
788
+ "access.token.claim": "true",
789
+ "claim.name": "groups",
790
+ "jsonType.label": "String"
791
+ }
792
+ },
793
+ {
794
+ "id": "54e42795-25d0-4b17-80d1-03138d37a84a",
795
+ "name": "upn",
796
+ "protocol": "openid-connect",
797
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
798
+ "consentRequired": false,
799
+ "config": {
800
+ "introspection.token.claim": "true",
801
+ "userinfo.token.claim": "true",
802
+ "user.attribute": "username",
803
+ "id.token.claim": "true",
804
+ "access.token.claim": "true",
805
+ "claim.name": "upn",
806
+ "jsonType.label": "String"
807
+ }
808
+ }
809
+ ]
810
+ },
811
+ {
812
+ "id": "98c5fa3c-5acc-4839-9a0b-19ce4c3f76df",
813
+ "name": "acr",
814
+ "description": "OpenID Connect scope for add acr (authentication context class reference) to the token",
815
+ "protocol": "openid-connect",
816
+ "attributes": {
817
+ "include.in.token.scope": "false",
818
+ "display.on.consent.screen": "false"
819
+ },
820
+ "protocolMappers": [
821
+ {
822
+ "id": "778cde17-a2a5-47c2-accd-fa47f7d1f728",
823
+ "name": "acr loa level",
824
+ "protocol": "openid-connect",
825
+ "protocolMapper": "oidc-acr-mapper",
826
+ "consentRequired": false,
827
+ "config": {
828
+ "id.token.claim": "true",
829
+ "introspection.token.claim": "true",
830
+ "access.token.claim": "true"
831
+ }
832
+ }
833
+ ]
834
+ },
835
+ {
836
+ "id": "4b7b8bf4-7b9e-4d98-8e38-c94e59eada5c",
837
+ "name": "offline_access",
838
+ "description": "OpenID Connect built-in scope: offline_access",
839
+ "protocol": "openid-connect",
840
+ "attributes": {
841
+ "consent.screen.text": "${offlineAccessScopeConsentText}",
842
+ "display.on.consent.screen": "true"
843
+ }
844
+ },
845
+ {
846
+ "id": "3179cb14-245b-48ee-b93b-ca26a8a678e2",
847
+ "name": "email",
848
+ "description": "OpenID Connect built-in scope: email",
849
+ "protocol": "openid-connect",
850
+ "attributes": {
851
+ "include.in.token.scope": "true",
852
+ "display.on.consent.screen": "true",
853
+ "consent.screen.text": "${emailScopeConsentText}"
854
+ },
855
+ "protocolMappers": [
856
+ {
857
+ "id": "17ce460b-4235-4660-a453-d204a537e8a1",
858
+ "name": "email",
859
+ "protocol": "openid-connect",
860
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
861
+ "consentRequired": false,
862
+ "config": {
863
+ "introspection.token.claim": "true",
864
+ "userinfo.token.claim": "true",
865
+ "user.attribute": "email",
866
+ "id.token.claim": "true",
867
+ "access.token.claim": "true",
868
+ "claim.name": "email",
869
+ "jsonType.label": "String"
870
+ }
871
+ },
872
+ {
873
+ "id": "5a64b7ee-2a4c-4802-bdaf-0980b4015f2f",
874
+ "name": "email verified",
875
+ "protocol": "openid-connect",
876
+ "protocolMapper": "oidc-usermodel-property-mapper",
877
+ "consentRequired": false,
878
+ "config": {
879
+ "introspection.token.claim": "true",
880
+ "userinfo.token.claim": "true",
881
+ "user.attribute": "emailVerified",
882
+ "id.token.claim": "true",
883
+ "access.token.claim": "true",
884
+ "claim.name": "email_verified",
885
+ "jsonType.label": "boolean"
886
+ }
887
+ }
888
+ ]
889
+ },
890
+ {
891
+ "id": "08b27048-a2bd-4c35-a892-24dca6ec6995",
892
+ "name": "role_list",
893
+ "description": "SAML role list",
894
+ "protocol": "saml",
895
+ "attributes": {
896
+ "consent.screen.text": "${samlRoleListScopeConsentText}",
897
+ "display.on.consent.screen": "true"
898
+ },
899
+ "protocolMappers": [
900
+ {
901
+ "id": "f94644bb-853d-47c6-b41a-11218edb85f4",
902
+ "name": "role list",
903
+ "protocol": "saml",
904
+ "protocolMapper": "saml-role-list-mapper",
905
+ "consentRequired": false,
906
+ "config": {
907
+ "single": "false",
908
+ "attribute.nameformat": "Basic",
909
+ "attribute.name": "Role"
910
+ }
911
+ }
912
+ ]
913
+ },
914
+ {
915
+ "id": "8bc857e0-f791-4b1c-a8c5-e3c5375f38dd",
916
+ "name": "phone",
917
+ "description": "OpenID Connect built-in scope: phone",
918
+ "protocol": "openid-connect",
919
+ "attributes": {
920
+ "include.in.token.scope": "true",
921
+ "display.on.consent.screen": "true",
922
+ "consent.screen.text": "${phoneScopeConsentText}"
923
+ },
924
+ "protocolMappers": [
925
+ {
926
+ "id": "feea5cc1-e811-4daf-8352-451feb23f982",
927
+ "name": "phone number",
928
+ "protocol": "openid-connect",
929
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
930
+ "consentRequired": false,
931
+ "config": {
932
+ "introspection.token.claim": "true",
933
+ "userinfo.token.claim": "true",
934
+ "user.attribute": "phoneNumber",
935
+ "id.token.claim": "true",
936
+ "access.token.claim": "true",
937
+ "claim.name": "phone_number",
938
+ "jsonType.label": "String"
939
+ }
940
+ },
941
+ {
942
+ "id": "6daa31a8-213d-47c4-98d7-f08fdc35ef7c",
943
+ "name": "phone number verified",
944
+ "protocol": "openid-connect",
945
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
946
+ "consentRequired": false,
947
+ "config": {
948
+ "introspection.token.claim": "true",
949
+ "userinfo.token.claim": "true",
950
+ "user.attribute": "phoneNumberVerified",
951
+ "id.token.claim": "true",
952
+ "access.token.claim": "true",
953
+ "claim.name": "phone_number_verified",
954
+ "jsonType.label": "boolean"
955
+ }
956
+ }
957
+ ]
958
+ },
959
+ {
960
+ "id": "347cd2c6-025a-459e-8085-7437f7397e75",
961
+ "name": "profile",
962
+ "description": "OpenID Connect built-in scope: profile",
963
+ "protocol": "openid-connect",
964
+ "attributes": {
965
+ "include.in.token.scope": "true",
966
+ "display.on.consent.screen": "true",
967
+ "consent.screen.text": "${profileScopeConsentText}"
968
+ },
969
+ "protocolMappers": [
970
+ {
971
+ "id": "bfa6d24e-01da-47fc-ae63-f99402dd9cef",
972
+ "name": "locale",
973
+ "protocol": "openid-connect",
974
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
975
+ "consentRequired": false,
976
+ "config": {
977
+ "introspection.token.claim": "true",
978
+ "userinfo.token.claim": "true",
979
+ "user.attribute": "locale",
980
+ "id.token.claim": "true",
981
+ "access.token.claim": "true",
982
+ "claim.name": "locale",
983
+ "jsonType.label": "String"
984
+ }
985
+ },
986
+ {
987
+ "id": "94880dd1-cf8e-44bd-9fc5-d30da22087ba",
988
+ "name": "middle name",
989
+ "protocol": "openid-connect",
990
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
991
+ "consentRequired": false,
992
+ "config": {
993
+ "introspection.token.claim": "true",
994
+ "userinfo.token.claim": "true",
995
+ "user.attribute": "middleName",
996
+ "id.token.claim": "true",
997
+ "access.token.claim": "true",
998
+ "claim.name": "middle_name",
999
+ "jsonType.label": "String"
1000
+ }
1001
+ },
1002
+ {
1003
+ "id": "51437d5a-cb3c-4421-9d8e-ddd1fb5d0222",
1004
+ "name": "website",
1005
+ "protocol": "openid-connect",
1006
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1007
+ "consentRequired": false,
1008
+ "config": {
1009
+ "introspection.token.claim": "true",
1010
+ "userinfo.token.claim": "true",
1011
+ "user.attribute": "website",
1012
+ "id.token.claim": "true",
1013
+ "access.token.claim": "true",
1014
+ "claim.name": "website",
1015
+ "jsonType.label": "String"
1016
+ }
1017
+ },
1018
+ {
1019
+ "id": "f6e565d0-9257-4347-83a9-1a6262b3719d",
1020
+ "name": "updated at",
1021
+ "protocol": "openid-connect",
1022
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1023
+ "consentRequired": false,
1024
+ "config": {
1025
+ "introspection.token.claim": "true",
1026
+ "userinfo.token.claim": "true",
1027
+ "user.attribute": "updatedAt",
1028
+ "id.token.claim": "true",
1029
+ "access.token.claim": "true",
1030
+ "claim.name": "updated_at",
1031
+ "jsonType.label": "long"
1032
+ }
1033
+ },
1034
+ {
1035
+ "id": "02ce2fe1-4960-4110-89b6-c3e5726a98e7",
1036
+ "name": "username",
1037
+ "protocol": "openid-connect",
1038
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1039
+ "consentRequired": false,
1040
+ "config": {
1041
+ "introspection.token.claim": "true",
1042
+ "userinfo.token.claim": "true",
1043
+ "user.attribute": "username",
1044
+ "id.token.claim": "true",
1045
+ "access.token.claim": "true",
1046
+ "claim.name": "preferred_username",
1047
+ "jsonType.label": "String"
1048
+ }
1049
+ },
1050
+ {
1051
+ "id": "9939d565-954a-4796-9c2b-f916232dfe85",
1052
+ "name": "family name",
1053
+ "protocol": "openid-connect",
1054
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1055
+ "consentRequired": false,
1056
+ "config": {
1057
+ "introspection.token.claim": "true",
1058
+ "userinfo.token.claim": "true",
1059
+ "user.attribute": "lastName",
1060
+ "id.token.claim": "true",
1061
+ "access.token.claim": "true",
1062
+ "claim.name": "family_name",
1063
+ "jsonType.label": "String"
1064
+ }
1065
+ },
1066
+ {
1067
+ "id": "fc6433e8-b829-4567-b105-4e23658742f7",
1068
+ "name": "nickname",
1069
+ "protocol": "openid-connect",
1070
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1071
+ "consentRequired": false,
1072
+ "config": {
1073
+ "introspection.token.claim": "true",
1074
+ "userinfo.token.claim": "true",
1075
+ "user.attribute": "nickname",
1076
+ "id.token.claim": "true",
1077
+ "access.token.claim": "true",
1078
+ "claim.name": "nickname",
1079
+ "jsonType.label": "String"
1080
+ }
1081
+ },
1082
+ {
1083
+ "id": "effaee81-88d6-48e7-a08a-7b39ea88827f",
1084
+ "name": "picture",
1085
+ "protocol": "openid-connect",
1086
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1087
+ "consentRequired": false,
1088
+ "config": {
1089
+ "introspection.token.claim": "true",
1090
+ "userinfo.token.claim": "true",
1091
+ "user.attribute": "picture",
1092
+ "id.token.claim": "true",
1093
+ "access.token.claim": "true",
1094
+ "claim.name": "picture",
1095
+ "jsonType.label": "String"
1096
+ }
1097
+ },
1098
+ {
1099
+ "id": "068f4cf8-b079-4a5f-8c20-933fdb949be7",
1100
+ "name": "zoneinfo",
1101
+ "protocol": "openid-connect",
1102
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1103
+ "consentRequired": false,
1104
+ "config": {
1105
+ "introspection.token.claim": "true",
1106
+ "userinfo.token.claim": "true",
1107
+ "user.attribute": "zoneinfo",
1108
+ "id.token.claim": "true",
1109
+ "access.token.claim": "true",
1110
+ "claim.name": "zoneinfo",
1111
+ "jsonType.label": "String"
1112
+ }
1113
+ },
1114
+ {
1115
+ "id": "04611199-7e12-4318-86df-648700ed921b",
1116
+ "name": "given name",
1117
+ "protocol": "openid-connect",
1118
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1119
+ "consentRequired": false,
1120
+ "config": {
1121
+ "introspection.token.claim": "true",
1122
+ "userinfo.token.claim": "true",
1123
+ "user.attribute": "firstName",
1124
+ "id.token.claim": "true",
1125
+ "access.token.claim": "true",
1126
+ "claim.name": "given_name",
1127
+ "jsonType.label": "String"
1128
+ }
1129
+ },
1130
+ {
1131
+ "id": "5a8596d4-2805-4cc3-87f7-cb61c15f4639",
1132
+ "name": "birthdate",
1133
+ "protocol": "openid-connect",
1134
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1135
+ "consentRequired": false,
1136
+ "config": {
1137
+ "introspection.token.claim": "true",
1138
+ "userinfo.token.claim": "true",
1139
+ "user.attribute": "birthdate",
1140
+ "id.token.claim": "true",
1141
+ "access.token.claim": "true",
1142
+ "claim.name": "birthdate",
1143
+ "jsonType.label": "String"
1144
+ }
1145
+ },
1146
+ {
1147
+ "id": "a2903b6b-954b-45ca-9cc7-2f334c5664d6",
1148
+ "name": "full name",
1149
+ "protocol": "openid-connect",
1150
+ "protocolMapper": "oidc-full-name-mapper",
1151
+ "consentRequired": false,
1152
+ "config": {
1153
+ "id.token.claim": "true",
1154
+ "introspection.token.claim": "true",
1155
+ "access.token.claim": "true",
1156
+ "userinfo.token.claim": "true"
1157
+ }
1158
+ },
1159
+ {
1160
+ "id": "c226be74-7c32-46dd-bb59-6cb746122e63",
1161
+ "name": "gender",
1162
+ "protocol": "openid-connect",
1163
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1164
+ "consentRequired": false,
1165
+ "config": {
1166
+ "introspection.token.claim": "true",
1167
+ "userinfo.token.claim": "true",
1168
+ "user.attribute": "gender",
1169
+ "id.token.claim": "true",
1170
+ "access.token.claim": "true",
1171
+ "claim.name": "gender",
1172
+ "jsonType.label": "String"
1173
+ }
1174
+ },
1175
+ {
1176
+ "id": "beee7b3f-e350-4a5a-bd58-283754616822",
1177
+ "name": "profile",
1178
+ "protocol": "openid-connect",
1179
+ "protocolMapper": "oidc-usermodel-attribute-mapper",
1180
+ "consentRequired": false,
1181
+ "config": {
1182
+ "introspection.token.claim": "true",
1183
+ "userinfo.token.claim": "true",
1184
+ "user.attribute": "profile",
1185
+ "id.token.claim": "true",
1186
+ "access.token.claim": "true",
1187
+ "claim.name": "profile",
1188
+ "jsonType.label": "String"
1189
+ }
1190
+ }
1191
+ ]
1192
+ },
1193
+ {
1194
+ "id": "58b780fe-3ae1-4a9a-b753-83c73d8b9b16",
1195
+ "name": "web-origins",
1196
+ "description": "OpenID Connect scope for add allowed web origins to the access token",
1197
+ "protocol": "openid-connect",
1198
+ "attributes": {
1199
+ "include.in.token.scope": "false",
1200
+ "display.on.consent.screen": "false",
1201
+ "consent.screen.text": ""
1202
+ },
1203
+ "protocolMappers": [
1204
+ {
1205
+ "id": "42ba398f-544f-4d8f-904c-751ca128851b",
1206
+ "name": "allowed web origins",
1207
+ "protocol": "openid-connect",
1208
+ "protocolMapper": "oidc-allowed-origins-mapper",
1209
+ "consentRequired": false,
1210
+ "config": {
1211
+ "introspection.token.claim": "true",
1212
+ "access.token.claim": "true"
1213
+ }
1214
+ }
1215
+ ]
1216
+ },
1217
+ {
1218
+ "id": "82380a8a-21ac-4ccb-9537-089e6f6925b0",
1219
+ "name": "roles",
1220
+ "description": "OpenID Connect scope for add user roles to the access token",
1221
+ "protocol": "openid-connect",
1222
+ "attributes": {
1223
+ "include.in.token.scope": "false",
1224
+ "display.on.consent.screen": "true",
1225
+ "consent.screen.text": "${rolesScopeConsentText}"
1226
+ },
1227
+ "protocolMappers": [
1228
+ {
1229
+ "id": "f74a0bc9-d605-4d22-8a55-b50646a8feee",
1230
+ "name": "client roles",
1231
+ "protocol": "openid-connect",
1232
+ "protocolMapper": "oidc-usermodel-client-role-mapper",
1233
+ "consentRequired": false,
1234
+ "config": {
1235
+ "introspection.token.claim": "true",
1236
+ "multivalued": "true",
1237
+ "user.attribute": "foo",
1238
+ "access.token.claim": "true",
1239
+ "claim.name": "resource_access.${client_id}.roles",
1240
+ "jsonType.label": "String"
1241
+ }
1242
+ },
1243
+ {
1244
+ "id": "76ed7617-0e8f-4eae-a3d7-1f56a449146b",
1245
+ "name": "realm roles",
1246
+ "protocol": "openid-connect",
1247
+ "protocolMapper": "oidc-usermodel-realm-role-mapper",
1248
+ "consentRequired": false,
1249
+ "config": {
1250
+ "introspection.token.claim": "true",
1251
+ "multivalued": "true",
1252
+ "user.attribute": "foo",
1253
+ "access.token.claim": "true",
1254
+ "claim.name": "realm_access.roles",
1255
+ "jsonType.label": "String"
1256
+ }
1257
+ },
1258
+ {
1259
+ "id": "161fe03f-45a1-40b9-8127-73666be6146c",
1260
+ "name": "audience resolve",
1261
+ "protocol": "openid-connect",
1262
+ "protocolMapper": "oidc-audience-resolve-mapper",
1263
+ "consentRequired": false,
1264
+ "config": {
1265
+ "introspection.token.claim": "true",
1266
+ "access.token.claim": "true"
1267
+ }
1268
+ }
1269
+ ]
1270
+ },
1271
+ {
1272
+ "id": "d80195f7-4516-4028-9327-18896bfa0e76",
1273
+ "name": "address",
1274
+ "description": "OpenID Connect built-in scope: address",
1275
+ "protocol": "openid-connect",
1276
+ "attributes": {
1277
+ "include.in.token.scope": "true",
1278
+ "display.on.consent.screen": "true",
1279
+ "consent.screen.text": "${addressScopeConsentText}"
1280
+ },
1281
+ "protocolMappers": [
1282
+ {
1283
+ "id": "3d90f8b1-12a4-415f-bd93-dc729a1aac83",
1284
+ "name": "address",
1285
+ "protocol": "openid-connect",
1286
+ "protocolMapper": "oidc-address-mapper",
1287
+ "consentRequired": false,
1288
+ "config": {
1289
+ "user.attribute.formatted": "formatted",
1290
+ "user.attribute.country": "country",
1291
+ "introspection.token.claim": "true",
1292
+ "user.attribute.postal_code": "postal_code",
1293
+ "userinfo.token.claim": "true",
1294
+ "user.attribute.street": "street",
1295
+ "id.token.claim": "true",
1296
+ "user.attribute.region": "region",
1297
+ "access.token.claim": "true",
1298
+ "user.attribute.locality": "locality"
1299
+ }
1300
+ }
1301
+ ]
1302
+ }
1303
+ ],
1304
+ "defaultDefaultClientScopes": [
1305
+ "role_list",
1306
+ "profile",
1307
+ "email",
1308
+ "roles",
1309
+ "web-origins",
1310
+ "acr"
1311
+ ],
1312
+ "defaultOptionalClientScopes": [
1313
+ "offline_access",
1314
+ "address",
1315
+ "phone",
1316
+ "microprofile-jwt"
1317
+ ],
1318
+ "browserSecurityHeaders": {
1319
+ "contentSecurityPolicyReportOnly": "",
1320
+ "xContentTypeOptions": "nosniff",
1321
+ "referrerPolicy": "no-referrer",
1322
+ "xRobotsTag": "none",
1323
+ "xFrameOptions": "SAMEORIGIN",
1324
+ "contentSecurityPolicy": "frame-src 'self'; frame-ancestors 'self'; object-src 'none';",
1325
+ "xXSSProtection": "1; mode=block",
1326
+ "strictTransportSecurity": "max-age=31536000; includeSubDomains"
1327
+ },
1328
+ "smtpServer": {},
1329
+ "loginTheme": "",
1330
+ "accountTheme": "keycloakify-starter",
1331
+ "adminTheme": "",
1332
+ "emailTheme": "",
1333
+ "eventsEnabled": false,
1334
+ "eventsListeners": ["jboss-logging"],
1335
+ "enabledEventTypes": [],
1336
+ "adminEventsEnabled": false,
1337
+ "adminEventsDetailsEnabled": false,
1338
+ "identityProviders": [],
1339
+ "identityProviderMappers": [],
1340
+ "components": {
1341
+ "org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy": [
1342
+ {
1343
+ "id": "f289d7fd-002a-4b94-b31b-e749f2e8c929",
1344
+ "name": "Allowed Protocol Mapper Types",
1345
+ "providerId": "allowed-protocol-mappers",
1346
+ "subType": "anonymous",
1347
+ "subComponents": {},
1348
+ "config": {
1349
+ "allowed-protocol-mapper-types": [
1350
+ "oidc-sha256-pairwise-sub-mapper",
1351
+ "oidc-full-name-mapper",
1352
+ "oidc-usermodel-attribute-mapper",
1353
+ "saml-user-property-mapper",
1354
+ "oidc-address-mapper",
1355
+ "saml-role-list-mapper",
1356
+ "saml-user-attribute-mapper",
1357
+ "oidc-usermodel-property-mapper"
1358
+ ]
1359
+ }
1360
+ },
1361
+ {
1362
+ "id": "2cc912f4-dece-4896-8109-83cd9ebc0a94",
1363
+ "name": "Consent Required",
1364
+ "providerId": "consent-required",
1365
+ "subType": "anonymous",
1366
+ "subComponents": {},
1367
+ "config": {}
1368
+ },
1369
+ {
1370
+ "id": "9f649d42-0651-4ffb-8d66-d37668f7de66",
1371
+ "name": "Full Scope Disabled",
1372
+ "providerId": "scope",
1373
+ "subType": "anonymous",
1374
+ "subComponents": {},
1375
+ "config": {}
1376
+ },
1377
+ {
1378
+ "id": "86f27d14-3985-4d1f-beae-37e8ec1cad45",
1379
+ "name": "Allowed Client Scopes",
1380
+ "providerId": "allowed-client-templates",
1381
+ "subType": "authenticated",
1382
+ "subComponents": {},
1383
+ "config": {
1384
+ "allow-default-scopes": ["true"]
1385
+ }
1386
+ },
1387
+ {
1388
+ "id": "28059f5e-8d6b-4ff5-be82-de65e00bf546",
1389
+ "name": "Max Clients Limit",
1390
+ "providerId": "max-clients",
1391
+ "subType": "anonymous",
1392
+ "subComponents": {},
1393
+ "config": {
1394
+ "max-clients": ["200"]
1395
+ }
1396
+ },
1397
+ {
1398
+ "id": "dde0e878-b750-4284-b1bc-2f4e030af77e",
1399
+ "name": "Allowed Client Scopes",
1400
+ "providerId": "allowed-client-templates",
1401
+ "subType": "anonymous",
1402
+ "subComponents": {},
1403
+ "config": {
1404
+ "allow-default-scopes": ["true"]
1405
+ }
1406
+ },
1407
+ {
1408
+ "id": "545d007b-d351-46ab-91ff-f5ff106b3b6e",
1409
+ "name": "Trusted Hosts",
1410
+ "providerId": "trusted-hosts",
1411
+ "subType": "anonymous",
1412
+ "subComponents": {},
1413
+ "config": {
1414
+ "host-sending-registration-request-must-match": ["true"],
1415
+ "client-uris-must-match": ["true"]
1416
+ }
1417
+ },
1418
+ {
1419
+ "id": "aa554a2f-505c-4b30-ba25-810304049a9d",
1420
+ "name": "Allowed Protocol Mapper Types",
1421
+ "providerId": "allowed-protocol-mappers",
1422
+ "subType": "authenticated",
1423
+ "subComponents": {},
1424
+ "config": {
1425
+ "allowed-protocol-mapper-types": [
1426
+ "saml-user-attribute-mapper",
1427
+ "oidc-sha256-pairwise-sub-mapper",
1428
+ "oidc-usermodel-attribute-mapper",
1429
+ "oidc-address-mapper",
1430
+ "saml-role-list-mapper",
1431
+ "oidc-full-name-mapper",
1432
+ "saml-user-property-mapper",
1433
+ "oidc-usermodel-property-mapper"
1434
+ ]
1435
+ }
1436
+ }
1437
+ ],
1438
+ "org.keycloak.keys.KeyProvider": [
1439
+ {
1440
+ "id": "f8e3412c-73f8-44dc-bad1-985e5fd26027",
1441
+ "name": "rsa-enc-generated",
1442
+ "providerId": "rsa-enc-generated",
1443
+ "subComponents": {},
1444
+ "config": {
1445
+ "privateKey": [
1446
+ "MIIEowIBAAKCAQEA3dc4kZf0ztlkaMJ8OaTab3KzdXIUJgG4SZFmHCvHEwM8Jhn2qF7Cz3pbS3vDEPmb9FduFKZM47z5hayyM2EDea1hCDjbGNfyd3hd225TmaLB9/7hQde2kprbM7r/Jq+TNIwnfXfW930Byp4YrlvGdSK3vcSp7BmWtH/7ovxVhJ6G9nKDtbUmdfIIj4X4JxcCO+n9y/3p2ku3b2JM2VQWbyc8xHyZ9MI/FI1OQ9hxRl9f+o8keR6DcT8+Cd+oihjz2tgx+3QcPNQ304JACEKs7eLLEX2CA8XMXQ/PgZ39QowJrys70cnMNNZGVhPHkEEhBdTJkIGJEc+YGng/picdOQIDAQABAoIBAA7doveBGjeyskhU4ODQaI53iyNJJqSykJtmQdRZPw9jZzUnoA0bWiAJYBnLhg0ndOlBFjbbCAo3OfW+8CtPCnd6ao16MrBtzcLUwl4q4zF6vYqbvi0pdYOwgRTsqISt1x/HCC4GIrxV8hGv83gOEI5j6hhhsYAi6aO+ppzlUbby9EIdOFxLSFqEqHnIW5MuktIAjUMz3/RUhPaXCLfnEyHTiqXSZ+jCwEiQx4mccBSgQSTzbUwKpZ92xWvjb72wUC4i71ilDacf2OK7mRb9WQTmanKW7gCGyLTzEaeOEXvMYJ85FSYRoikSEVRlzdZ9j7+d2VLOf6Gij3vS1WhZTEsCgYEA7pNnbgUzTxo69+2njVFil5VTdm0x6+j2HRbkhLv14ZUBG/HUIJWRNTMgwKCkTb7Zth7EYBDqqx+CnBjuFK68DT8J14K0OyCDaWixI0rrEC3RkiiL3gRbDENhBlqO4ZhLnttRzL0+G1pznVLQrNqBO608TC73H0SUTv4B9647CmcCgYEA7grsxMYaDkfdtnhUAYdDtxQYuD6qC5sjzfxd/qUAb6+b7/n8BB0yJ7yUeKcsvfbCHqDa29kWesuaG3Jpgt0FY6FC5C5tcva5KOAnP6s0mgxu7G5JpOpbY3kFNvkPRN+aP+PJOv5ZZR1EinPPVzMcpz/GcdYEnSwaF9mHyMnZF18CgYAonIb6v3/gc0KeeaIP+E6kJxMyEZxx4BIlGYSE48oTQF4T97J4aX1yZOWqZK4TXe2Jhus+vyJzRsXg9I1yj9wLFTQDr4gmmH5GL0AYFeS1uFb4XlaQ0IT/LWkSv8+ar2YQAJ2IEJ7F4TvVCAflpLxjADZHcac3d2EXoT2Mf+gk+QKBgQCbuQflPldjSj5PlW4XRd7VkM8PEOd7CjWlFliDMnwTlEUl+1qTcmoSNrrGJ08MwrWBBefG9MBQ+orJM9K0alSRNbilv32YPLEqfWEPtLeHo2SZRRjmSu4YJ95ydQI5IzIsY56L+kKO9FOXY2WbfPNcskrmw4RnMaesPIEoqGtdbwKBgBJ8qNLZrchF521r7dJB8kcC9PsDZoLXMi1neKHHlUWLe6t9JGrgnjApy3FctDJD+MCGUdyqudnDf/4fjc4G4xO8qhHLaBG43cOaFIqFzuNPVG9NVxZYIaEUX6k1VfRbaB+WX2gPUEgXtuJA+0aelkrdr7peghnZGhGUesO5ziLd"
1447
+ ],
1448
+ "keyUse": ["ENC"],
1449
+ "certificate": [
1450
+ "MIICnTCCAYUCBgGPllpgqzANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdteXJlYWxtMB4XDTI0MDUyMDE0MTIzNloXDTM0MDUyMDE0MTQxNlowEjEQMA4GA1UEAwwHbXlyZWFsbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN3XOJGX9M7ZZGjCfDmk2m9ys3VyFCYBuEmRZhwrxxMDPCYZ9qhews96W0t7wxD5m/RXbhSmTOO8+YWssjNhA3mtYQg42xjX8nd4XdtuU5miwff+4UHXtpKa2zO6/yavkzSMJ3131vd9AcqeGK5bxnUit73EqewZlrR/+6L8VYSehvZyg7W1JnXyCI+F+CcXAjvp/cv96dpLt29iTNlUFm8nPMR8mfTCPxSNTkPYcUZfX/qPJHkeg3E/PgnfqIoY89rYMft0HDzUN9OCQAhCrO3iyxF9ggPFzF0Pz4Gd/UKMCa8rO9HJzDTWRlYTx5BBIQXUyZCBiRHPmBp4P6YnHTkCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAaTOz7jQv16D38jWX774eEdhfpKwoFmbsybQ7TO9ZRSaN9l8pKtZXAXUVKaTwpBjzG3QoVirFkZ2GPz0jezVa4jhH26AAv7FZKSP1FZ/buSUbV6XNIhdne8PE+ggObGeCHefeEgOLXnWFrSr43XrlZnhbNuxiVRYu6RKtuG1V3Ycs06wAPclu5bIrWtqDq96w3q2Up/CgLvQXLNs4X7gXqnwlJqS/CLvwKK1tzO6UKOal/V8dSPQuo3XY6oBHFOgyOQdlrO3xroK40T/G9T9bczJBrO3eDB1/mMlbHkk9kXWRjrqMomdrFqWrxqqda7+danSPbzHsJGZtZKEtLXx6Gw=="
1451
+ ],
1452
+ "priority": ["100"],
1453
+ "algorithm": ["RSA-OAEP"]
1454
+ }
1455
+ },
1456
+ {
1457
+ "id": "6f637cad-3706-4c97-b4e5-ab230104d1f0",
1458
+ "name": "aes-generated",
1459
+ "providerId": "aes-generated",
1460
+ "subComponents": {},
1461
+ "config": {
1462
+ "kid": ["e29dcdba-12e4-4e6c-8190-9f1d0df345a5"],
1463
+ "secret": ["PEyekPW9N8_E5bZIzNVztw"],
1464
+ "priority": ["100"]
1465
+ }
1466
+ },
1467
+ {
1468
+ "id": "63a57d4f-e952-4d37-ba58-a79f6f0692e7",
1469
+ "name": "hmac-generated",
1470
+ "providerId": "hmac-generated",
1471
+ "subComponents": {},
1472
+ "config": {
1473
+ "kid": ["819b6963-4adf-4ca0-a49b-d83ca77902df"],
1474
+ "secret": [
1475
+ "20ufWaXdKGihY3ObEZrO9qe4yQQVM5JJnMvQk-3yf8vnupPmorPdISG2Ea2zYfrEWkkqat3TtMlktJFzt-YuNQ"
1476
+ ],
1477
+ "priority": ["100"],
1478
+ "algorithm": ["HS256"]
1479
+ }
1480
+ },
1481
+ {
1482
+ "id": "bf0d1f33-f472-4ef5-b356-79e3533db4e5",
1483
+ "name": "rsa-generated",
1484
+ "providerId": "rsa-generated",
1485
+ "subComponents": {},
1486
+ "config": {
1487
+ "privateKey": [
1488
+ "MIIEogIBAAKCAQEAk5I37zrgm0HlbkA7jnfSerEhvVgQqIzYSV5xhfAnsShZWwUXZwefC+IK8iX+uD5rBRKvQhyFEK2L2pfx+Fy6Yemkdo7T4z9RBFD55RXgzPTzB7G8hIEezmwn3qq27BaM/dOaYkCVtI/GDEpIvwXtAvmgIFPS1npFT/VW0WtGk/pyeg6g00LwQEWhsN3kECJN42AyoseuOkYQ0zvBmoraKmBYs2BfDUx3NoPDcCOLWuIndsrPLCkhXxhpkCHOz1JjdW9fYklJEXIh4yDO4OR1qh1HwgMBKhGkpH2c94RsKzUk8oTEqYYxDZldfvISZPH0Zw2jMsxEKRGEqSxnjFRzFQIDAQABAoIBAACKfW6A1IB1NCJclWtPCKQ/AHzpdPwtMgDI2hkv2XFmkLdK9DxCNKTOQhSDq6Sgw/Mrj51qLdmzDStyuaYbruo7eUke+mtfmMwvgM8EbsPJlRd+4Q5KS+LdViMUlKGWbpNionMAQhw8l7EFV7Ftk+IaKKpdrEzxe04Q++2+Gy7hL3s3VdsAsPulev1fqpYCuifAKzNBj582rsHMua6WgUXJN5r+EN3JngoXVTncfa0L2Ra3WJtr8vELpKSE/ubjNfk7kUr6noF8v89YG3OuCvDFEBof85CHmzCCLXFRt71IyKIO0HFDRTWNjp0sP5UpkSkRBBxMPCj9ZaiEt0zmwpkCgYEAzu4lhTqBzM1DGFgAh6RHn9vUUl5GmGiXm0PNwjnjRx3C6BuuhmKaPlAUWExIm94jrmfAlIwlEZj3j/TXTALpF4HxLnI5Pa2/50mbIHtm7f0TTIWeG8jgFtmYcnbcMLclZTJzmkqi5SAiMEqk1jyFvHxTxGZCIbRNKDEZKxY6920CgYEAtpCicDbwkix0rCIWrXs8zPRJmPSTVGTvwX//dy9wlJqcfWwXOYWvefF+Q8YfF2fwrTPe/u9XDepEWIA9AkHE0PCE0tpP/n1DoIb2lMiXxjX1myLDh11IOtLDHsjxsXYrAj/9c8/gZWw/2y2FtCDN59uexsGEDXAtbVdxdvEbWUkCgYBJhkiCnBU+pbgvUCVwDKj+XeeFFMZUpOUpX+AeIN9mh2aXfi52xVY0ydNQxFoQN8/JykedAGazZ/yeg8pz0Zzso1kEvcUk6zWCgp7B3dbmvMM8r0VMbgVhWRNXqG/4RzrcSB7XNanHa7F6IyuKi5qhLDO/Vu4sd5nqq/dbXdy5yQKBgB0OsjwIEoxBdSR8nH1qMwgwDZLBwr1Y/2wd8kxHCbUtUqEH1j56j65qCH3DB+nSylTW/7Q15fY6BjzL1GoKi8fxsEJbKwZHa78eHBscPkP3DKtvgg2GhFuQdivtMcLcGwZVpwKK4J1j+FnrSe+clQlFRGVAIcN9yk0v8MhMody5AoGAVzppjutQbmkfeZUQN5vOUp8Xw/nzyWNU2KaEaFKqgdmJQhTF09AV6dTXUrXDow+DVS7RNCDVRbWDRn1TDT+mSgylIp7PC3M5tpOnTRbqK0oAM0xyg5kg3eDL1vIYpIKtfdO/RokqGnXZSNGQEqudHTl1VgjLY6T47HaVJeu7JYU="
1489
+ ],
1490
+ "keyUse": ["SIG"],
1491
+ "certificate": [
1492
+ "MIICnTCCAYUCBgGPllpgIjANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdteXJlYWxtMB4XDTI0MDUyMDE0MTIzNloXDTM0MDUyMDE0MTQxNlowEjEQMA4GA1UEAwwHbXlyZWFsbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJOSN+864JtB5W5AO4530nqxIb1YEKiM2ElecYXwJ7EoWVsFF2cHnwviCvIl/rg+awUSr0IchRCti9qX8fhcumHppHaO0+M/UQRQ+eUV4Mz08wexvISBHs5sJ96qtuwWjP3TmmJAlbSPxgxKSL8F7QL5oCBT0tZ6RU/1VtFrRpP6cnoOoNNC8EBFobDd5BAiTeNgMqLHrjpGENM7wZqK2ipgWLNgXw1MdzaDw3Aji1riJ3bKzywpIV8YaZAhzs9SY3VvX2JJSRFyIeMgzuDkdaodR8IDASoRpKR9nPeEbCs1JPKExKmGMQ2ZXX7yEmTx9GcNozLMRCkRhKksZ4xUcxUCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAJXUFhVPgu8Qdof5fFzV6asaRy+SAA0ymDSSY4bTMMEV7cCX5TfTZwqK/AIGc+C04Fk+xaQFKlW3QgK2+Fhu43xxQoAhDvQopuNEXqwv/PoWmdseSYpOXozT/UrrOLHcWs8bJz4CeL4hgyks22IUyiH7yqiAnw36uA5za7iB8G/nV6/5AXi6MMlzJ1V0PqoAvpgRrxlts7qI2cK6dcEZ1XB6tAOm4cz9oRe+DT8dw9J/zjAicSzAnNWEgijQz4eG7Hn4fesgNTaq38G9rMHgHlp+cuxEC8r8iVjfcpwep4BwMqbrwjj4JnpG7pG7H29yY1JxDOcrruOM9t21SmUK9aA=="
1493
+ ],
1494
+ "priority": ["100"]
1495
+ }
1496
+ }
1497
+ ]
1498
+ },
1499
+ "internationalizationEnabled": true,
1500
+ "supportedLocales": ["ar", "de", "el", "en", "fa", "ca", "es"],
1501
+ "defaultLocale": "en",
1502
+ "authenticationFlows": [
1503
+ {
1504
+ "id": "3d3b9160-e633-4a51-b687-55fca932c6c1",
1505
+ "alias": "Account verification options",
1506
+ "description": "Method with which to verity the existing account",
1507
+ "providerId": "basic-flow",
1508
+ "topLevel": false,
1509
+ "builtIn": true,
1510
+ "authenticationExecutions": [
1511
+ {
1512
+ "authenticator": "idp-email-verification",
1513
+ "authenticatorFlow": false,
1514
+ "requirement": "ALTERNATIVE",
1515
+ "priority": 10,
1516
+ "autheticatorFlow": false,
1517
+ "userSetupAllowed": false
1518
+ },
1519
+ {
1520
+ "authenticatorFlow": true,
1521
+ "requirement": "ALTERNATIVE",
1522
+ "priority": 20,
1523
+ "autheticatorFlow": true,
1524
+ "flowAlias": "Verify Existing Account by Re-authentication",
1525
+ "userSetupAllowed": false
1526
+ }
1527
+ ]
1528
+ },
1529
+ {
1530
+ "id": "b6868e6f-121c-4e87-af0f-cb503564d9b0",
1531
+ "alias": "Browser - Conditional OTP",
1532
+ "description": "Flow to determine if the OTP is required for the authentication",
1533
+ "providerId": "basic-flow",
1534
+ "topLevel": false,
1535
+ "builtIn": true,
1536
+ "authenticationExecutions": [
1537
+ {
1538
+ "authenticator": "conditional-user-configured",
1539
+ "authenticatorFlow": false,
1540
+ "requirement": "REQUIRED",
1541
+ "priority": 10,
1542
+ "autheticatorFlow": false,
1543
+ "userSetupAllowed": false
1544
+ },
1545
+ {
1546
+ "authenticator": "auth-otp-form",
1547
+ "authenticatorFlow": false,
1548
+ "requirement": "REQUIRED",
1549
+ "priority": 20,
1550
+ "autheticatorFlow": false,
1551
+ "userSetupAllowed": false
1552
+ }
1553
+ ]
1554
+ },
1555
+ {
1556
+ "id": "a2ef0f95-2323-47cb-97d9-55b0334bdc7c",
1557
+ "alias": "Direct Grant - Conditional OTP",
1558
+ "description": "Flow to determine if the OTP is required for the authentication",
1559
+ "providerId": "basic-flow",
1560
+ "topLevel": false,
1561
+ "builtIn": true,
1562
+ "authenticationExecutions": [
1563
+ {
1564
+ "authenticator": "conditional-user-configured",
1565
+ "authenticatorFlow": false,
1566
+ "requirement": "REQUIRED",
1567
+ "priority": 10,
1568
+ "autheticatorFlow": false,
1569
+ "userSetupAllowed": false
1570
+ },
1571
+ {
1572
+ "authenticator": "direct-grant-validate-otp",
1573
+ "authenticatorFlow": false,
1574
+ "requirement": "REQUIRED",
1575
+ "priority": 20,
1576
+ "autheticatorFlow": false,
1577
+ "userSetupAllowed": false
1578
+ }
1579
+ ]
1580
+ },
1581
+ {
1582
+ "id": "a3dfa288-ab51-4b92-b89a-93c45ed6cce0",
1583
+ "alias": "First broker login - Conditional OTP",
1584
+ "description": "Flow to determine if the OTP is required for the authentication",
1585
+ "providerId": "basic-flow",
1586
+ "topLevel": false,
1587
+ "builtIn": true,
1588
+ "authenticationExecutions": [
1589
+ {
1590
+ "authenticator": "conditional-user-configured",
1591
+ "authenticatorFlow": false,
1592
+ "requirement": "REQUIRED",
1593
+ "priority": 10,
1594
+ "autheticatorFlow": false,
1595
+ "userSetupAllowed": false
1596
+ },
1597
+ {
1598
+ "authenticator": "auth-otp-form",
1599
+ "authenticatorFlow": false,
1600
+ "requirement": "REQUIRED",
1601
+ "priority": 20,
1602
+ "autheticatorFlow": false,
1603
+ "userSetupAllowed": false
1604
+ }
1605
+ ]
1606
+ },
1607
+ {
1608
+ "id": "7f61de52-47c7-4e09-8f3d-e41ea614cf9e",
1609
+ "alias": "Handle Existing Account",
1610
+ "description": "Handle what to do if there is existing account with same email/username like authenticated identity provider",
1611
+ "providerId": "basic-flow",
1612
+ "topLevel": false,
1613
+ "builtIn": true,
1614
+ "authenticationExecutions": [
1615
+ {
1616
+ "authenticator": "idp-confirm-link",
1617
+ "authenticatorFlow": false,
1618
+ "requirement": "REQUIRED",
1619
+ "priority": 10,
1620
+ "autheticatorFlow": false,
1621
+ "userSetupAllowed": false
1622
+ },
1623
+ {
1624
+ "authenticatorFlow": true,
1625
+ "requirement": "REQUIRED",
1626
+ "priority": 20,
1627
+ "autheticatorFlow": true,
1628
+ "flowAlias": "Account verification options",
1629
+ "userSetupAllowed": false
1630
+ }
1631
+ ]
1632
+ },
1633
+ {
1634
+ "id": "f0709f98-d365-45ea-b55a-0bb5774ac84d",
1635
+ "alias": "Reset - Conditional OTP",
1636
+ "description": "Flow to determine if the OTP should be reset or not. Set to REQUIRED to force.",
1637
+ "providerId": "basic-flow",
1638
+ "topLevel": false,
1639
+ "builtIn": true,
1640
+ "authenticationExecutions": [
1641
+ {
1642
+ "authenticator": "conditional-user-configured",
1643
+ "authenticatorFlow": false,
1644
+ "requirement": "REQUIRED",
1645
+ "priority": 10,
1646
+ "autheticatorFlow": false,
1647
+ "userSetupAllowed": false
1648
+ },
1649
+ {
1650
+ "authenticator": "reset-otp",
1651
+ "authenticatorFlow": false,
1652
+ "requirement": "REQUIRED",
1653
+ "priority": 20,
1654
+ "autheticatorFlow": false,
1655
+ "userSetupAllowed": false
1656
+ }
1657
+ ]
1658
+ },
1659
+ {
1660
+ "id": "e0f6a0ce-5ce2-4119-b865-33d758acb2ad",
1661
+ "alias": "User creation or linking",
1662
+ "description": "Flow for the existing/non-existing user alternatives",
1663
+ "providerId": "basic-flow",
1664
+ "topLevel": false,
1665
+ "builtIn": true,
1666
+ "authenticationExecutions": [
1667
+ {
1668
+ "authenticatorConfig": "create unique user config",
1669
+ "authenticator": "idp-create-user-if-unique",
1670
+ "authenticatorFlow": false,
1671
+ "requirement": "ALTERNATIVE",
1672
+ "priority": 10,
1673
+ "autheticatorFlow": false,
1674
+ "userSetupAllowed": false
1675
+ },
1676
+ {
1677
+ "authenticatorFlow": true,
1678
+ "requirement": "ALTERNATIVE",
1679
+ "priority": 20,
1680
+ "autheticatorFlow": true,
1681
+ "flowAlias": "Handle Existing Account",
1682
+ "userSetupAllowed": false
1683
+ }
1684
+ ]
1685
+ },
1686
+ {
1687
+ "id": "662f35a6-7037-4dc3-b4ec-f7b59447c620",
1688
+ "alias": "Verify Existing Account by Re-authentication",
1689
+ "description": "Reauthentication of existing account",
1690
+ "providerId": "basic-flow",
1691
+ "topLevel": false,
1692
+ "builtIn": true,
1693
+ "authenticationExecutions": [
1694
+ {
1695
+ "authenticator": "idp-username-password-form",
1696
+ "authenticatorFlow": false,
1697
+ "requirement": "REQUIRED",
1698
+ "priority": 10,
1699
+ "autheticatorFlow": false,
1700
+ "userSetupAllowed": false
1701
+ },
1702
+ {
1703
+ "authenticatorFlow": true,
1704
+ "requirement": "CONDITIONAL",
1705
+ "priority": 20,
1706
+ "autheticatorFlow": true,
1707
+ "flowAlias": "First broker login - Conditional OTP",
1708
+ "userSetupAllowed": false
1709
+ }
1710
+ ]
1711
+ },
1712
+ {
1713
+ "id": "e36b66e6-4776-4055-bc6f-cf386392de64",
1714
+ "alias": "browser",
1715
+ "description": "browser based authentication",
1716
+ "providerId": "basic-flow",
1717
+ "topLevel": true,
1718
+ "builtIn": true,
1719
+ "authenticationExecutions": [
1720
+ {
1721
+ "authenticator": "auth-cookie",
1722
+ "authenticatorFlow": false,
1723
+ "requirement": "ALTERNATIVE",
1724
+ "priority": 10,
1725
+ "autheticatorFlow": false,
1726
+ "userSetupAllowed": false
1727
+ },
1728
+ {
1729
+ "authenticator": "auth-spnego",
1730
+ "authenticatorFlow": false,
1731
+ "requirement": "DISABLED",
1732
+ "priority": 20,
1733
+ "autheticatorFlow": false,
1734
+ "userSetupAllowed": false
1735
+ },
1736
+ {
1737
+ "authenticator": "identity-provider-redirector",
1738
+ "authenticatorFlow": false,
1739
+ "requirement": "ALTERNATIVE",
1740
+ "priority": 25,
1741
+ "autheticatorFlow": false,
1742
+ "userSetupAllowed": false
1743
+ },
1744
+ {
1745
+ "authenticatorFlow": true,
1746
+ "requirement": "ALTERNATIVE",
1747
+ "priority": 30,
1748
+ "autheticatorFlow": true,
1749
+ "flowAlias": "forms",
1750
+ "userSetupAllowed": false
1751
+ }
1752
+ ]
1753
+ },
1754
+ {
1755
+ "id": "17c78338-664e-49f8-9738-9ece4d76dbea",
1756
+ "alias": "clients",
1757
+ "description": "Base authentication for clients",
1758
+ "providerId": "client-flow",
1759
+ "topLevel": true,
1760
+ "builtIn": true,
1761
+ "authenticationExecutions": [
1762
+ {
1763
+ "authenticator": "client-secret",
1764
+ "authenticatorFlow": false,
1765
+ "requirement": "ALTERNATIVE",
1766
+ "priority": 10,
1767
+ "autheticatorFlow": false,
1768
+ "userSetupAllowed": false
1769
+ },
1770
+ {
1771
+ "authenticator": "client-jwt",
1772
+ "authenticatorFlow": false,
1773
+ "requirement": "ALTERNATIVE",
1774
+ "priority": 20,
1775
+ "autheticatorFlow": false,
1776
+ "userSetupAllowed": false
1777
+ },
1778
+ {
1779
+ "authenticator": "client-secret-jwt",
1780
+ "authenticatorFlow": false,
1781
+ "requirement": "ALTERNATIVE",
1782
+ "priority": 30,
1783
+ "autheticatorFlow": false,
1784
+ "userSetupAllowed": false
1785
+ },
1786
+ {
1787
+ "authenticator": "client-x509",
1788
+ "authenticatorFlow": false,
1789
+ "requirement": "ALTERNATIVE",
1790
+ "priority": 40,
1791
+ "autheticatorFlow": false,
1792
+ "userSetupAllowed": false
1793
+ }
1794
+ ]
1795
+ },
1796
+ {
1797
+ "id": "e1542a18-2c84-4661-ba90-d45b6b577034",
1798
+ "alias": "direct grant",
1799
+ "description": "OpenID Connect Resource Owner Grant",
1800
+ "providerId": "basic-flow",
1801
+ "topLevel": true,
1802
+ "builtIn": true,
1803
+ "authenticationExecutions": [
1804
+ {
1805
+ "authenticator": "direct-grant-validate-username",
1806
+ "authenticatorFlow": false,
1807
+ "requirement": "REQUIRED",
1808
+ "priority": 10,
1809
+ "autheticatorFlow": false,
1810
+ "userSetupAllowed": false
1811
+ },
1812
+ {
1813
+ "authenticator": "direct-grant-validate-password",
1814
+ "authenticatorFlow": false,
1815
+ "requirement": "REQUIRED",
1816
+ "priority": 20,
1817
+ "autheticatorFlow": false,
1818
+ "userSetupAllowed": false
1819
+ },
1820
+ {
1821
+ "authenticatorFlow": true,
1822
+ "requirement": "CONDITIONAL",
1823
+ "priority": 30,
1824
+ "autheticatorFlow": true,
1825
+ "flowAlias": "Direct Grant - Conditional OTP",
1826
+ "userSetupAllowed": false
1827
+ }
1828
+ ]
1829
+ },
1830
+ {
1831
+ "id": "e0eba6d2-bc36-4550-b7e0-f9708b38ed9a",
1832
+ "alias": "docker auth",
1833
+ "description": "Used by Docker clients to authenticate against the IDP",
1834
+ "providerId": "basic-flow",
1835
+ "topLevel": true,
1836
+ "builtIn": true,
1837
+ "authenticationExecutions": [
1838
+ {
1839
+ "authenticator": "docker-http-basic-authenticator",
1840
+ "authenticatorFlow": false,
1841
+ "requirement": "REQUIRED",
1842
+ "priority": 10,
1843
+ "autheticatorFlow": false,
1844
+ "userSetupAllowed": false
1845
+ }
1846
+ ]
1847
+ },
1848
+ {
1849
+ "id": "14b1c0ac-fe33-4d20-af2f-8db1410e73fb",
1850
+ "alias": "first broker login",
1851
+ "description": "Actions taken after first broker login with identity provider account, which is not yet linked to any Keycloak account",
1852
+ "providerId": "basic-flow",
1853
+ "topLevel": true,
1854
+ "builtIn": true,
1855
+ "authenticationExecutions": [
1856
+ {
1857
+ "authenticatorConfig": "review profile config",
1858
+ "authenticator": "idp-review-profile",
1859
+ "authenticatorFlow": false,
1860
+ "requirement": "REQUIRED",
1861
+ "priority": 10,
1862
+ "autheticatorFlow": false,
1863
+ "userSetupAllowed": false
1864
+ },
1865
+ {
1866
+ "authenticatorFlow": true,
1867
+ "requirement": "REQUIRED",
1868
+ "priority": 20,
1869
+ "autheticatorFlow": true,
1870
+ "flowAlias": "User creation or linking",
1871
+ "userSetupAllowed": false
1872
+ }
1873
+ ]
1874
+ },
1875
+ {
1876
+ "id": "a5e89acc-227e-4228-8e00-0bdee6584976",
1877
+ "alias": "forms",
1878
+ "description": "Username, password, otp and other auth forms.",
1879
+ "providerId": "basic-flow",
1880
+ "topLevel": false,
1881
+ "builtIn": true,
1882
+ "authenticationExecutions": [
1883
+ {
1884
+ "authenticator": "auth-username-password-form",
1885
+ "authenticatorFlow": false,
1886
+ "requirement": "REQUIRED",
1887
+ "priority": 10,
1888
+ "autheticatorFlow": false,
1889
+ "userSetupAllowed": false
1890
+ },
1891
+ {
1892
+ "authenticatorFlow": true,
1893
+ "requirement": "CONDITIONAL",
1894
+ "priority": 20,
1895
+ "autheticatorFlow": true,
1896
+ "flowAlias": "Browser - Conditional OTP",
1897
+ "userSetupAllowed": false
1898
+ }
1899
+ ]
1900
+ },
1901
+ {
1902
+ "id": "62085f8a-dfab-4443-bbc6-8137b2215d62",
1903
+ "alias": "registration",
1904
+ "description": "registration flow",
1905
+ "providerId": "basic-flow",
1906
+ "topLevel": true,
1907
+ "builtIn": true,
1908
+ "authenticationExecutions": [
1909
+ {
1910
+ "authenticator": "registration-page-form",
1911
+ "authenticatorFlow": true,
1912
+ "requirement": "REQUIRED",
1913
+ "priority": 10,
1914
+ "autheticatorFlow": true,
1915
+ "flowAlias": "registration form",
1916
+ "userSetupAllowed": false
1917
+ }
1918
+ ]
1919
+ },
1920
+ {
1921
+ "id": "ed37c318-ab37-423b-8254-ce68100da538",
1922
+ "alias": "registration form",
1923
+ "description": "registration form",
1924
+ "providerId": "form-flow",
1925
+ "topLevel": false,
1926
+ "builtIn": true,
1927
+ "authenticationExecutions": [
1928
+ {
1929
+ "authenticator": "registration-user-creation",
1930
+ "authenticatorFlow": false,
1931
+ "requirement": "REQUIRED",
1932
+ "priority": 20,
1933
+ "autheticatorFlow": false,
1934
+ "userSetupAllowed": false
1935
+ },
1936
+ {
1937
+ "authenticator": "registration-password-action",
1938
+ "authenticatorFlow": false,
1939
+ "requirement": "REQUIRED",
1940
+ "priority": 50,
1941
+ "autheticatorFlow": false,
1942
+ "userSetupAllowed": false
1943
+ },
1944
+ {
1945
+ "authenticator": "registration-recaptcha-action",
1946
+ "authenticatorFlow": false,
1947
+ "requirement": "DISABLED",
1948
+ "priority": 60,
1949
+ "autheticatorFlow": false,
1950
+ "userSetupAllowed": false
1951
+ }
1952
+ ]
1953
+ },
1954
+ {
1955
+ "id": "44979057-104c-45ed-9bfd-650e4afd70ed",
1956
+ "alias": "reset credentials",
1957
+ "description": "Reset credentials for a user if they forgot their password or something",
1958
+ "providerId": "basic-flow",
1959
+ "topLevel": true,
1960
+ "builtIn": true,
1961
+ "authenticationExecutions": [
1962
+ {
1963
+ "authenticator": "reset-credentials-choose-user",
1964
+ "authenticatorFlow": false,
1965
+ "requirement": "REQUIRED",
1966
+ "priority": 10,
1967
+ "autheticatorFlow": false,
1968
+ "userSetupAllowed": false
1969
+ },
1970
+ {
1971
+ "authenticator": "reset-credential-email",
1972
+ "authenticatorFlow": false,
1973
+ "requirement": "REQUIRED",
1974
+ "priority": 20,
1975
+ "autheticatorFlow": false,
1976
+ "userSetupAllowed": false
1977
+ },
1978
+ {
1979
+ "authenticator": "reset-password",
1980
+ "authenticatorFlow": false,
1981
+ "requirement": "REQUIRED",
1982
+ "priority": 30,
1983
+ "autheticatorFlow": false,
1984
+ "userSetupAllowed": false
1985
+ },
1986
+ {
1987
+ "authenticatorFlow": true,
1988
+ "requirement": "CONDITIONAL",
1989
+ "priority": 40,
1990
+ "autheticatorFlow": true,
1991
+ "flowAlias": "Reset - Conditional OTP",
1992
+ "userSetupAllowed": false
1993
+ }
1994
+ ]
1995
+ },
1996
+ {
1997
+ "id": "2eb7ed21-fe1a-4b9a-a9f8-b1792675fe85",
1998
+ "alias": "saml ecp",
1999
+ "description": "SAML ECP Profile Authentication Flow",
2000
+ "providerId": "basic-flow",
2001
+ "topLevel": true,
2002
+ "builtIn": true,
2003
+ "authenticationExecutions": [
2004
+ {
2005
+ "authenticator": "http-basic-authenticator",
2006
+ "authenticatorFlow": false,
2007
+ "requirement": "REQUIRED",
2008
+ "priority": 10,
2009
+ "autheticatorFlow": false,
2010
+ "userSetupAllowed": false
2011
+ }
2012
+ ]
2013
+ }
2014
+ ],
2015
+ "authenticatorConfig": [
2016
+ {
2017
+ "id": "0df4aa3d-3127-48c6-8688-408d280a0dc1",
2018
+ "alias": "create unique user config",
2019
+ "config": {
2020
+ "require.password.update.after.registration": "false"
2021
+ }
2022
+ },
2023
+ {
2024
+ "id": "725ab792-d78b-4e8e-a514-bd2da50795ad",
2025
+ "alias": "review profile config",
2026
+ "config": {
2027
+ "update.profile.on.first.login": "missing"
2028
+ }
2029
+ }
2030
+ ],
2031
+ "requiredActions": [
2032
+ {
2033
+ "alias": "CONFIGURE_TOTP",
2034
+ "name": "Configure OTP",
2035
+ "providerId": "CONFIGURE_TOTP",
2036
+ "enabled": true,
2037
+ "defaultAction": false,
2038
+ "priority": 10,
2039
+ "config": {}
2040
+ },
2041
+ {
2042
+ "alias": "TERMS_AND_CONDITIONS",
2043
+ "name": "Terms and Conditions",
2044
+ "providerId": "TERMS_AND_CONDITIONS",
2045
+ "enabled": true,
2046
+ "defaultAction": false,
2047
+ "priority": 20,
2048
+ "config": {}
2049
+ },
2050
+ {
2051
+ "alias": "UPDATE_PASSWORD",
2052
+ "name": "Update Password",
2053
+ "providerId": "UPDATE_PASSWORD",
2054
+ "enabled": true,
2055
+ "defaultAction": false,
2056
+ "priority": 30,
2057
+ "config": {}
2058
+ },
2059
+ {
2060
+ "alias": "UPDATE_PROFILE",
2061
+ "name": "Update Profile",
2062
+ "providerId": "UPDATE_PROFILE",
2063
+ "enabled": true,
2064
+ "defaultAction": false,
2065
+ "priority": 40,
2066
+ "config": {}
2067
+ },
2068
+ {
2069
+ "alias": "VERIFY_EMAIL",
2070
+ "name": "Verify Email",
2071
+ "providerId": "VERIFY_EMAIL",
2072
+ "enabled": true,
2073
+ "defaultAction": false,
2074
+ "priority": 50,
2075
+ "config": {}
2076
+ },
2077
+ {
2078
+ "alias": "delete_account",
2079
+ "name": "Delete Account",
2080
+ "providerId": "delete_account",
2081
+ "enabled": false,
2082
+ "defaultAction": false,
2083
+ "priority": 60,
2084
+ "config": {}
2085
+ },
2086
+ {
2087
+ "alias": "webauthn-register",
2088
+ "name": "Webauthn Register",
2089
+ "providerId": "webauthn-register",
2090
+ "enabled": true,
2091
+ "defaultAction": false,
2092
+ "priority": 70,
2093
+ "config": {}
2094
+ },
2095
+ {
2096
+ "alias": "webauthn-register-passwordless",
2097
+ "name": "Webauthn Register Passwordless",
2098
+ "providerId": "webauthn-register-passwordless",
2099
+ "enabled": true,
2100
+ "defaultAction": false,
2101
+ "priority": 80,
2102
+ "config": {}
2103
+ },
2104
+ {
2105
+ "alias": "update_user_locale",
2106
+ "name": "Update User Locale",
2107
+ "providerId": "update_user_locale",
2108
+ "enabled": true,
2109
+ "defaultAction": false,
2110
+ "priority": 1000,
2111
+ "config": {}
2112
+ }
2113
+ ],
2114
+ "browserFlow": "browser",
2115
+ "registrationFlow": "registration",
2116
+ "directGrantFlow": "direct grant",
2117
+ "resetCredentialsFlow": "reset credentials",
2118
+ "clientAuthenticationFlow": "clients",
2119
+ "dockerAuthenticationFlow": "docker auth",
2120
+ "attributes": {
2121
+ "cibaBackchannelTokenDeliveryMode": "poll",
2122
+ "cibaExpiresIn": "120",
2123
+ "cibaAuthRequestedUserHint": "login_hint",
2124
+ "oauth2DeviceCodeLifespan": "600",
2125
+ "oauth2DevicePollingInterval": "5",
2126
+ "clientOfflineSessionMaxLifespan": "0",
2127
+ "clientSessionIdleTimeout": "0",
2128
+ "parRequestUriLifespan": "60",
2129
+ "clientSessionMaxLifespan": "0",
2130
+ "clientOfflineSessionIdleTimeout": "0",
2131
+ "cibaInterval": "5",
2132
+ "realmReusableOtpCode": "false"
2133
+ },
2134
+ "keycloakVersion": "23.0.7",
2135
+ "userManagedAccessAllowed": false,
2136
+ "clientProfiles": {
2137
+ "profiles": []
2138
+ },
2139
+ "clientPolicies": {
2140
+ "policies": []
2141
+ }
2142
+ }