diff --git a/src/server/auth/handlers/register.ts b/src/server/auth/handlers/register.ts index 7eca5b17..2a74b4a4 100644 --- a/src/server/auth/handlers/register.ts +++ b/src/server/auth/handlers/register.ts @@ -84,16 +84,17 @@ export function clientRegistrationHandler({ : undefined; const clientIdIssuedAt = Math.floor(Date.now() / 1000); + // Calculate client secret expiry time + const clientsDoExpire = clientSecretExpirySeconds > 0 + const secretExpiryTime = clientsDoExpire ? clientIdIssuedAt + clientSecretExpirySeconds : 0 + const clientSecretExpiresAt = isPublicClient ? undefined : secretExpiryTime + let clientInfo: OAuthClientInformationFull = { ...clientMetadata, client_id: clientId, client_secret: clientSecret, client_id_issued_at: clientIdIssuedAt, - client_secret_expires_at: isPublicClient - ? clientSecretExpirySeconds > 0 - ? clientIdIssuedAt + clientSecretExpirySeconds - : 0 - : undefined, + client_secret_expires_at: clientSecretExpiresAt, }; clientInfo = await clientsStore.registerClient!(clientInfo);