@atlasauth/cli 0.24.0 → 0.25.0
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.
- package/CHANGELOG.md +6 -0
- package/package.json +4 -4
- package/dist/args.d.ts +0 -601
- package/dist/args.js +0 -289
- package/dist/args.js.map +0 -1
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -19
- package/dist/cli.js.map +0 -1
- package/dist/commands/actions-gallery.d.ts +0 -8
- package/dist/commands/actions-gallery.js +0 -197
- package/dist/commands/actions-gallery.js.map +0 -1
- package/dist/commands/actions.d.ts +0 -13
- package/dist/commands/actions.js +0 -135
- package/dist/commands/actions.js.map +0 -1
- package/dist/commands/admin.d.ts +0 -49
- package/dist/commands/admin.js +0 -353
- package/dist/commands/admin.js.map +0 -1
- package/dist/commands/api-keys.d.ts +0 -4
- package/dist/commands/api-keys.js +0 -96
- package/dist/commands/api-keys.js.map +0 -1
- package/dist/commands/auth.d.ts +0 -25
- package/dist/commands/auth.js +0 -102
- package/dist/commands/auth.js.map +0 -1
- package/dist/commands/config.d.ts +0 -104
- package/dist/commands/config.js +0 -1506
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/csp.d.ts +0 -32
- package/dist/commands/csp.js +0 -180
- package/dist/commands/csp.js.map +0 -1
- package/dist/commands/dev.d.ts +0 -8
- package/dist/commands/dev.js +0 -84
- package/dist/commands/dev.js.map +0 -1
- package/dist/commands/fga.d.ts +0 -10
- package/dist/commands/fga.js +0 -146
- package/dist/commands/fga.js.map +0 -1
- package/dist/commands/golive.d.ts +0 -40
- package/dist/commands/golive.js +0 -285
- package/dist/commands/golive.js.map +0 -1
- package/dist/commands/id-accounts.d.ts +0 -13
- package/dist/commands/id-accounts.js +0 -195
- package/dist/commands/id-accounts.js.map +0 -1
- package/dist/commands/import-better-auth.d.ts +0 -3
- package/dist/commands/import-better-auth.js +0 -164
- package/dist/commands/import-better-auth.js.map +0 -1
- package/dist/commands/import.d.ts +0 -3
- package/dist/commands/import.js +0 -123
- package/dist/commands/import.js.map +0 -1
- package/dist/commands/info.d.ts +0 -75
- package/dist/commands/info.js +0 -362
- package/dist/commands/info.js.map +0 -1
- package/dist/commands/init.d.ts +0 -3
- package/dist/commands/init.js +0 -438
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/integrations.d.ts +0 -8
- package/dist/commands/integrations.js +0 -112
- package/dist/commands/integrations.js.map +0 -1
- package/dist/commands/listen.d.ts +0 -17
- package/dist/commands/listen.js +0 -223
- package/dist/commands/listen.js.map +0 -1
- package/dist/commands/mcp.d.ts +0 -38
- package/dist/commands/mcp.js +0 -111
- package/dist/commands/mcp.js.map +0 -1
- package/dist/commands/migrate.d.ts +0 -16
- package/dist/commands/migrate.js +0 -114
- package/dist/commands/migrate.js.map +0 -1
- package/dist/commands/move-origin.d.ts +0 -11
- package/dist/commands/move-origin.js +0 -95
- package/dist/commands/move-origin.js.map +0 -1
- package/dist/commands/operator.d.ts +0 -18
- package/dist/commands/operator.js +0 -238
- package/dist/commands/operator.js.map +0 -1
- package/dist/commands/orgs.d.ts +0 -4
- package/dist/commands/orgs.js +0 -72
- package/dist/commands/orgs.js.map +0 -1
- package/dist/commands/pages.d.ts +0 -14
- package/dist/commands/pages.js +0 -113
- package/dist/commands/pages.js.map +0 -1
- package/dist/commands/partner-platforms.d.ts +0 -10
- package/dist/commands/partner-platforms.js +0 -157
- package/dist/commands/partner-platforms.js.map +0 -1
- package/dist/commands/project-commands.d.ts +0 -38
- package/dist/commands/project-commands.js +0 -361
- package/dist/commands/project-commands.js.map +0 -1
- package/dist/commands/referrals.d.ts +0 -69
- package/dist/commands/referrals.js +0 -1056
- package/dist/commands/referrals.js.map +0 -1
- package/dist/commands/resources.d.ts +0 -44
- package/dist/commands/resources.js +0 -234
- package/dist/commands/resources.js.map +0 -1
- package/dist/commands/sessions.d.ts +0 -4
- package/dist/commands/sessions.js +0 -28
- package/dist/commands/sessions.js.map +0 -1
- package/dist/commands/shared.d.ts +0 -38
- package/dist/commands/shared.js +0 -69
- package/dist/commands/shared.js.map +0 -1
- package/dist/commands/status.d.ts +0 -3
- package/dist/commands/status.js +0 -77
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/users.d.ts +0 -4
- package/dist/commands/users.js +0 -100
- package/dist/commands/users.js.map +0 -1
- package/dist/commands/webhooks.d.ts +0 -34
- package/dist/commands/webhooks.js +0 -301
- package/dist/commands/webhooks.js.map +0 -1
- package/dist/config-http.d.ts +0 -29
- package/dist/config-http.js +0 -64
- package/dist/config-http.js.map +0 -1
- package/dist/config.d.ts +0 -64
- package/dist/config.js +0 -69
- package/dist/config.js.map +0 -1
- package/dist/context.d.ts +0 -72
- package/dist/context.js +0 -27
- package/dist/context.js.map +0 -1
- package/dist/define-config.d.ts +0 -9
- package/dist/define-config.js +0 -8
- package/dist/define-config.js.map +0 -1
- package/dist/errors.d.ts +0 -15
- package/dist/errors.js +0 -25
- package/dist/errors.js.map +0 -1
- package/dist/help.d.ts +0 -8
- package/dist/help.js +0 -868
- package/dist/help.js.map +0 -1
- package/dist/import/csv.d.ts +0 -6
- package/dist/import/csv.js +0 -63
- package/dist/import/csv.js.map +0 -1
- package/dist/import/vendors.d.ts +0 -57
- package/dist/import/vendors.js +0 -568
- package/dist/import/vendors.js.map +0 -1
- package/dist/index.d.ts +0 -33
- package/dist/index.js +0 -81
- package/dist/index.js.map +0 -1
- package/dist/io.d.ts +0 -21
- package/dist/io.js +0 -28
- package/dist/io.js.map +0 -1
- package/dist/migrate/appwrite/plugin.d.ts +0 -2
- package/dist/migrate/appwrite/plugin.js +0 -103
- package/dist/migrate/appwrite/plugin.js.map +0 -1
- package/dist/migrate/auth0/plugin.d.ts +0 -2
- package/dist/migrate/auth0/plugin.js +0 -126
- package/dist/migrate/auth0/plugin.js.map +0 -1
- package/dist/migrate/authentik/plugin.d.ts +0 -2
- package/dist/migrate/authentik/plugin.js +0 -135
- package/dist/migrate/authentik/plugin.js.map +0 -1
- package/dist/migrate/azure-ad-b2c/plugin.d.ts +0 -8
- package/dist/migrate/azure-ad-b2c/plugin.js +0 -165
- package/dist/migrate/azure-ad-b2c/plugin.js.map +0 -1
- package/dist/migrate/better-auth/integration.d.ts +0 -59
- package/dist/migrate/better-auth/integration.js +0 -81
- package/dist/migrate/better-auth/integration.js.map +0 -1
- package/dist/migrate/better-auth/orchestrator.d.ts +0 -43
- package/dist/migrate/better-auth/orchestrator.js +0 -525
- package/dist/migrate/better-auth/orchestrator.js.map +0 -1
- package/dist/migrate/better-auth/output.d.ts +0 -20
- package/dist/migrate/better-auth/output.js +0 -146
- package/dist/migrate/better-auth/output.js.map +0 -1
- package/dist/migrate/better-auth/translate.d.ts +0 -77
- package/dist/migrate/better-auth/translate.js +0 -1989
- package/dist/migrate/better-auth/translate.js.map +0 -1
- package/dist/migrate/clerk/plugin.d.ts +0 -2
- package/dist/migrate/clerk/plugin.js +0 -76
- package/dist/migrate/clerk/plugin.js.map +0 -1
- package/dist/migrate/cognito/plugin.d.ts +0 -5
- package/dist/migrate/cognito/plugin.js +0 -170
- package/dist/migrate/cognito/plugin.js.map +0 -1
- package/dist/migrate/corbado/plugin.d.ts +0 -2
- package/dist/migrate/corbado/plugin.js +0 -63
- package/dist/migrate/corbado/plugin.js.map +0 -1
- package/dist/migrate/descope/plugin.d.ts +0 -2
- package/dist/migrate/descope/plugin.js +0 -83
- package/dist/migrate/descope/plugin.js.map +0 -1
- package/dist/migrate/entra-external-id/plugin.d.ts +0 -8
- package/dist/migrate/entra-external-id/plugin.js +0 -12
- package/dist/migrate/entra-external-id/plugin.js.map +0 -1
- package/dist/migrate/export/appwrite-config.d.ts +0 -28
- package/dist/migrate/export/appwrite-config.js +0 -170
- package/dist/migrate/export/appwrite-config.js.map +0 -1
- package/dist/migrate/export/appwrite.d.ts +0 -51
- package/dist/migrate/export/appwrite.js +0 -288
- package/dist/migrate/export/appwrite.js.map +0 -1
- package/dist/migrate/export/auth0-config.d.ts +0 -29
- package/dist/migrate/export/auth0-config.js +0 -249
- package/dist/migrate/export/auth0-config.js.map +0 -1
- package/dist/migrate/export/auth0.d.ts +0 -62
- package/dist/migrate/export/auth0.js +0 -575
- package/dist/migrate/export/auth0.js.map +0 -1
- package/dist/migrate/export/authentik-config.d.ts +0 -45
- package/dist/migrate/export/authentik-config.js +0 -357
- package/dist/migrate/export/authentik-config.js.map +0 -1
- package/dist/migrate/export/authentik.d.ts +0 -110
- package/dist/migrate/export/authentik.js +0 -838
- package/dist/migrate/export/authentik.js.map +0 -1
- package/dist/migrate/export/azure-config.d.ts +0 -58
- package/dist/migrate/export/azure-config.js +0 -344
- package/dist/migrate/export/azure-config.js.map +0 -1
- package/dist/migrate/export/azure.d.ts +0 -85
- package/dist/migrate/export/azure.js +0 -373
- package/dist/migrate/export/azure.js.map +0 -1
- package/dist/migrate/export/clerk-config.d.ts +0 -26
- package/dist/migrate/export/clerk-config.js +0 -227
- package/dist/migrate/export/clerk-config.js.map +0 -1
- package/dist/migrate/export/clerk.d.ts +0 -46
- package/dist/migrate/export/clerk.js +0 -486
- package/dist/migrate/export/clerk.js.map +0 -1
- package/dist/migrate/export/cognito-config.d.ts +0 -25
- package/dist/migrate/export/cognito-config.js +0 -273
- package/dist/migrate/export/cognito-config.js.map +0 -1
- package/dist/migrate/export/cognito.d.ts +0 -103
- package/dist/migrate/export/cognito.js +0 -441
- package/dist/migrate/export/cognito.js.map +0 -1
- package/dist/migrate/export/corbado-config.d.ts +0 -20
- package/dist/migrate/export/corbado-config.js +0 -63
- package/dist/migrate/export/corbado-config.js.map +0 -1
- package/dist/migrate/export/corbado.d.ts +0 -37
- package/dist/migrate/export/corbado.js +0 -132
- package/dist/migrate/export/corbado.js.map +0 -1
- package/dist/migrate/export/descope.d.ts +0 -35
- package/dist/migrate/export/descope.js +0 -208
- package/dist/migrate/export/descope.js.map +0 -1
- package/dist/migrate/export/fake-vendor.test-helper.d.ts +0 -27
- package/dist/migrate/export/fake-vendor.test-helper.js +0 -41
- package/dist/migrate/export/fake-vendor.test-helper.js.map +0 -1
- package/dist/migrate/export/firebase-config.d.ts +0 -24
- package/dist/migrate/export/firebase-config.js +0 -215
- package/dist/migrate/export/firebase-config.js.map +0 -1
- package/dist/migrate/export/firebase.d.ts +0 -102
- package/dist/migrate/export/firebase.js +0 -464
- package/dist/migrate/export/firebase.js.map +0 -1
- package/dist/migrate/export/frameworks/app-users.d.ts +0 -42
- package/dist/migrate/export/frameworks/app-users.js +0 -161
- package/dist/migrate/export/frameworks/app-users.js.map +0 -1
- package/dist/migrate/export/frameworks/authjs.d.ts +0 -41
- package/dist/migrate/export/frameworks/authjs.js +0 -146
- package/dist/migrate/export/frameworks/authjs.js.map +0 -1
- package/dist/migrate/export/frameworks/devise.d.ts +0 -39
- package/dist/migrate/export/frameworks/devise.js +0 -218
- package/dist/migrate/export/frameworks/devise.js.map +0 -1
- package/dist/migrate/export/frameworks/django.d.ts +0 -45
- package/dist/migrate/export/frameworks/django.js +0 -315
- package/dist/migrate/export/frameworks/django.js.map +0 -1
- package/dist/migrate/export/frameworks/lucia.d.ts +0 -42
- package/dist/migrate/export/frameworks/lucia.js +0 -263
- package/dist/migrate/export/frameworks/lucia.js.map +0 -1
- package/dist/migrate/export/frameworks/tables.d.ts +0 -90
- package/dist/migrate/export/frameworks/tables.js +0 -325
- package/dist/migrate/export/frameworks/tables.js.map +0 -1
- package/dist/migrate/export/frameworks/webauthn.d.ts +0 -25
- package/dist/migrate/export/frameworks/webauthn.js +0 -130
- package/dist/migrate/export/frameworks/webauthn.js.map +0 -1
- package/dist/migrate/export/frontegg-config.d.ts +0 -29
- package/dist/migrate/export/frontegg-config.js +0 -238
- package/dist/migrate/export/frontegg-config.js.map +0 -1
- package/dist/migrate/export/frontegg.d.ts +0 -67
- package/dist/migrate/export/frontegg.js +0 -410
- package/dist/migrate/export/frontegg.js.map +0 -1
- package/dist/migrate/export/fusionauth-config.d.ts +0 -26
- package/dist/migrate/export/fusionauth-config.js +0 -226
- package/dist/migrate/export/fusionauth-config.js.map +0 -1
- package/dist/migrate/export/fusionauth.d.ts +0 -99
- package/dist/migrate/export/fusionauth.js +0 -642
- package/dist/migrate/export/fusionauth.js.map +0 -1
- package/dist/migrate/export/hanko-config.d.ts +0 -27
- package/dist/migrate/export/hanko-config.js +0 -265
- package/dist/migrate/export/hanko-config.js.map +0 -1
- package/dist/migrate/export/hanko.d.ts +0 -52
- package/dist/migrate/export/hanko.js +0 -605
- package/dist/migrate/export/hanko.js.map +0 -1
- package/dist/migrate/export/keycloak-config.d.ts +0 -19
- package/dist/migrate/export/keycloak-config.js +0 -219
- package/dist/migrate/export/keycloak-config.js.map +0 -1
- package/dist/migrate/export/keycloak.d.ts +0 -155
- package/dist/migrate/export/keycloak.js +0 -878
- package/dist/migrate/export/keycloak.js.map +0 -1
- package/dist/migrate/export/kinde-descope-config.d.ts +0 -38
- package/dist/migrate/export/kinde-descope-config.js +0 -172
- package/dist/migrate/export/kinde-descope-config.js.map +0 -1
- package/dist/migrate/export/kinde.d.ts +0 -57
- package/dist/migrate/export/kinde.js +0 -333
- package/dist/migrate/export/kinde.js.map +0 -1
- package/dist/migrate/export/ldap.d.ts +0 -53
- package/dist/migrate/export/ldap.js +0 -277
- package/dist/migrate/export/ldap.js.map +0 -1
- package/dist/migrate/export/logto-config.d.ts +0 -27
- package/dist/migrate/export/logto-config.js +0 -264
- package/dist/migrate/export/logto-config.js.map +0 -1
- package/dist/migrate/export/logto.d.ts +0 -150
- package/dist/migrate/export/logto.js +0 -809
- package/dist/migrate/export/logto.js.map +0 -1
- package/dist/migrate/export/magic-config.d.ts +0 -14
- package/dist/migrate/export/magic-config.js +0 -28
- package/dist/migrate/export/magic-config.js.map +0 -1
- package/dist/migrate/export/magic.d.ts +0 -31
- package/dist/migrate/export/magic.js +0 -93
- package/dist/migrate/export/magic.js.map +0 -1
- package/dist/migrate/export/mini-yaml.d.ts +0 -19
- package/dist/migrate/export/mini-yaml.js +0 -581
- package/dist/migrate/export/mini-yaml.js.map +0 -1
- package/dist/migrate/export/nhost-config.d.ts +0 -26
- package/dist/migrate/export/nhost-config.js +0 -360
- package/dist/migrate/export/nhost-config.js.map +0 -1
- package/dist/migrate/export/nhost.d.ts +0 -64
- package/dist/migrate/export/nhost.js +0 -304
- package/dist/migrate/export/nhost.js.map +0 -1
- package/dist/migrate/export/okta-config.d.ts +0 -30
- package/dist/migrate/export/okta-config.js +0 -205
- package/dist/migrate/export/okta-config.js.map +0 -1
- package/dist/migrate/export/okta.d.ts +0 -43
- package/dist/migrate/export/okta.js +0 -337
- package/dist/migrate/export/okta.js.map +0 -1
- package/dist/migrate/export/onelogin.d.ts +0 -22
- package/dist/migrate/export/onelogin.js +0 -123
- package/dist/migrate/export/onelogin.js.map +0 -1
- package/dist/migrate/export/ory-config.d.ts +0 -58
- package/dist/migrate/export/ory-config.js +0 -451
- package/dist/migrate/export/ory-config.js.map +0 -1
- package/dist/migrate/export/ory.d.ts +0 -81
- package/dist/migrate/export/ory.js +0 -555
- package/dist/migrate/export/ory.js.map +0 -1
- package/dist/migrate/export/password-detect.d.ts +0 -29
- package/dist/migrate/export/password-detect.js +0 -81
- package/dist/migrate/export/password-detect.js.map +0 -1
- package/dist/migrate/export/pingone.d.ts +0 -36
- package/dist/migrate/export/pingone.js +0 -218
- package/dist/migrate/export/pingone.js.map +0 -1
- package/dist/migrate/export/plugin-kit.d.ts +0 -25
- package/dist/migrate/export/plugin-kit.js +0 -82
- package/dist/migrate/export/plugin-kit.js.map +0 -1
- package/dist/migrate/export/pocketbase-config.d.ts +0 -28
- package/dist/migrate/export/pocketbase-config.js +0 -180
- package/dist/migrate/export/pocketbase-config.js.map +0 -1
- package/dist/migrate/export/pocketbase.d.ts +0 -52
- package/dist/migrate/export/pocketbase.js +0 -243
- package/dist/migrate/export/pocketbase.js.map +0 -1
- package/dist/migrate/export/project-files.d.ts +0 -15
- package/dist/migrate/export/project-files.js +0 -43
- package/dist/migrate/export/project-files.js.map +0 -1
- package/dist/migrate/export/propelauth-config.d.ts +0 -18
- package/dist/migrate/export/propelauth-config.js +0 -58
- package/dist/migrate/export/propelauth-config.js.map +0 -1
- package/dist/migrate/export/propelauth-harness.test-helper.d.ts +0 -62
- package/dist/migrate/export/propelauth-harness.test-helper.js +0 -109
- package/dist/migrate/export/propelauth-harness.test-helper.js.map +0 -1
- package/dist/migrate/export/propelauth.d.ts +0 -48
- package/dist/migrate/export/propelauth.js +0 -255
- package/dist/migrate/export/propelauth.js.map +0 -1
- package/dist/migrate/export/record-set.d.ts +0 -44
- package/dist/migrate/export/record-set.js +0 -98
- package/dist/migrate/export/record-set.js.map +0 -1
- package/dist/migrate/export/source-lines.d.ts +0 -17
- package/dist/migrate/export/source-lines.js +0 -43
- package/dist/migrate/export/source-lines.js.map +0 -1
- package/dist/migrate/export/sso-metadata.d.ts +0 -47
- package/dist/migrate/export/sso-metadata.js +0 -180
- package/dist/migrate/export/sso-metadata.js.map +0 -1
- package/dist/migrate/export/stytch-config.d.ts +0 -22
- package/dist/migrate/export/stytch-config.js +0 -102
- package/dist/migrate/export/stytch-config.js.map +0 -1
- package/dist/migrate/export/stytch.d.ts +0 -68
- package/dist/migrate/export/stytch.js +0 -510
- package/dist/migrate/export/stytch.js.map +0 -1
- package/dist/migrate/export/supabase-config.d.ts +0 -48
- package/dist/migrate/export/supabase-config.js +0 -408
- package/dist/migrate/export/supabase-config.js.map +0 -1
- package/dist/migrate/export/supabase.d.ts +0 -86
- package/dist/migrate/export/supabase.js +0 -524
- package/dist/migrate/export/supabase.js.map +0 -1
- package/dist/migrate/export/supertokens-config.d.ts +0 -20
- package/dist/migrate/export/supertokens-config.js +0 -150
- package/dist/migrate/export/supertokens-config.js.map +0 -1
- package/dist/migrate/export/supertokens.d.ts +0 -125
- package/dist/migrate/export/supertokens.js +0 -464
- package/dist/migrate/export/supertokens.js.map +0 -1
- package/dist/migrate/export/table.d.ts +0 -35
- package/dist/migrate/export/table.js +0 -248
- package/dist/migrate/export/table.js.map +0 -1
- package/dist/migrate/export/translate-kit.d.ts +0 -46
- package/dist/migrate/export/translate-kit.js +0 -148
- package/dist/migrate/export/translate-kit.js.map +0 -1
- package/dist/migrate/export/userfront-config.d.ts +0 -15
- package/dist/migrate/export/userfront-config.js +0 -49
- package/dist/migrate/export/userfront-config.js.map +0 -1
- package/dist/migrate/export/userfront.d.ts +0 -38
- package/dist/migrate/export/userfront.js +0 -189
- package/dist/migrate/export/userfront.js.map +0 -1
- package/dist/migrate/export/vendor-http.d.ts +0 -46
- package/dist/migrate/export/vendor-http.js +0 -138
- package/dist/migrate/export/vendor-http.js.map +0 -1
- package/dist/migrate/export/workos-config.d.ts +0 -23
- package/dist/migrate/export/workos-config.js +0 -125
- package/dist/migrate/export/workos-config.js.map +0 -1
- package/dist/migrate/export/workos.d.ts +0 -46
- package/dist/migrate/export/workos.js +0 -272
- package/dist/migrate/export/workos.js.map +0 -1
- package/dist/migrate/export/zip.d.ts +0 -8
- package/dist/migrate/export/zip.js +0 -66
- package/dist/migrate/export/zip.js.map +0 -1
- package/dist/migrate/export/zitadel-config.d.ts +0 -37
- package/dist/migrate/export/zitadel-config.js +0 -279
- package/dist/migrate/export/zitadel-config.js.map +0 -1
- package/dist/migrate/export/zitadel.d.ts +0 -82
- package/dist/migrate/export/zitadel.js +0 -447
- package/dist/migrate/export/zitadel.js.map +0 -1
- package/dist/migrate/firebase/plugin.d.ts +0 -2
- package/dist/migrate/firebase/plugin.js +0 -152
- package/dist/migrate/firebase/plugin.js.map +0 -1
- package/dist/migrate/framework/builtins.d.ts +0 -2
- package/dist/migrate/framework/builtins.js +0 -52
- package/dist/migrate/framework/builtins.js.map +0 -1
- package/dist/migrate/framework/commands.d.ts +0 -20
- package/dist/migrate/framework/commands.js +0 -58
- package/dist/migrate/framework/commands.js.map +0 -1
- package/dist/migrate/framework/custom.d.ts +0 -12
- package/dist/migrate/framework/custom.js +0 -96
- package/dist/migrate/framework/custom.js.map +0 -1
- package/dist/migrate/framework/orchestrator.d.ts +0 -113
- package/dist/migrate/framework/orchestrator.js +0 -532
- package/dist/migrate/framework/orchestrator.js.map +0 -1
- package/dist/migrate/framework/plugin.d.ts +0 -167
- package/dist/migrate/framework/plugin.js +0 -3
- package/dist/migrate/framework/plugin.js.map +0 -1
- package/dist/migrate/framework/registry.d.ts +0 -11
- package/dist/migrate/framework/registry.js +0 -44
- package/dist/migrate/framework/registry.js.map +0 -1
- package/dist/migrate/framework/report.d.ts +0 -17
- package/dist/migrate/framework/report.js +0 -103
- package/dist/migrate/framework/report.js.map +0 -1
- package/dist/migrate/frameworks/plugins.d.ts +0 -29
- package/dist/migrate/frameworks/plugins.js +0 -402
- package/dist/migrate/frameworks/plugins.js.map +0 -1
- package/dist/migrate/frameworks/report.d.ts +0 -92
- package/dist/migrate/frameworks/report.js +0 -207
- package/dist/migrate/frameworks/report.js.map +0 -1
- package/dist/migrate/frameworks/translate-js.d.ts +0 -5
- package/dist/migrate/frameworks/translate-js.js +0 -503
- package/dist/migrate/frameworks/translate-js.js.map +0 -1
- package/dist/migrate/frameworks/translate-rails-django.d.ts +0 -3
- package/dist/migrate/frameworks/translate-rails-django.js +0 -1391
- package/dist/migrate/frameworks/translate-rails-django.js.map +0 -1
- package/dist/migrate/frontegg/plugin.d.ts +0 -2
- package/dist/migrate/frontegg/plugin.js +0 -78
- package/dist/migrate/frontegg/plugin.js.map +0 -1
- package/dist/migrate/fusionauth/plugin.d.ts +0 -2
- package/dist/migrate/fusionauth/plugin.js +0 -109
- package/dist/migrate/fusionauth/plugin.js.map +0 -1
- package/dist/migrate/hanko/plugin.d.ts +0 -2
- package/dist/migrate/hanko/plugin.js +0 -100
- package/dist/migrate/hanko/plugin.js.map +0 -1
- package/dist/migrate/keycloak/plugin.d.ts +0 -2
- package/dist/migrate/keycloak/plugin.js +0 -148
- package/dist/migrate/keycloak/plugin.js.map +0 -1
- package/dist/migrate/kinde/plugin.d.ts +0 -2
- package/dist/migrate/kinde/plugin.js +0 -105
- package/dist/migrate/kinde/plugin.js.map +0 -1
- package/dist/migrate/ldap/plugin.d.ts +0 -2
- package/dist/migrate/ldap/plugin.js +0 -73
- package/dist/migrate/ldap/plugin.js.map +0 -1
- package/dist/migrate/logto/plugin.d.ts +0 -2
- package/dist/migrate/logto/plugin.js +0 -131
- package/dist/migrate/logto/plugin.js.map +0 -1
- package/dist/migrate/magic/plugin.d.ts +0 -2
- package/dist/migrate/magic/plugin.js +0 -56
- package/dist/migrate/magic/plugin.js.map +0 -1
- package/dist/migrate/nhost/plugin.d.ts +0 -2
- package/dist/migrate/nhost/plugin.js +0 -115
- package/dist/migrate/nhost/plugin.js.map +0 -1
- package/dist/migrate/oidc/plugin.d.ts +0 -2
- package/dist/migrate/oidc/plugin.js +0 -73
- package/dist/migrate/oidc/plugin.js.map +0 -1
- package/dist/migrate/okta/plugin.d.ts +0 -2
- package/dist/migrate/okta/plugin.js +0 -105
- package/dist/migrate/okta/plugin.js.map +0 -1
- package/dist/migrate/onelogin/plugin.d.ts +0 -2
- package/dist/migrate/onelogin/plugin.js +0 -61
- package/dist/migrate/onelogin/plugin.js.map +0 -1
- package/dist/migrate/ory/plugin.d.ts +0 -2
- package/dist/migrate/ory/plugin.js +0 -186
- package/dist/migrate/ory/plugin.js.map +0 -1
- package/dist/migrate/ping-identity/plugin.d.ts +0 -2
- package/dist/migrate/ping-identity/plugin.js +0 -100
- package/dist/migrate/ping-identity/plugin.js.map +0 -1
- package/dist/migrate/pocketbase/plugin.d.ts +0 -2
- package/dist/migrate/pocketbase/plugin.js +0 -99
- package/dist/migrate/pocketbase/plugin.js.map +0 -1
- package/dist/migrate/propelauth/plugin.d.ts +0 -2
- package/dist/migrate/propelauth/plugin.js +0 -65
- package/dist/migrate/propelauth/plugin.js.map +0 -1
- package/dist/migrate/saml/plugin.d.ts +0 -2
- package/dist/migrate/saml/plugin.js +0 -79
- package/dist/migrate/saml/plugin.js.map +0 -1
- package/dist/migrate/stytch/plugin.d.ts +0 -2
- package/dist/migrate/stytch/plugin.js +0 -97
- package/dist/migrate/stytch/plugin.js.map +0 -1
- package/dist/migrate/supabase/plugin.d.ts +0 -2
- package/dist/migrate/supabase/plugin.js +0 -149
- package/dist/migrate/supabase/plugin.js.map +0 -1
- package/dist/migrate/supertokens/plugin.d.ts +0 -2
- package/dist/migrate/supertokens/plugin.js +0 -114
- package/dist/migrate/supertokens/plugin.js.map +0 -1
- package/dist/migrate/user-table/plugin.d.ts +0 -2
- package/dist/migrate/user-table/plugin.js +0 -62
- package/dist/migrate/user-table/plugin.js.map +0 -1
- package/dist/migrate/userfront/plugin.d.ts +0 -2
- package/dist/migrate/userfront/plugin.js +0 -60
- package/dist/migrate/userfront/plugin.js.map +0 -1
- package/dist/migrate/workos/plugin.d.ts +0 -2
- package/dist/migrate/workos/plugin.js +0 -81
- package/dist/migrate/workos/plugin.js.map +0 -1
- package/dist/migrate/zitadel/plugin.d.ts +0 -2
- package/dist/migrate/zitadel/plugin.js +0 -114
- package/dist/migrate/zitadel/plugin.js.map +0 -1
- package/dist/output.d.ts +0 -41
- package/dist/output.js +0 -72
- package/dist/output.js.map +0 -1
- package/dist/project.d.ts +0 -64
- package/dist/project.js +0 -86
- package/dist/project.js.map +0 -1
- package/dist/prompt.d.ts +0 -15
- package/dist/prompt.js +0 -46
- package/dist/prompt.js.map +0 -1
- package/dist/run.d.ts +0 -12
- package/dist/run.js +0 -157
- package/dist/run.js.map +0 -1
- package/dist/secrets.d.ts +0 -41
- package/dist/secrets.js +0 -142
- package/dist/secrets.js.map +0 -1
- package/dist/serialize.d.ts +0 -30
- package/dist/serialize.js +0 -131
- package/dist/serialize.js.map +0 -1
- package/dist/version.d.ts +0 -7
- package/dist/version.js +0 -21
- package/dist/version.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"authentik.js","sourceRoot":"","sources":["../../../src/migrate/export/authentik.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import type { TranslationResult } from '../framework/plugin';
|
|
2
|
-
import { type AzureKind } from './azure';
|
|
3
|
-
import { type Obj } from './record-set';
|
|
4
|
-
import { type VendorHttp } from './vendor-http';
|
|
5
|
-
/**
|
|
6
|
-
* `atlas migrate azure-ad-b2c | entra-external-id config` — the tenant's
|
|
7
|
-
* sign-in setup → Atlas config, read through Microsoft Graph with the
|
|
8
|
-
* owner's app registration: identity providers (local email / username /
|
|
9
|
-
* phone, email OTP, social, OIDC / SAML federation), user flows (B2C
|
|
10
|
-
* `b2cUserFlows` on Graph beta, External ID `authenticationEventsFlows`),
|
|
11
|
-
* custom user attributes, app registrations (redirect URIs) and groups.
|
|
12
|
-
*
|
|
13
|
-
* B2C custom policies (Identity Experience Framework) are read from the
|
|
14
|
-
* policy XML files when given: every claims provider technical profile is
|
|
15
|
-
* reported with its file and line (social / OIDC / SAML IdPs, REST API
|
|
16
|
-
* calls, JWT issuer lifetimes, the relying party's subject claim).
|
|
17
|
-
*/
|
|
18
|
-
export interface AzureConfigSnapshot {
|
|
19
|
-
kind: AzureKind;
|
|
20
|
-
tenant: string;
|
|
21
|
-
tenantId?: string;
|
|
22
|
-
tenantName?: string;
|
|
23
|
-
identityProviders: Obj[];
|
|
24
|
-
/** B2C user flows (with `identityProviders` and `userAttributeAssignments` expanded when Graph allows). */
|
|
25
|
-
userFlows: Obj[];
|
|
26
|
-
/** External ID sign-up / sign-in flows. */
|
|
27
|
-
eventsFlows: Obj[];
|
|
28
|
-
userFlowAttributes: Obj[];
|
|
29
|
-
applications: Obj[];
|
|
30
|
-
groups: Obj[];
|
|
31
|
-
/** B2C custom policy files: name and XML text. */
|
|
32
|
-
policies: Array<{
|
|
33
|
-
file: string;
|
|
34
|
-
text: string;
|
|
35
|
-
}>;
|
|
36
|
-
}
|
|
37
|
-
export declare function fetchAzureConfig(http: VendorHttp, kind: AzureKind, tenant: string, policies?: AzureConfigSnapshot['policies']): Promise<AzureConfigSnapshot>;
|
|
38
|
-
export interface PolicyTechnicalProfile {
|
|
39
|
-
file: string;
|
|
40
|
-
line: number;
|
|
41
|
-
id: string;
|
|
42
|
-
displayName?: string;
|
|
43
|
-
protocol?: string;
|
|
44
|
-
handler?: string;
|
|
45
|
-
metadata: Record<string, string>;
|
|
46
|
-
/** The `<Domain>` of the claims provider the profile belongs to. */
|
|
47
|
-
domain?: string;
|
|
48
|
-
/** Inside `<RelyingParty>` (the policy's own token profile, not a federation). */
|
|
49
|
-
relyingParty: boolean;
|
|
50
|
-
}
|
|
51
|
-
/** The technical profiles of one policy file (regex-level: IEF policies are regular, attribute-quoted XML). */
|
|
52
|
-
export declare function parsePolicyProfiles(file: string, text: string): PolicyTechnicalProfile[];
|
|
53
|
-
/** The relying party's `sub` output claim, with its location (`objectId` keeps the bridge working). */
|
|
54
|
-
export declare function relyingPartySubject(file: string, text: string): {
|
|
55
|
-
claim: string;
|
|
56
|
-
line: number;
|
|
57
|
-
} | undefined;
|
|
58
|
-
export declare function translateAzureConfig(snap: AzureConfigSnapshot): TranslationResult;
|
|
@@ -1,344 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.fetchAzureConfig = fetchAzureConfig;
|
|
4
|
-
exports.parsePolicyProfiles = parsePolicyProfiles;
|
|
5
|
-
exports.relyingPartySubject = relyingPartySubject;
|
|
6
|
-
exports.translateAzureConfig = translateAzureConfig;
|
|
7
|
-
const azure_1 = require("./azure");
|
|
8
|
-
const record_set_1 = require("./record-set");
|
|
9
|
-
const translate_kit_1 = require("./translate-kit");
|
|
10
|
-
const vendor_http_1 = require("./vendor-http");
|
|
11
|
-
const BETA = 'https://graph.microsoft.com/beta';
|
|
12
|
-
async function fetchAzureConfig(http, kind, tenant, policies = []) {
|
|
13
|
-
const soft = async (path) => {
|
|
14
|
-
try {
|
|
15
|
-
return await (0, azure_1.graphAll)(http, path);
|
|
16
|
-
}
|
|
17
|
-
catch (err) {
|
|
18
|
-
if (err instanceof vendor_http_1.VendorApiError && [400, 401, 403, 404].includes(err.status))
|
|
19
|
-
return [];
|
|
20
|
-
throw err;
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
const info = await (0, azure_1.azureTenantInfo)(http);
|
|
24
|
-
const userFlows = kind === 'b2c' ? await soft(`${BETA}/identity/b2cUserFlows`) : [];
|
|
25
|
-
for (const f of userFlows) {
|
|
26
|
-
const id = (0, record_set_1.str)(f.id);
|
|
27
|
-
if (!id)
|
|
28
|
-
continue;
|
|
29
|
-
f.identityProviders = await soft(`${BETA}/identity/b2cUserFlows/${encodeURIComponent(id)}/userFlowIdentityProviders`);
|
|
30
|
-
f.userAttributeAssignments = await soft(`${BETA}/identity/b2cUserFlows/${encodeURIComponent(id)}/userAttributeAssignments`);
|
|
31
|
-
}
|
|
32
|
-
return {
|
|
33
|
-
kind,
|
|
34
|
-
tenant,
|
|
35
|
-
tenantId: info.tenantId,
|
|
36
|
-
tenantName: info.tenantName,
|
|
37
|
-
identityProviders: await soft('/identity/identityProviders'),
|
|
38
|
-
userFlows,
|
|
39
|
-
eventsFlows: kind === 'entra' ? await soft('/identity/authenticationEventsFlows') : [],
|
|
40
|
-
userFlowAttributes: await soft('/identity/userFlowAttributes'),
|
|
41
|
-
applications: await soft('/applications?$select=id,appId,displayName,web,spa,publicClient,isFallbackPublicClient,signInAudience&$top=999'),
|
|
42
|
-
groups: await soft('/groups?$select=id,displayName,description&$top=999'),
|
|
43
|
-
policies,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
/** Graph social identityProviderType → Atlas built-in provider key. */
|
|
47
|
-
const SOCIAL = {
|
|
48
|
-
google: 'google',
|
|
49
|
-
facebook: 'facebook',
|
|
50
|
-
microsoftaccount: 'microsoft',
|
|
51
|
-
microsoft: 'microsoft',
|
|
52
|
-
amazon: 'amazon',
|
|
53
|
-
linkedin: 'linkedin',
|
|
54
|
-
twitter: 'x',
|
|
55
|
-
github: 'github',
|
|
56
|
-
apple: 'apple',
|
|
57
|
-
};
|
|
58
|
-
const typeOf = (o) => ((0, record_set_1.str)(o['@odata.type']) ?? '').replace('#microsoft.graph.', '');
|
|
59
|
-
const lineAt = (text, index) => text.slice(0, index).split('\n').length;
|
|
60
|
-
const decodeXml = (s) => s.replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, "'").replace(/&/g, '&');
|
|
61
|
-
/** The technical profiles of one policy file (regex-level: IEF policies are regular, attribute-quoted XML). */
|
|
62
|
-
function parsePolicyProfiles(file, text) {
|
|
63
|
-
const out = [];
|
|
64
|
-
const rpStart = text.indexOf('<RelyingParty');
|
|
65
|
-
const re = /<TechnicalProfile\s+Id="([^"]+)"[^>]*?(\/>|>([\s\S]*?)<\/TechnicalProfile>)/g;
|
|
66
|
-
for (let m = re.exec(text); m; m = re.exec(text)) {
|
|
67
|
-
const body = m[3] ?? '';
|
|
68
|
-
const metadata = {};
|
|
69
|
-
const meta = /<Metadata>([\s\S]*?)<\/Metadata>/.exec(body);
|
|
70
|
-
if (meta)
|
|
71
|
-
for (const item of meta[1].matchAll(/<Item\s+Key="([^"]+)"\s*>([\s\S]*?)<\/Item>/g))
|
|
72
|
-
metadata[item[1]] = decodeXml(item[2].trim());
|
|
73
|
-
const protocol = /<Protocol\s+Name="([^"]+)"(?:\s+Handler="([^"]+)")?/.exec(body);
|
|
74
|
-
out.push({
|
|
75
|
-
file,
|
|
76
|
-
line: lineAt(text, m.index),
|
|
77
|
-
id: m[1],
|
|
78
|
-
displayName: /<DisplayName>([\s\S]*?)<\/DisplayName>/.exec(body)?.[1]?.trim(),
|
|
79
|
-
protocol: protocol?.[1],
|
|
80
|
-
handler: protocol?.[2],
|
|
81
|
-
metadata,
|
|
82
|
-
domain: domainBefore(text, m.index),
|
|
83
|
-
relyingParty: rpStart >= 0 && m.index > rpStart,
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
return out;
|
|
87
|
-
}
|
|
88
|
-
/** The `<Domain>` of the `<ClaimsProvider>` enclosing a position, if any. */
|
|
89
|
-
function domainBefore(text, index) {
|
|
90
|
-
const start = text.lastIndexOf('<ClaimsProvider>', index);
|
|
91
|
-
if (start < 0)
|
|
92
|
-
return undefined;
|
|
93
|
-
return /<Domain>([\s\S]*?)<\/Domain>/.exec(text.slice(start, index))?.[1]?.trim();
|
|
94
|
-
}
|
|
95
|
-
/** The relying party's `sub` output claim, with its location (`objectId` keeps the bridge working). */
|
|
96
|
-
function relyingPartySubject(file, text) {
|
|
97
|
-
const rp = text.indexOf('<RelyingParty');
|
|
98
|
-
if (rp < 0)
|
|
99
|
-
return undefined;
|
|
100
|
-
const m = /<OutputClaim\s+ClaimTypeReferenceId="([^"]+)"[^>]*PartnerClaimType="sub"/.exec(text.slice(rp));
|
|
101
|
-
return m ? { claim: m[1], line: lineAt(text, rp + m.index) } : undefined;
|
|
102
|
-
}
|
|
103
|
-
function translatePolicies(b, files) {
|
|
104
|
-
const at = (p, status, setting, note, atlas) => b.report.push({ status, area: `custom policy ${p.file}`, setting, note, file: p.file, line: p.line, ...(atlas ? { atlas } : {}) });
|
|
105
|
-
for (const { file, text } of files) {
|
|
106
|
-
for (const tp of parsePolicyProfiles(file, text)) {
|
|
107
|
-
if (tp.relyingParty)
|
|
108
|
-
continue;
|
|
109
|
-
const protocol = tp.protocol ?? '';
|
|
110
|
-
const handler = tp.handler ?? '';
|
|
111
|
-
const name = `TechnicalProfile ${tp.id}`;
|
|
112
|
-
if (protocol === 'OAuth2' || protocol === 'OpenIdConnect') {
|
|
113
|
-
const provider = (tp.metadata.ProviderName ?? tp.domain ?? '').toLowerCase();
|
|
114
|
-
const key = Object.entries(SOCIAL).find(([k]) => provider.includes(k))?.[1];
|
|
115
|
-
if (key) {
|
|
116
|
-
const before = b.report.length;
|
|
117
|
-
b.socialProvider({ atlasKey: key, vendorName: tp.displayName ?? tp.id, area: `custom policy ${file}`, setting: name, clientId: tp.metadata.client_id, scopes: tp.metadata.scope?.split(/\s+/).filter(Boolean) });
|
|
118
|
-
if (b.report.length > before)
|
|
119
|
-
Object.assign(b.report[b.report.length - 1], { file, line: tp.line });
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
at(tp, 'mapped', name, `${protocol} federation${tp.metadata.METADATA ? ` (${tp.metadata.METADATA})` : ''}: an Atlas OIDC SSO connection; register Atlas's redirect URI with the IdP and reuse its client id.`, 'sso_connections');
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
else if (protocol === 'SAML2' && !/Saml2AssertionIssuer|SamlIssuer/i.test(handler + tp.id)) {
|
|
126
|
-
at(tp, 'mapped', name, `SAML federation${tp.metadata.PartnerEntity ? ` (${tp.metadata.PartnerEntity})` : ''}: an Atlas SAML SSO connection; give the IdP Atlas's ACS URL and entity id.`, 'sso_connections');
|
|
127
|
-
}
|
|
128
|
-
else if (/RestfulProvider/i.test(handler)) {
|
|
129
|
-
at(tp, 'manual', name, `REST API call${tp.metadata.ServiceUrl ? ` to ${tp.metadata.ServiceUrl}` : ''} during the journey: port it to an Atlas action (pre_user_registration / post_login) or webhook.`, 'actions');
|
|
130
|
-
}
|
|
131
|
-
else if (/JwtIssuer/i.test(handler) || (protocol === 'None' && /JwtIssuer/i.test(tp.id))) {
|
|
132
|
-
const refresh = Number(tp.metadata.rolling_refresh_token_lifetime_secs ?? tp.metadata.refresh_token_lifetime_secs);
|
|
133
|
-
if (Number.isFinite(refresh) && refresh > 0) {
|
|
134
|
-
b.set('session.absoluteMs', (0, translate_kit_1.clampSessionMs)(refresh * 1000));
|
|
135
|
-
at(tp, 'mapped', `${name} refresh_token_lifetime_secs`, `Users stayed signed in up to ${Math.round(refresh / 86_400)} day(s).`, 'auth_config.session.absoluteMs');
|
|
136
|
-
}
|
|
137
|
-
if (tp.metadata.token_lifetime_secs)
|
|
138
|
-
at(tp, 'differs', `${name} token_lifetime_secs`, 'Atlas session tokens are short-lived and refreshed by the SDK; the lifetime is not configurable per policy.', 'auth_config.session');
|
|
139
|
-
}
|
|
140
|
-
else if (/PhoneFactor/i.test(handler)) {
|
|
141
|
-
at(tp, 'differs', name, 'Phone MFA: SMS second factors move with the export (with authentication methods); Atlas recommends TOTP or passkeys.', 'auth_config.mfa');
|
|
142
|
-
}
|
|
143
|
-
else if (/AzureMfa/i.test(handler) || /totp|authenticator/i.test(tp.id)) {
|
|
144
|
-
b.set('mfa.factors.totp', true);
|
|
145
|
-
at(tp, 'differs', name, 'Authenticator-app MFA: the secrets do not move, users enrol again.', 'auth_config.mfa.factors.totp');
|
|
146
|
-
}
|
|
147
|
-
else if (/ClaimsTransformationProtocolProvider|AzureActiveDirectoryProvider|SelfAssertedAttributeProvider|SSOSessionProvider|NoopSSO|DefaultSSO|ExternalLoginSSO|OAuthSSO/i.test(handler + protocol + tp.id)) {
|
|
148
|
-
continue; // directory reads/writes, self-asserted pages and session managers: built into Atlas
|
|
149
|
-
}
|
|
150
|
-
else if (protocol === 'Proprietary' || protocol === 'None') {
|
|
151
|
-
at(tp, 'manual', name, `${handler.split(',')[0] || protocol} technical profile: review whether your journey depends on it.`);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
const sub = relyingPartySubject(file, text);
|
|
155
|
-
if (sub && sub.claim !== 'objectId') {
|
|
156
|
-
at({ file, line: sub.line }, 'differs', `RelyingParty OutputClaim ${sub.claim} → sub`, `This policy issues ${sub.claim} as sub, not the object id the export keys users by: set the bridge subject claim to one carrying the object id (add an oid output claim), or the bridge cannot find users.`, 'migration bridge');
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
// ── the translation ─────────────────────────────────────────────────────────
|
|
161
|
-
function translateAzureConfig(snap) {
|
|
162
|
-
const b = new translate_kit_1.ConfigBuilder();
|
|
163
|
-
const label = snap.kind === 'b2c' ? 'Azure AD B2C' : 'Entra External ID';
|
|
164
|
-
// ── identity providers ──
|
|
165
|
-
let localPassword = snap.kind === 'b2c'; // B2C local accounts are always available to user flows
|
|
166
|
-
for (const idp of snap.identityProviders) {
|
|
167
|
-
const t = typeOf(idp);
|
|
168
|
-
const name = (0, record_set_1.str)(idp.displayName) ?? (0, record_set_1.str)(idp.id) ?? t;
|
|
169
|
-
const setting = `${name} (${t || 'identityProvider'})`;
|
|
170
|
-
if (t === 'builtInIdentityProvider') {
|
|
171
|
-
const kind = (0, record_set_1.str)(idp.identityProviderType) ?? (0, record_set_1.str)(idp.id) ?? '';
|
|
172
|
-
if (/EmailPassword/i.test(kind))
|
|
173
|
-
localPassword = true;
|
|
174
|
-
else if (/EmailOTP/i.test(kind)) {
|
|
175
|
-
b.set('strategies.emailCode', true);
|
|
176
|
-
b.add('mapped', 'identity providers', setting, 'Email one-time passcode sign-in.', 'auth_config.strategies.emailCode');
|
|
177
|
-
}
|
|
178
|
-
else if (/AADSignup|MSASignup/i.test(kind))
|
|
179
|
-
b.add('manual', 'identity providers', setting, 'Sign-in with a Microsoft work / personal account: add Atlas\'s Microsoft provider (or an Entra ID SSO connection) and point it at your app registration.', 'oauth_providers microsoft');
|
|
180
|
-
continue;
|
|
181
|
-
}
|
|
182
|
-
if (t === 'appleManagedIdentityProvider') {
|
|
183
|
-
b.socialProvider({ atlasKey: 'apple', vendorName: name, area: 'identity providers', setting, clientId: (0, record_set_1.str)(idp.serviceId) });
|
|
184
|
-
continue;
|
|
185
|
-
}
|
|
186
|
-
if (t === 'socialIdentityProvider' || t === 'identityProvider') {
|
|
187
|
-
const kind = ((0, record_set_1.str)(idp.identityProviderType) ?? (0, record_set_1.str)(idp.type) ?? '').toLowerCase();
|
|
188
|
-
const key = SOCIAL[kind];
|
|
189
|
-
if (key)
|
|
190
|
-
b.socialProvider({ atlasKey: key, vendorName: name, area: 'identity providers', setting, clientId: (0, record_set_1.str)(idp.clientId) });
|
|
191
|
-
else
|
|
192
|
-
b.add('manual', 'identity providers', setting, 'No built-in Atlas provider: add it as a custom OAuth provider.', 'custom_oauth_providers');
|
|
193
|
-
continue;
|
|
194
|
-
}
|
|
195
|
-
if (t === 'openIdConnectIdentityProvider' || t === 'oidcIdentityProvider') {
|
|
196
|
-
b.add('mapped', 'identity providers', setting, `OIDC federation${(0, record_set_1.str)(idp.metadataUrl) ?? (0, record_set_1.str)(idp.issuer) ? ` (${(0, record_set_1.str)(idp.metadataUrl) ?? (0, record_set_1.str)(idp.issuer)})` : ''}: an Atlas OIDC SSO connection; register Atlas's redirect URI with the IdP and reuse its client id.`, 'sso_connections');
|
|
197
|
-
continue;
|
|
198
|
-
}
|
|
199
|
-
if (/saml|wsFed|Federation/i.test(t)) {
|
|
200
|
-
b.add('mapped', 'identity providers', setting, 'SAML / WS-Fed federation: an Atlas SAML SSO connection; give the IdP Atlas\'s ACS URL and entity id (WS-Fed IdPs need their SAML endpoint).', 'sso_connections');
|
|
201
|
-
continue;
|
|
202
|
-
}
|
|
203
|
-
b.add('manual', 'identity providers', setting, 'Unrecognised identity provider type: review it by hand.');
|
|
204
|
-
}
|
|
205
|
-
if (localPassword) {
|
|
206
|
-
b.set('strategies.password', true);
|
|
207
|
-
b.add('differs', 'identity providers', snap.kind === 'b2c' ? 'Local accounts' : 'EmailPassword', `Password sign-in. ${label} never exports passwords: the ${snap.kind === 'b2c' ? 'azure_ad_b2c' : 'entra_external_id'} lazy-migration preset checks each one on first sign-in.`, 'auth_config.strategies.password');
|
|
208
|
-
}
|
|
209
|
-
// ── B2C user flows ──
|
|
210
|
-
let ropcFlow;
|
|
211
|
-
let signInFlow;
|
|
212
|
-
for (const f of snap.userFlows) {
|
|
213
|
-
const id = (0, record_set_1.str)(f.id) ?? '?';
|
|
214
|
-
const type = (0, record_set_1.str)(f.userFlowType) ?? '';
|
|
215
|
-
const area = `user flow ${id}`;
|
|
216
|
-
if (type === 'resourceOwner') {
|
|
217
|
-
ropcFlow ??= id;
|
|
218
|
-
b.add('mapped', area, 'userFlowType resourceOwner', 'The ROPC user flow lazy migration checks passwords with.', 'legacy_auth_connection');
|
|
219
|
-
continue;
|
|
220
|
-
}
|
|
221
|
-
if (type === 'signUpOrSignIn' || type === 'signIn')
|
|
222
|
-
signInFlow ??= id;
|
|
223
|
-
if (type === 'signUp' || type === 'signUpOrSignIn' || type === 'signIn') {
|
|
224
|
-
b.add('mapped', area, `userFlowType ${type}`, 'Atlas\'s sign-in / sign-up pages (or components) replace this flow.', 'auth_config.strategies');
|
|
225
|
-
if (Number(f.userFlowTypeVersion) === 1)
|
|
226
|
-
b.add('differs', area, 'userFlowTypeVersion 1', 'A legacy (v1) user flow: check that its tokens carry the object id as sub before relying on the bridge.', 'migration bridge');
|
|
227
|
-
}
|
|
228
|
-
else if (type === 'passwordReset')
|
|
229
|
-
b.add('mapped', area, 'userFlowType passwordReset', 'Atlas\'s built-in password reset.', 'auth_config.strategies.password');
|
|
230
|
-
else if (type === 'profileUpdate')
|
|
231
|
-
b.add('mapped', area, 'userFlowType profileUpdate', 'Atlas\'s user profile component.', 'user profile');
|
|
232
|
-
for (const a of (0, record_set_1.objs)(f.userAttributeAssignments)) {
|
|
233
|
-
const attr = (0, record_set_1.str)(a.id) ?? (0, record_set_1.str)(a.displayName);
|
|
234
|
-
if (attr && /^extension_/i.test(attr))
|
|
235
|
-
b.add('differs', area, `userAttributeAssignments ${attr}`, 'A custom attribute collected at sign-up: collect it with an Atlas sign-up field (unsafe_metadata) or after sign-in; existing values move to public_metadata.', 'sign-up fields');
|
|
236
|
-
}
|
|
237
|
-
if ((0, record_set_1.isObj)(f.apiConnectorConfiguration) && Object.values(f.apiConnectorConfiguration).some((v) => v !== null)) {
|
|
238
|
-
b.add('manual', area, 'apiConnectorConfiguration', 'API connectors run during sign-up: port them to Atlas actions (pre_user_registration).', 'actions');
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
// ── External ID sign-up / sign-in flows ──
|
|
242
|
-
for (const f of snap.eventsFlows) {
|
|
243
|
-
const name = (0, record_set_1.str)(f.displayName) ?? (0, record_set_1.str)(f.id) ?? '?';
|
|
244
|
-
const area = `user flow ${name}`;
|
|
245
|
-
b.add('mapped', area, typeOf(f) || 'authenticationEventsFlow', 'Atlas\'s sign-in / sign-up pages (or components) replace this flow.', 'auth_config.strategies');
|
|
246
|
-
const start = (0, record_set_1.isObj)(f.onAuthenticationMethodLoadStart) ? f.onAuthenticationMethodLoadStart : {};
|
|
247
|
-
for (const idp of (0, record_set_1.objs)(start.identityProviders)) {
|
|
248
|
-
const id = (0, record_set_1.str)(idp.id) ?? '';
|
|
249
|
-
if (/EmailPassword/i.test(id)) {
|
|
250
|
-
b.set('strategies.password', true);
|
|
251
|
-
}
|
|
252
|
-
else if (/EmailOtp/i.test(id)) {
|
|
253
|
-
b.set('strategies.emailCode', true);
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
const collect = (0, record_set_1.isObj)(f.onAttributeCollection) ? f.onAttributeCollection : {};
|
|
257
|
-
for (const a of (0, record_set_1.objs)(collect.attributes)) {
|
|
258
|
-
const attr = (0, record_set_1.str)(a.id) ?? (0, record_set_1.str)(a.displayName);
|
|
259
|
-
if (!attr || ['email', 'displayName', 'givenName', 'surname'].includes(attr))
|
|
260
|
-
continue;
|
|
261
|
-
b.add('differs', area, `onAttributeCollection ${attr}`, 'Collected at sign-up: use an Atlas sign-up field (unsafe_metadata) or collect it after sign-in; existing values move to metadata.', 'sign-up fields');
|
|
262
|
-
}
|
|
263
|
-
if ((0, record_set_1.strs)((0, record_set_1.isObj)(f.conditions) && (0, record_set_1.isObj)(f.conditions.applications) ? (0, record_set_1.objs)(f.conditions.applications.includeApplications).map((x) => x.appId) : []).length > 1) {
|
|
264
|
-
b.add('differs', area, 'conditions.applications', 'One flow per set of apps: Atlas has one sign-in configuration per instance.', 'auth_config');
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
// ── custom user attributes ──
|
|
268
|
-
const custom = snap.userFlowAttributes.filter((a) => (0, record_set_1.str)(a.userFlowAttributeType) === 'custom');
|
|
269
|
-
if (custom.length)
|
|
270
|
-
b.add('differs', 'user attributes', 'userFlowAttributes (custom)', `${custom.length} custom attribute(s) (${custom.map((a) => (0, record_set_1.str)(a.displayName) ?? (0, record_set_1.str)(a.id)).join(', ')}) move to each user's public_metadata under their bare name; Atlas does not enforce their types.`, 'users public_metadata');
|
|
271
|
-
// ── app registrations → redirect URLs ──
|
|
272
|
-
const redirects = new Set();
|
|
273
|
-
let publicClient;
|
|
274
|
-
for (const app of snap.applications) {
|
|
275
|
-
const name = (0, record_set_1.str)(app.displayName) ?? '';
|
|
276
|
-
if (/^b2c-extensions-app/i.test(name))
|
|
277
|
-
continue;
|
|
278
|
-
const uris = [
|
|
279
|
-
...(0, record_set_1.strs)((0, record_set_1.isObj)(app.web) ? app.web.redirectUris : undefined),
|
|
280
|
-
...(0, record_set_1.strs)((0, record_set_1.isObj)(app.spa) ? app.spa.redirectUris : undefined),
|
|
281
|
-
...(0, record_set_1.strs)((0, record_set_1.isObj)(app.publicClient) ? app.publicClient.redirectUris : undefined),
|
|
282
|
-
].filter((u) => !/^(msal[0-9a-f-]+|ms-appx-web|urn:ietf):/i.test(u));
|
|
283
|
-
for (const u of uris)
|
|
284
|
-
redirects.add(u);
|
|
285
|
-
if (app.isFallbackPublicClient === true)
|
|
286
|
-
publicClient ??= (0, record_set_1.str)(app.appId);
|
|
287
|
-
}
|
|
288
|
-
for (const url of redirects) {
|
|
289
|
-
if (url.includes('*'))
|
|
290
|
-
b.add('differs', 'app registrations', `redirectUris ${url}`, 'Atlas redirect URLs are exact (no wildcards).', 'redirect_urls');
|
|
291
|
-
else
|
|
292
|
-
b.push('redirect_urls', { url });
|
|
293
|
-
}
|
|
294
|
-
if (redirects.size)
|
|
295
|
-
b.add('mapped', 'app registrations', 'web / spa / publicClient redirectUris', `${redirects.size} redirect URI(s).`, 'redirect_urls');
|
|
296
|
-
// ── groups → roles ──
|
|
297
|
-
for (const g of snap.groups) {
|
|
298
|
-
const name = (0, record_set_1.str)(g.displayName);
|
|
299
|
-
if (!name)
|
|
300
|
-
continue;
|
|
301
|
-
const key = (0, translate_kit_1.keyOf)(name);
|
|
302
|
-
b.roles[name] = key;
|
|
303
|
-
b.push('roles', { key, name, description: (0, record_set_1.str)(g.description) ?? '', permissions: [] });
|
|
304
|
-
}
|
|
305
|
-
if (snap.groups.length)
|
|
306
|
-
b.add('differs', 'groups', 'groups', `${snap.groups.length} group(s) become Atlas app roles (memberships move with the data export).`, 'roles');
|
|
307
|
-
// ── always manual ──
|
|
308
|
-
b.add('manual', 'tenant', 'company branding / page layouts', 'Recreate your branding with Atlas appearance settings (custom HTML page layouts do not translate).', 'appearance');
|
|
309
|
-
if (snap.kind === 'b2c')
|
|
310
|
-
b.add('manual', 'tenant', 'MFA, password complexity and session settings of user flows', 'Graph does not expose these user-flow properties: read them in the portal (user flow → Properties) and set the Atlas equivalents.', 'auth_config.mfaPolicy');
|
|
311
|
-
else
|
|
312
|
-
b.add('manual', 'tenant', 'conditional access / MFA policies', 'Conditional Access and the MFA authentication-methods policy are not translated: set the Atlas MFA policy by hand.', 'auth_config.mfaPolicy');
|
|
313
|
-
translatePolicies(b, snap.policies);
|
|
314
|
-
const tenantName = snap.tenantName ?? (/^[a-z0-9-]+\.onmicrosoft\.com$/i.test(snap.tenant) ? snap.tenant.split('.')[0].toLowerCase() : undefined);
|
|
315
|
-
const bridgeVars = {};
|
|
316
|
-
if (tenantName)
|
|
317
|
-
bridgeVars.tenant = tenantName;
|
|
318
|
-
if (snap.tenantId)
|
|
319
|
-
bridgeVars.tenant_id = snap.tenantId;
|
|
320
|
-
if (publicClient)
|
|
321
|
-
bridgeVars.client_id = publicClient;
|
|
322
|
-
const lazyConfig = {};
|
|
323
|
-
if (tenantName)
|
|
324
|
-
lazyConfig.tenant = tenantName;
|
|
325
|
-
if (publicClient)
|
|
326
|
-
lazyConfig.client_id = publicClient;
|
|
327
|
-
if (snap.kind === 'b2c') {
|
|
328
|
-
if (signInFlow)
|
|
329
|
-
bridgeVars.policy = signInFlow;
|
|
330
|
-
if (ropcFlow)
|
|
331
|
-
lazyConfig.policy = ropcFlow;
|
|
332
|
-
else
|
|
333
|
-
b.add('manual', 'user flows', 'resourceOwner user flow', 'Lazy migration needs a ROPC user flow (User flows → New → Sign in using resource owner password credentials) and a public client app registration allowed to use it.', 'legacy_auth_connection');
|
|
334
|
-
}
|
|
335
|
-
else {
|
|
336
|
-
b.add('manual', 'app registrations', 'native authentication', 'Lazy migration uses the native authentication API: on a public client app registration, turn on "Allow native authentication" and add it to the sign-up / sign-in flow.', 'legacy_auth_connection');
|
|
337
|
-
}
|
|
338
|
-
const preset = snap.kind === 'b2c' ? 'azure_ad_b2c' : 'entra_external_id';
|
|
339
|
-
return b.result(`${label} tenant ${tenantName ? `${tenantName}.onmicrosoft.com` : snap.tenant}`, {
|
|
340
|
-
bridge: { preset, vars: bridgeVars },
|
|
341
|
-
lazy: { preset, config: lazyConfig },
|
|
342
|
-
});
|
|
343
|
-
}
|
|
344
|
-
//# sourceMappingURL=azure-config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"azure-config.js","sourceRoot":"","sources":["../../../src/migrate/export/azure-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import type { IdentityRecord, MfaFactorRecord, UserRecord } from '@atlasauth/migrate';
|
|
2
|
-
import { RecordSet, type Obj } from './record-set';
|
|
3
|
-
import { VendorHttp } from './vendor-http';
|
|
4
|
-
/**
|
|
5
|
-
* `atlas migrate export azure-ad-b2c | entra-external-id` — an Azure AD B2C
|
|
6
|
-
* tenant or a Microsoft Entra External ID (external) tenant onto the
|
|
7
|
-
* canonical bundle models, through Microsoft Graph with an app registration
|
|
8
|
-
* the owner creates (client credentials, User.Read.All). The client secret is
|
|
9
|
-
* sent to Microsoft's token endpoint only, from this machine.
|
|
10
|
-
*
|
|
11
|
-
* - consumer users with their sign-in identities: `emailAddress` → email,
|
|
12
|
-
* `userName` → username, `phoneNumber` → phone, `federated` → a social
|
|
13
|
-
* or OIDC identity; `mail` / `otherMails` / `mobilePhone` as extra
|
|
14
|
-
* (unverified) addresses; `extension_<app>_<name>` custom attributes →
|
|
15
|
-
* public metadata; `accountEnabled: false` → banned. Users are keyed by
|
|
16
|
-
* their directory OBJECT ID — the `sub` of B2C tokens (default user
|
|
17
|
-
* flows) and the `oid` of External ID tokens, which is what the bridge
|
|
18
|
-
* presets match on;
|
|
19
|
-
* - with authentication methods: SMS / email second factors (phoneMethods,
|
|
20
|
-
* emailMethods), and a count of authenticator-app users (no secret);
|
|
21
|
-
* - groups as app roles.
|
|
22
|
-
*
|
|
23
|
-
* Microsoft never exports passwords (the password is write-only in Graph),
|
|
24
|
-
* TOTP secrets or FIDO2 keys. Passwords move by lazy migration: a ROPC user
|
|
25
|
-
* flow on B2C, the native authentication API on External ID.
|
|
26
|
-
*/
|
|
27
|
-
export type AzureKind = 'b2c' | 'entra';
|
|
28
|
-
export interface AzureExportOptions {
|
|
29
|
-
kind: AzureKind;
|
|
30
|
-
/** Tenant id (GUID) or domain (`contoso.onmicrosoft.com`). */
|
|
31
|
-
tenant: string;
|
|
32
|
-
clientId?: string;
|
|
33
|
-
clientSecret?: string;
|
|
34
|
-
/** A Graph access token instead of client credentials. */
|
|
35
|
-
accessToken?: string;
|
|
36
|
-
/** Read each user's phone / email / software OATH methods (three calls per user). */
|
|
37
|
-
authMethods?: boolean;
|
|
38
|
-
groups?: 'roles' | 'skip';
|
|
39
|
-
/** Also export directory (admin / work) accounts that only sign in with a userPrincipalName. */
|
|
40
|
-
includeDirectoryUsers?: boolean;
|
|
41
|
-
fetchImpl?: typeof fetch;
|
|
42
|
-
sleep?: (ms: number) => Promise<void>;
|
|
43
|
-
onProgress?: (message: string) => void;
|
|
44
|
-
}
|
|
45
|
-
export declare const GRAPH = "https://graph.microsoft.com/v1.0";
|
|
46
|
-
/** The client-credentials token for Microsoft Graph (sent to login.microsoftonline.com only). */
|
|
47
|
-
export declare function graphToken(tenant: string, clientId: string, clientSecret: string, fetchImpl?: typeof fetch): Promise<string>;
|
|
48
|
-
/** Graph over {@link VendorHttp}: a bearer from a token or client credentials, fetched once. */
|
|
49
|
-
export declare function graphHttp(o: {
|
|
50
|
-
tenant: string;
|
|
51
|
-
clientId?: string;
|
|
52
|
-
clientSecret?: string;
|
|
53
|
-
accessToken?: string;
|
|
54
|
-
fetchImpl?: typeof fetch;
|
|
55
|
-
sleep?: (ms: number) => Promise<void>;
|
|
56
|
-
}): VendorHttp;
|
|
57
|
-
/** Every page of a Graph collection (`@odata.nextLink`). */
|
|
58
|
-
export declare function graphAll(http: VendorHttp, path: string): Promise<Obj[]>;
|
|
59
|
-
/** The provider name for a federated identity's issuer (a social key, or the issuer itself for an OIDC / enterprise IdP). */
|
|
60
|
-
export declare function providerOfIssuer(issuer: string): {
|
|
61
|
-
provider: string;
|
|
62
|
-
kind: IdentityRecord['kind'];
|
|
63
|
-
};
|
|
64
|
-
/** The extension attributes on a user (`extension_<appId>_<name>`) by bare name. */
|
|
65
|
-
export declare function extensionAttributes(u: Obj): Obj;
|
|
66
|
-
/** True for directory (admin / work) accounts: no consumer sign-in identity, only a userPrincipalName. */
|
|
67
|
-
export declare function isDirectoryUser(u: Obj): boolean;
|
|
68
|
-
/** Map one Graph user onto a user record and its federated identities. */
|
|
69
|
-
export declare function mapAzureUser(u: Obj): {
|
|
70
|
-
user: UserRecord;
|
|
71
|
-
identities: IdentityRecord[];
|
|
72
|
-
skippedIdentities: number;
|
|
73
|
-
} | null;
|
|
74
|
-
/** Second factors from a user's authentication methods. */
|
|
75
|
-
export declare function azureFactors(userId: string, phoneMethods: Obj[], emailMethods: Obj[]): MfaFactorRecord[];
|
|
76
|
-
export interface AzureTenantInfo {
|
|
77
|
-
tenantId?: string;
|
|
78
|
-
/** `contoso` of contoso.onmicrosoft.com. */
|
|
79
|
-
tenantName?: string;
|
|
80
|
-
}
|
|
81
|
-
/** Tenant id and initial domain (needs Organization.Read.All or Directory.Read.All; empty when not granted). */
|
|
82
|
-
export declare function azureTenantInfo(http: VendorHttp): Promise<AzureTenantInfo>;
|
|
83
|
-
/** The extension attribute names registered for users (`extension_<app>_<name>`), for `$select`. */
|
|
84
|
-
export declare function userExtensionNames(http: VendorHttp): Promise<string[]>;
|
|
85
|
-
export declare function exportAzure(opts: AzureExportOptions): Promise<RecordSet>;
|