0Pricing
Supabase Backend as a Service · Урок

Сброс пароля и аутентификация по волшебной ссылке

Добавьте беспарольные волшебные ссылки и безопасный процесс сброса пароля в аутентификацию Supabase, включая перенаправление и обмен токенами.

«Сброс пароля и аутентификация по волшебной ссылке» — бесплатный урок Supabase Backend as a Service на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Supabase Backend as a Service, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Supabase Backend as a Service содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Beyond Passwords

Supabase supports passwordless sign-in via magic links and a built-in password reset flow. Both rely on emailing a secure link to the user.

How Magic Links Work

The user enters an email, Supabase emails a one-time link, and clicking it signs them in, no password needed.

  • Link contains a single-use token
  • Token is exchanged for a session

Sending a Magic Link

Call signInWithOtp with the email and a redirect URL.

const { error } = await supabase.auth.signInWithOtp({
  email: 'user@example.com',
  options: { emailRedirectTo: 'https://app.example.com/welcome' }
});

Configuring Redirect URLs

In the dashboard under Authentication > URL Configuration, allow-list your redirect URLs. Links to non-listed URLs are rejected for security.

Completing the Sign-In

When the user returns, Supabase detects the token in the URL and establishes the session automatically with detectSessionInUrl enabled.

const { data } = await supabase.auth.getSession();
console.log(data.session ? 'Signed in' : 'No session');

Starting a Password Reset

Trigger a reset email with resetPasswordForEmail. The link sends the user to a page where they set a new password.

await supabase.auth.resetPasswordForEmail(
  'user@example.com',
  { redirectTo: 'https://app.example.com/update-password' }
);

Setting the New Password

On the redirect page, the user is in a temporary recovery session. Update the password with updateUser.

const { error } = await supabase.auth.updateUser({
  password: 'a-strong-new-password'
});

Validating Password Strength

Enforce a minimum standard before submitting to reduce weak credentials.

function strong(pw) {
  return pw.length >= 8 && /[0-9]/.test(pw) && /[A-Za-z]/.test(pw);
}
console.log(strong('abc12345'));

Token Expiry

Magic links and reset tokens are short-lived and single use. Expired links must trigger a fresh request, so always handle the expiry error gracefully.

Customizing Email Templates

Under Authentication > Email Templates you can brand the magic link and recovery emails so they match your product.

Putting It Together

Magic links remove password friction, and the reset flow gives users a safe recovery path. Both depend on allow-listed redirects and short-lived tokens.

Quick Check

Test your understanding of magic links and resets.

Recap

You added magic link sign-in with signInWithOtp, built a password reset flow with resetPasswordForEmail and updateUser, and learned why allow-listed redirects and short-lived tokens keep it secure.

Часто задаваемые вопросы

Урок «Сброс пароля и аутентификация по волшебной ссылке» бесплатный?

Да — полный текст урока «Сброс пароля и аутентификация по волшебной ссылке» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Supabase Backend as a Service, подпишись на CoddyKit PRO. Курс Supabase Backend as a Service содержит 4 уроков всего.

Чему я научусь в уроке «Сброс пароля и аутентификация по волшебной ссылке»?

Добавьте беспарольные волшебные ссылки и безопасный процесс сброса пароля в аутентификацию Supabase, включая перенаправление и обмен токенами. Ты практикуешь Supabase Backend as a Service с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Supabase Backend as a Service?

Предыдущий опыт не требуется. Supabase Backend as a Service на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Сброс пароля и аутентификация по волшебной ссылке»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Supabase Backend as a Service?

Да. Каждый урок Supabase Backend as a Service включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Регистрация пользователей по электронной почте и паролю
  2. Вход через социальные сети (провайдеры OAuth)
  3. Управление сеансами и профилями пользователей
  4. Сброс пароля и аутентификация по волшебной ссылке
← Назад к Supabase Backend as a Service