diff --git a/apps/login/app/(login)/register/page.tsx b/apps/login/app/(login)/register/page.tsx index 4690b5527eb..9cd32eb07da 100644 --- a/apps/login/app/(login)/register/page.tsx +++ b/apps/login/app/(login)/register/page.tsx @@ -15,15 +15,11 @@ export default async function Page({ const setPassword = !!(firstname && lastname && email); - console.log(setPassword); - const legal = await getLegalAndSupportSettings(server); const passwordComplexitySettings = await getPasswordComplexitySettings( server ); - console.log(legal); - return setPassword ? (

Set Password

diff --git a/apps/login/app/passkeys/route.ts b/apps/login/app/passkeys/route.ts index 6991668dd5d..9bd442c73ca 100644 --- a/apps/login/app/passkeys/route.ts +++ b/apps/login/app/passkeys/route.ts @@ -26,13 +26,12 @@ export async function POST(request: NextRequest) { return createPasskeyRegistrationLink(userId) .then((resp) => { const code = resp.code; - console.log("code", code); return registerPasskey(userId, code).then((resp) => { return NextResponse.json(resp); }); }) .catch((error) => { - console.log("error on creating passkey registration link"); + console.error("error on creating passkey registration link"); return NextResponse.json(error, { status: 500 }); }); } else { diff --git a/apps/login/app/passkeys/verify/route.ts b/apps/login/app/passkeys/verify/route.ts index bda30818fda..1346ecc637d 100644 --- a/apps/login/app/passkeys/verify/route.ts +++ b/apps/login/app/passkeys/verify/route.ts @@ -1,18 +1,18 @@ -import { - createPasskeyRegistrationLink, - getSession, - registerPasskey, - server, - verifyPasskeyRegistration, -} from "#/lib/zitadel"; +import { getSession, server, verifyPasskeyRegistration } from "#/lib/zitadel"; import { getSessionCookieById } from "#/utils/cookies"; -import { NextRequest, NextResponse } from "next/server"; +import { NextRequest, NextResponse, userAgent } from "next/server"; export async function POST(request: NextRequest) { const body = await request.json(); if (body) { - const { passkeyId, passkeyName, publicKeyCredential, sessionId } = body; + let { passkeyId, passkeyName, publicKeyCredential, sessionId } = body; + if (!!!passkeyName) { + const { browser, device, os } = userAgent(request); + passkeyName = `${device.vendor ?? ""} ${device.model ?? ""}${ + device.vendor || device.model ? ", " : "" + }${os.name}${os.name ? ", " : ""}${browser.name}`; + } const sessionCookie = await getSessionCookieById(sessionId); const session = await getSession( @@ -32,11 +32,9 @@ export async function POST(request: NextRequest) { userId ) .then((resp) => { - console.log("verifyresponse", resp); return NextResponse.json(resp); }) .catch((error) => { - console.log("error on verifying passkey"); return NextResponse.json(error, { status: 500 }); }); } else { diff --git a/apps/login/lib/zitadel.ts b/apps/login/lib/zitadel.ts index c771f8f2968..5ba226d80d4 100644 --- a/apps/login/lib/zitadel.ts +++ b/apps/login/lib/zitadel.ts @@ -254,7 +254,6 @@ export async function verifyPasskeyRegistration( userId: string ): Promise { const userservice = user.getUser(server); - console.log(passkeyId, passkeyName, publicKeyCredential, userId); return userservice.verifyPasskeyRegistration( { passkeyId, @@ -276,20 +275,10 @@ export async function registerPasskey( userId: string, code: { id: string; code: string } ): Promise { - // this actions will be made from the currently seleected user - const zitadelConfig: ZitadelServerOptions = { - name: "zitadel login", - apiUrl: process.env.ZITADEL_API_URL ?? "", - token: "", - }; - - const authserver: ZitadelServer = initializeServer(zitadelConfig); - console.log("server", authserver); const userservice = user.getUser(server); return userservice.registerPasskey({ userId, code, - // returnCode: new ReturnPasskeyRegistrationCode(), }); } diff --git a/apps/login/ui/PasswordForm.tsx b/apps/login/ui/PasswordForm.tsx index f28ce0772a1..eb432769034 100644 --- a/apps/login/ui/PasswordForm.tsx +++ b/apps/login/ui/PasswordForm.tsx @@ -52,7 +52,14 @@ export default function PasswordForm({ loginName }: Props) { function submitPasswordAndContinue(value: Inputs): Promise { return submitPassword(value).then((resp: any) => { - return router.push(`/accounts`); + if (resp.factors && !resp.factors.passwordless) { + return router.push( + `/passkey/add?` + + new URLSearchParams({ loginName: resp.factors.user.loginName }) + ); + } else { + return router.push(`/accounts`); + } }); } diff --git a/apps/login/ui/RegisterPasskey.tsx b/apps/login/ui/RegisterPasskey.tsx index a2f95d82dba..efff2594d22 100644 --- a/apps/login/ui/RegisterPasskey.tsx +++ b/apps/login/ui/RegisterPasskey.tsx @@ -26,8 +26,6 @@ export default function RegisterPasskey({ sessionId }: Props) { const router = useRouter(); async function submitRegister() { - // const link = await createPasskeyRegistrationLink(server, userId); - // console.log(link); setError(""); setLoading(true); const res = await fetch("/passkeys", { @@ -83,7 +81,7 @@ export default function RegisterPasskey({ sessionId }: Props) { function submitRegisterAndContinue(value: Inputs): Promise { return submitRegister().then((resp: RegisterPasskeyResponse) => { const passkeyId = resp.passkeyId; - console.log("passkeyId", passkeyId); + if ( resp.publicKeyCredentialCreationOptions && resp.publicKeyCredentialCreationOptions.publicKey @@ -131,7 +129,6 @@ export default function RegisterPasskey({ sessionId }: Props) { id: resp.id, rawId: coerceToBase64Url(rawId, "rawId"), type: resp.type, - // response: (resp as any).response, response: { attestationObject: coerceToBase64Url( attestationObject, @@ -145,7 +142,7 @@ export default function RegisterPasskey({ sessionId }: Props) { }; console.log(data); - return submitVerify(passkeyId, "name", data, sessionId); + return submitVerify(passkeyId, "", data, sessionId); } else { setLoading(false); setError("An error on registering passkey");