From d6deea6880ae08876b60d110f393952659432160 Mon Sep 17 00:00:00 2001 From: panteliselef Date: Wed, 13 Nov 2024 14:32:28 +0200 Subject: [PATCH 1/2] chore(shared,types): Replace `veryStrict` with `strictMfa` configuration for reverification --- .changeset/poor-gorillas-complain.md | 6 ++++++ packages/react/src/hooks/__tests__/useAuth.test.ts | 2 +- packages/shared/src/authorization.ts | 4 ++-- packages/types/src/sessionVerification.ts | 2 +- 4 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 .changeset/poor-gorillas-complain.md diff --git a/.changeset/poor-gorillas-complain.md b/.changeset/poor-gorillas-complain.md new file mode 100644 index 00000000000..94fd98c7882 --- /dev/null +++ b/.changeset/poor-gorillas-complain.md @@ -0,0 +1,6 @@ +--- +'@clerk/shared': minor +'@clerk/types': minor +--- + +Replace `veryStrict` with `strictMfa` configuration for reverification. diff --git a/packages/react/src/hooks/__tests__/useAuth.test.ts b/packages/react/src/hooks/__tests__/useAuth.test.ts index 87ed825fff9..d9c9bdfc4af 100644 --- a/packages/react/src/hooks/__tests__/useAuth.test.ts +++ b/packages/react/src/hooks/__tests__/useAuth.test.ts @@ -65,7 +65,7 @@ describe('useAuth type tests', () => { it('veryStrict reverification is allowed', () => { expectTypeOf({ - __experimental_reverification: 'veryStrict', + __experimental_reverification: 'strictMfa', } as const).toMatchTypeOf(); }); diff --git a/packages/shared/src/authorization.ts b/packages/shared/src/authorization.ts index d50251a6ab0..654c0bdce37 100644 --- a/packages/shared/src/authorization.ts +++ b/packages/shared/src/authorization.ts @@ -32,7 +32,7 @@ type CheckStepUpAuthorization = ( ) => boolean | null; const TYPES_TO_OBJECTS: TypesToConfig = { - veryStrict: { + strictMfa: { afterMinutes: 10, level: 'multiFactor', }, @@ -52,7 +52,7 @@ const TYPES_TO_OBJECTS: TypesToConfig = { const ALLOWED_LEVELS = new Set<__experimental_SessionVerificationLevel>(['firstFactor', 'secondFactor', 'multiFactor']); -const ALLOWED_TYPES = new Set<__experimental_SessionVerificationTypes>(['veryStrict', 'strict', 'moderate', 'lax']); +const ALLOWED_TYPES = new Set<__experimental_SessionVerificationTypes>(['strictMfa', 'strict', 'moderate', 'lax']); // Helper functions const isValidMaxAge = (maxAge: any) => typeof maxAge === 'number' && maxAge > 0; diff --git a/packages/types/src/sessionVerification.ts b/packages/types/src/sessionVerification.ts index b5dbf4a771a..1ee1a6a63b6 100644 --- a/packages/types/src/sessionVerification.ts +++ b/packages/types/src/sessionVerification.ts @@ -15,7 +15,7 @@ export interface __experimental_SessionVerificationResource extends ClerkResourc export type __experimental_SessionVerificationStatus = 'needs_first_factor' | 'needs_second_factor' | 'complete'; -export type __experimental_SessionVerificationTypes = 'veryStrict' | 'strict' | 'moderate' | 'lax'; +export type __experimental_SessionVerificationTypes = 'strictMfa' | 'strict' | 'moderate' | 'lax'; export type __experimental_ReverificationConfig = | __experimental_SessionVerificationTypes From 9f62ad8994181a8c89f44a82841495bc0cdc53e9 Mon Sep 17 00:00:00 2001 From: panteliselef Date: Wed, 13 Nov 2024 21:42:56 +0200 Subject: [PATCH 2/2] update test --- packages/clerk-js/src/core/resources/__tests__/Session.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/clerk-js/src/core/resources/__tests__/Session.test.ts b/packages/clerk-js/src/core/resources/__tests__/Session.test.ts index da4abb2dbe9..da51f952a87 100644 --- a/packages/clerk-js/src/core/resources/__tests__/Session.test.ts +++ b/packages/clerk-js/src/core/resources/__tests__/Session.test.ts @@ -503,7 +503,7 @@ describe('Session', () => { } as SessionJSON); const isAuthorized = session.checkAuthorization({ - __experimental_reverification: 'veryStrict', + __experimental_reverification: 'strictMfa', }); expect(isAuthorized).toBe(true);