JavaScript SDK: ссылка на аутентификацию
Каждый метод аутентификации и администрирования пользователей со своей подписью.
6 мин читать·Уровень ссылка·Пересмотрено 12 окт. 2026 г.
Этот текст на английском языке был создан автоматически на основе французского оригинала и еще не проверялся.
Эта страница была переведена автоматически. Английская версия является авторитетной.
#
Функции
Экспортированные функции
| Функция | Описание |
|---|---|
function isMfaChallenge(v: unknown): v is MfaChallenge | Защита дискриминантного типа LoginResponse = TokenPair | MfaChallenge. |
#
Сорт
АутСервис
| Метод | Описание |
|---|---|
dispose(): void | Разбирает проактивный жизненный цикл: тикер, видимость, BroadcastChannel, прослушиватели. |
onAuthStateChange(callback: AuthStateCallback): { unsubscribe: () => void; data: { subscription: { unsubscribe: () => void; }; }; } | Прослушивает изменения состояния сеанса (SIGNED_IN, SIGNED_OUT, TOKEN_REFRESHED, USER_UPDATED, MFA_CHALLENGE…). |
signUp(req: SignUpRequest): Promise<AuraResponse<LoginResponse>> | Создайте учетную запись с адресом электронной почты и паролем. |
signInWithPassword(req: SignInRequest): Promise<AuraResponse<LoginResponse>> | Авторизует пользователя по электронной почте и паролю. |
signInWithOAuth(provider: string, options?: OAuthSignInOptions): Promise<AuraResponse<{ url: string; }>> | Запускает поток OAuth: всегда возвращает { url } (и дополнительно перенаправляет браузер, если window существует). |
signInWithMagicLink(req: MagicLinkRequest): Promise<AuraResponse<{ message: string; }>> | Отправляет ссылку для подключения по электронной почте («магическая ссылка»). |
signInAnonymously(): Promise<AuraResponse<TokenPair>> | Создает анонимный сеанс (пользователь без электронной почты), записываемый и сообщаемый SIGNED_IN. |
signOut(): Promise<AuraResponse<null>> | Отключение: отзывает токен обновления на стороне сервера, если он существует, очищает локальный сеанс и выдает SIGNED_OUT. |
refreshSession(): Promise<AuraResponse<TokenPair>> | Обновляет сеанс с помощью токена обновления и выдает TOKEN_REFRESHED. |
getSession(): Promise<{ data: { session: Session | null; }; error: null; accessToken: string | null; access_token: string | null; user: User | null; }> | Текущий сеанс читается из хранилища (на практике синхронно, без сетевого вызова). |
setSession(accessToken: string, refreshToken: string): Promise<AuraResponse<User>> | Устанавливает сеанс на основе существующего токена доступа и токена обновления (например, полученного с сервера). |
exchangeCodeForSession(authCode: string, codeVerifier?: string): Promise<AuraResponse<LoginResponse>> | Обменяет код авторизации PKCE для сеанса. |
listSessions(): Promise<AuraResponse<SessionInfo[]>> | Перечисляет сеансы вошедшего пользователя (устройство, IP-адрес, даты); is_current находит текущий сеанс. |
revokeSession(sessionId: string): Promise<AuraResponse<null>> | Отменяет сеанс пользователя, подключенного по его идентификатору. |
revokeAllSessions(): Promise<AuraResponse<{ message: string; }>> | Выключает пользователя повсюду: отменяет все его сеансы, очищает локальный сеанс и выдает SIGNED_OUT. |
getUser(jwt?: string): Promise<AuraResponse<User>> | Получает проверенного пользователя на стороне сервера. |
getClaims(jwt?: string, options?: { allowExpired?: boolean; issuer?: string; audience?: string; }): Promise<AuraResponse<GetClaimsResult>> | Проверяет и декодирует утверждения JWT. |
deleteUser(password: string): Promise<AuraResponse<null>> | Удаляет учетную запись подключенного пользователя после подтверждения его пароля, а затем очищает локальный сеанс. |
updateUser(req: UpdateUserRequest): Promise<AuraResponse<User>> | Обновляет вошедшего в систему пользователя (метаданные, пароль и т. д.) и выдает USER_UPDATED. |
resetPasswordForEmail(req: PasswordResetRequest): Promise<AuraResponse<{ message: string; }>> | Отправляет электронное письмо для сброса пароля. |
updatePassword(newPassword: string, currentPassword?: string): Promise<AuraResponse<User>> | Изменяет пароль вошедшего в систему пользователя. |
mfaEnroll(): Promise<AuraResponse<MfaEnrollResponse>> | MFA: запускает регистрацию TOTP и возвращает secret и URL-адрес otpauth_url для отображения в виде QR-кода. |
mfaVerifySetup(code: string): Promise<AuraResponse<{ recovery_codes: string[]; }>> | MFA: подтверждает регистрацию с помощью первого кода и возвращает коды восстановления. |
mfaVerify(req: MfaVerifyRequest): Promise<AuraResponse<TokenPair>> | MFA: разрывает соединение, возвратившее запрос (mfa_token и код TOTP). |
mfaUnenroll(password: string): Promise<AuraResponse<{ message: string; }>> | MFA: деактивирует MFA после подтверждения пароля. |
verifyOtp(params: VerifyEmailChangeOtpParams): Promise<AuraResponse<User>>verifyOtp(params: Exclude<VerifyOtpParams, VerifyEmailChangeOtpParams>): Promise<AuraResponse<TokenPair>> | ЕДИНСТВЕННАЯ точка входа проверки OTP (парность verifyOtp из @supabase/auth-js). |
resendVerificationEmail(email?: string): Promise<AuraResponse<{ message: string; }>> | Повторно отправляет письмо с подтверждением на email или на адрес вошедшего в систему пользователя. |
signInWithEmailOtp(email: string): Promise<AuraResponse<{ message: string; }>> | Отправляет одноразовый код по электронной почте; должен быть подтвержден verifyOtp({ type: 'email' }). |
signInWithSmsOtp(phone: string): Promise<AuraResponse<{ message: string; }>> | Отправляет одноразовый код по SMS; должен быть подтвержден verifyOtp({ type: 'sms' }). |
listIdentities(): Promise<AuraResponse<IdentityInfo[]>> | Перечисляет удостоверения (поставщиков), связанные с вошедшим в систему пользователем. |
linkIdentity(provider: string): Promise<AuraResponse<{ url: string; provider: string; }>> | Начинает привязку провайдера OAuth к подключенной учетной записи и возвращает URL-адрес авторизации для открытия. |
unlinkIdentity(identityId: string): Promise<AuraResponse<{ message: string; }>> | Отключает личность от учетной записи, связанной с ее идентификатором. |
regenerateRecoveryCodes(code: string): Promise<AuraResponse<{ recovery_codes: string[]; }>> | MFA: повторно генерирует коды восстановления после подтверждения с помощью кода TOTP. |
signInWithIdToken(provider: string, idToken: string, accessToken?: string): Promise<AuraResponse<LoginResponse>> | Обменяет идентификатор токена провайдера (Google/Apple, собственный мобильный телефон) для сеанса. |
getSettings(): Promise<AuraResponse<{ disable_signup: boolean; external: Record<string, boolean>; mailer_autoconfirm: boolean; mfa_enabled: boolean; }>> | Паритет GoTrue: GET /settings — публичная конфигурация проекта (авторизация не требуется). |
getAnonKey(): Promise<AuraResponse<{ anon_key: string; }>> | Публикуемый ключ (анон-ключ) проекта — GET /anon-key (публичный, как у модели Supabase). |
resetPassword(token: string, newPassword: string): Promise<AuraResponse<TokenPair>> | Потребляет токен восстановления пароля и применяет новый пароль. |
promoteAnonymous(credentials: { email: string; password: string; }): Promise<AuraResponse<TokenPair>> | Преобразует текущего анонимного пользователя (требуется JWT) в обычную учетную запись электронной почты + пароль. |
verifyMagicLink(token: string): Promise<AuraResponse<TokenPair>> | Потребляет токен волшебной ссылки и возвращает TokenPair. |
#
Сорт
Аутадминсервице
| Метод | Описание |
|---|---|
listUsers(params?: { limit?: number; offset?: number; search?: string; }): Promise<AuraResponse<AdminUser[]>> | Перечисляет пользователей проекта с поиском (search) и нумерацией страниц (limit, offset). |
getUser(userId: string): Promise<AuraResponse<AdminUser>> | Считывает пользователя по его идентификатору. |
createUser(data: AdminCreateUserRequest): Promise<AuraResponse<AdminUser>> | Создает пользователя без прохождения публичной регистрации (адрес электронной почты, пароль, метаданные, роль). |
updateUser(userId: string, data: AdminUpdateUserRequest): Promise<AuraResponse<AdminUser>> | Обновляет пользователя: меняются только предоставленные поля. |
deleteUser(userId: string): Promise<AuraResponse<null>> | Удалить пользователя. |
banUser(userId: string): Promise<AuraResponse<null>> | Банит пользователя: он больше не может войти. |
unbanUser(userId: string): Promise<AuraResponse<null>> | Снять бан пользователя. |
generateLink(userId: string, type: GenerateLinkType): Promise<AuraResponse<GenerateLinkResult>> | Создает одноразовую ссылку для пользователя ('magic', 'recovery' или 'invite') и возвращает { link, token }. |
getUserStats(): Promise<AuraResponse<UserStats>> | Статистика пользователей: всего, проверенных, забаненных, с MFA и новых за 7 дней. |
listUserIdentities(userId: string): Promise<AuraResponse<IdentityInfo[]>> | Перечисляет идентификаторы, связанные с пользователем (поставщики OAuth, электронная почта). |
listSessions(params?: { userId?: string; limit?: number; offset?: number; }): Promise<AuraResponse<AdminSessionInfo[]>> | Перечисляет активные сеансы всех пользователей, фильтруемые по userId, с нумерацией страниц. |
revokeSession(sessionId: string): Promise<AuraResponse<null>> | Отменяет сеанс по его идентификатору. |
getAuditLog(params?: { userId?: string; limit?: number; offset?: number; }): Promise<AuraResponse<AuditLogEntry[]>> | Считывает журнал аудита (действие, IP-адрес, пользовательский агент, дата), фильтруемый по userId, с подкачкой по страницам. |
getSettings(): Promise<AuraResponse<AuthSettings>> | Считывает настройки аутентификации проекта. |
updateSettings(data: AuthSettingsUpdate): Promise<AuraResponse<AuthSettings>> | Обновляет настройки аутентификации проекта (частичное объединение: записываются только предоставленные поля, COALESCE на стороне бэкенда). |
listEmailTemplates(): Promise<AuraResponse<Record<string, unknown>[]>> | Перечисляет шаблоны электронной почты для аутентификации проекта. |
getEmailTemplate(type: string): Promise<AuraResponse<Record<string, unknown>>> | Считывает шаблон электронной почты заданного типа (например, подтверждение, восстановление). |
updateEmailTemplate(type: string, data: EmailTemplateUpdate): Promise<AuraResponse<Record<string, unknown>>> | Заменяет содержимое шаблона электронной почты заданного типа. |
deleteEmailTemplate(type: string): Promise<AuraResponse<{ message: string; }>> | Удаляет пользовательский шаблон из типа электронной почты. |
testEmailTemplate(type: string, body: { to_email: string; }): Promise<AuraResponse<null>> | Отправляет тестовое письмо с шаблоном типа на адрес to_email. |
Сгенерированная страница
Эта страница создается на основе объявлений типов и комментариев SDK, поэтому она не может отличаться от опубликованного кода. Рабочие примеры можно найти в руководствах.
Последнее обновление · 12 окт. 2026 г.