تواصل معنا
Webflow Premium Partner إيهاب فايز
العودة لأدوات AI Coding
الأمان والجودة

Supabase Auth

إعداد Supabase Auth للمصادقة بالبريد والتواصل الاجتماعي والهاتف مع تكامل Row Level Security.

Claude Code Cursor Copilot Windsurf Gemini CLI

نظرة عامة

Supabase Auth هو نظام مصادقة مفتوح المصدر مبني على GoTrue يوفر مصادقة بالبريد الإلكتروني/كلمة المرور والروابط السحرية وOAuth الاجتماعي ومصادقة الهاتف/SMS. يتكامل بعمق مع قاعدة بيانات PostgreSQL الخاصة بـ Supabase من خلال سياسات Row Level Security مما يتيح التحكم في الوصول على مستوى قاعدة البيانات مرتبطاً مباشرة بالمستخدمين المصادق عليهم.

يدعم نظام المصادقة أكثر من 20 مقدم خدمة اجتماعي بما في ذلك Google وApple وGitHub وAzure. يوفر مساعدين للمصادقة من جانب الخادم لـ Next.js وSvelteKit وRemix تتعامل مع إدارة الجلسات القائمة على الكوكيز. يُستخدم تدفق PKCE افتراضياً لتعزيز الأمان في سيناريوهات التقديم من جانب الخادم.

يتضمن Supabase Auth قوالب بريد إلكتروني مدمجة وتكوين عناوين URL لإعادة التوجيه وتخصيص JWT. يعني التكامل مع RLS أنه يمكنك كتابة سياسات PostgreSQL مثل auth.uid() = user_id لتقييد الوصول إلى البيانات على مستوى قاعدة البيانات مما يلغي الحاجة لمنطق التفويض في كود تطبيقك.

لمن هذه الأداة؟

  • إضافة تسجيل دخول بالبريد وكلمة المرور والتواصل الاجتماعي لتطبيق ويب
  • تنفيذ سياسات Row Level Security بناءً على المصادقة
  • إعداد مصادقة بدون كلمة مرور بالرابط السحري
  • التعامل مع المصادقة من جانب الخادم في Next.js مع Supabase SSR

التثبيت

إعداد Claude Code
npm install @supabase/supabase-js @supabase/ssr

الإعدادات

// lib/supabase/server.ts
import { createServerClient } from "@supabase/ssr"
import { cookies } from "next/headers"

export function createClient() {
  const cookieStore = cookies()
  return createServerClient(
    process.env.NEXT_PUBLIC_SUPABASE_URL!,
    process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY!,
    { cookies: { getAll: () => cookieStore.getAll() } }
  )
}