از کجا باید با Firebase Authentication شروع کنم؟

برای کمک هوش مصنوعی، دستورالعمل زیر را در عامل کدنویسی هوش مصنوعی خود (مانند Gemini در اندروید استودیو، Antigravity ، Claude Code، Codex و Cursor) کپی کنید. می‌توانید دستورالعمل را سفارشی کنید و با عامل خود تکرار کنید. برای اطلاعات دقیق نصب، به مهارت‌های عامل Firebase مراجعه کنید.

Help me use Firebase in my app.
1. Make sure that **Firebase agent skills** are installed and updated. For Claude Code, Codex, or Cursor agents, help me install the Firebase plugin. For other agents, run `npx skills add firebase/agent-skills`. Always try to use **Firebase agent skills** for Firebase-related tasks.
2. I want to add Firebase Authentication to my app. Help me choose the best option for my app based on my use case, experience, and app architecture.

من از قبل یک سیستم احراز هویت دارم

اگر برنامه شما از قبل پیاده‌سازی ورود به سیستم را دارد و می‌خواهید از آن برای تأیید اعتبار با سرویس‌های backend فایربیس استفاده کنید، از تأیید اعتبار سفارشی استفاده کنید. این شامل برنامه‌هایی می‌شود که از هر یک از موارد زیر استفاده می‌کنند:

  • راهکارهای سفارشی، مانند سیستم‌های سفارشی مبتنی بر رمز عبور.
  • سرویس‌های مدیریت هویت شخص ثالث، مانند Auth0 یا Okta.
  • ادغام‌های موجود با ارائه‌دهندگان هویت فدرال، مانند گوگل، فیس‌بوک یا اپل. (و اگر هنوز از هویت فدرال پشتیبانی نمی‌کنید، اما می‌خواهید این کار را انجام دهید، به بخش بعدی مراجعه کنید.)

با احراز هویت سفارشی، شما کاربران را با سیستم دلخواه خود وارد سیستم می‌کنید، یک توکن Firebase برای کاربر در backend خود ایجاد می‌کنید و سپس از توکن دریافتی از کلاینت برای احراز هویت با Firebase استفاده می‌کنید.

به مستندات مربوط به iOS+ ، اندروید ، وب ، فلاتر ، یونیتی یا ++C مراجعه کنید.

می‌خواهم سیستم احراز هویتم را با Firebase بسازم.

اگر در حال ساخت یک برنامه جدید یا اضافه کردن قابلیت ورود به برنامه موجود هستید، Firebase کتابخانه‌ها و سرویس‌هایی دارد که می‌توانند به شما در پیاده‌سازی احراز هویت امن بدون نیاز به ساخت backend احراز هویت توسط خودتان کمک کنند. Firebase Authentication یک راه‌حل backend کامل برای ورود به سیستم با رمزهای عبور، ارائه‌دهندگان هویت فدرال، لینک‌های ایمیل و پیام‌های متنی است.

من یک محلول قطره‌ای می‌خواهم که استفاده از آن آسان باشد

سریع‌ترین و آسان‌ترین راه برای افزودن احراز هویت به یک برنامه، استفاده از FirebaseUI Auth ، یک کتابخانه رابط کاربری کشویی است. FirebaseUI جریان‌های کاربری کاملی را برای تمام متدهای ورود به سیستم پشتیبانی‌شده توسط Firebase Authentication پیاده‌سازی می‌کند.

از آنجا که FirebaseUI Auth یک راه‌حل موقت است، دارای UX خاصی است که ممکن است نیازهای شما را برآورده نکند. اگر می‌خواهید UX را تغییر دهید، می‌توانید کتابخانه را که متن‌باز است، فورک کنید و از نسخه خودتان استفاده کنید. با این حال، برای جریان‌های ورود به سیستم کاملاً متفاوت، ممکن است ترجیح دهید جریان‌های خودتان را با Firebase SDK پیاده‌سازی کنید، همانطور که در بخش بعدی مورد بحث قرار خواهد گرفت.

به مستندات FirebaseUI Auth برای iOS ، اندروید یا وب مراجعه کنید.

می‌خواهم کنترل کاملی روی تجربه ورود به سیستم داشته باشم

برای کنترل بیشتر بر تجربه ورود به سیستم برنامه خود، می‌توانید جریان‌های احراز هویت خود را پیاده‌سازی کنید و از Firebase SDK برای کار با سرویس‌های احراز هویت Firebase استفاده کنید. به عنوان مثال، جریان آدرس ایمیل و رمز عبور یا جریان ورود به سیستم Google خود را بسازید و آدرس ایمیل و رمز عبور یا توکن Google ID کاربر را برای احراز هویت کاربر به Firebase ارسال کنید.

به اسناد SDK Firebase Authentication مراجعه کنید:

سرویس‌های فایربیس
ورود به سیستم با آدرس ایمیل و رمز عبور آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
ورود به سیستم با شماره تلفن آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
ورود با لینک ایمیل آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
هویت فدرال
گوگل آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
فیسبوک آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
اپل آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
بازی کنید اندروید | یونیتی | سی پلاس پلاس
مرکز بازی آی‌او‌اس+
گیت‌هاب آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
مایکروسافت آی‌او‌اس+ | اندروید | وب | یونیتی | سی‌پلاس‌پلاس
توییتر آی‌او‌اس+ | اندروید | وب | فلاتر | یونیتی | سی‌پلاس‌پلاس
یاهو آی‌او‌اس+ | اندروید | وب | یونیتی | سی‌پلاس‌پلاس

می‌خواهم تجربه‌های غنی پیش از ورود به سیستم ایجاد کنم

شما می‌توانید با استفاده از Anonymous Auth، کاربران را قادر سازید تا قبل از ورود واقعی به سیستم، از ویژگی‌های ورود به سیستم برنامه شما استفاده کنند. با "ورود به سیستم ناشناس"، حساب‌های کاربری موقت تک جلسه‌ای ایجاد می‌کنید که می‌توانید مانند یک حساب واقعی از آنها استفاده کنید. سپس، پس از ورود یا ثبت‌نام کاربر، حساب موقت را به حساب واقعی پیوند دهید تا به آنها اجازه دهید از جایی که متوقف شده‌اند، ادامه دهند.

احراز هویت ناشناس در کنار احراز هویت سفارشی یا هر یک از سرویس‌های احراز هویت فایربیس به خوبی کار می‌کند.

به مستندات مربوط به iOS+ ، اندروید ، وب ، فلاتر ، یونیتی یا ++C مراجعه کنید.

می‌خواهم از طریق backend به سرویس‌های Firebase دسترسی داشته باشم.

برای دسترسی به سرویس‌های فایربیس از طریق یک سرور، نیازی به استفاده Firebase Authentication ندارید. در عوض، از Admin SDK استفاده کنید. وقتی Admin SDK را مقداردهی اولیه می‌کنید، با اعتبارنامه‌های حساب سرویس احراز هویت می‌شوید که نشان‌دهنده پروژه فایربیس شما هستند و نه یک کاربر خاص، و دسترسی کامل به منابع پروژه شما را اعطا می‌کنند.