پرش به محتوای اصلی
لوگوی نوین وبنوین وبWEBNOVO
همه‌ی نمونه‌کارها
دسترسی یکپارچهدر حال بهره‌برداری

ورود یکپارچه به چند داشبورد، فقط با حساب تلگرام

یک ربات به‌عنوان تنها نقطه ورود مدیران به چند سامانه متفاوت — با توکن‌های یکبارمصرف زمان‌دار و بدون جابه‌جایی هیچ رمز عبوری.

ربات تلگرام به‌عنوان درگاه ورود یکپارچه مدیران به چند داشبورد

مسئله — چه چیزی درست کار نمی‌کرد؟

  • مدیران برای ورود به هر سامانه باید آدرس و نام کاربری جداگانه‌ای به خاطر می‌سپردند و هر بار دوباره وارد می‌شدند.
  • اشتراک‌گذاری رمز عبور بین ادمین‌ها عملاً به یک ریسک امنیتی تبدیل شده بود.
  • هر سامانه مکانیزم احراز هویت متفاوتی داشت و یکپارچه کردن آن‌ها بدون بازنویسی، کار ساده‌ای نبود.
  • اگر مکانیزم ورود یک سامانه از کار می‌افتاد، دسترسی مدیر به‌طور کامل قطع می‌شد.

راه‌حل — چه ساختیم؟

  • ربات تلگرام به‌عنوان درگاه مرکزی: فقط ادمین‌های تعیین‌شده بر اساس شناسه عددی و نام کاربری دکمه دریافت می‌کنند؛ بقیه کاربران هیچ پاسخی نمی‌گیرند.
  • برای هر سامانه، مسیر ورود متناسب با خودش طراحی شده است: برای سامانه فروش، پارامتر ورود خودکار بر اساس شناسه تلگرام؛ برای پلتفرم تحلیلی، توکن یکبارمصرف دریافت‌شده از API خودش با کلید مخصوص ربات؛ برای سامانه UID، توکن کوتاه‌عمر با عمر قابل تنظیم که در لحظه مصرف باطل می‌شود.
  • عمر توکن پیش‌فرض ۱۰ دقیقه است و از طریق تنظیمات قابل تغییر.
  • اگر تولید توکن برای هر سامانه با خطا مواجه شود، ربات به لینک ساده همان سامانه عقب می‌نشیند تا دسترسی مدیر قطع نشود.
  • پیکربندی کامل از طریق متغیرهای محیطی و اعتبارسنجی‌شده با Pydantic Settings، شامل آدرس سامانه‌ها، کلیدها، شناسه ادمین‌ها و زمان‌بندی‌های دریافت پیام.
  • سرویس با FastAPI بالا می‌آید و ربات در یک وظیفه پس‌زمینه واکشی پیام‌ها را انجام می‌دهد؛ وب‌هوک قبلی در شروع پاک می‌شود.

به زبان ساده

مثل میز نگهبانی یک پاساژ است: به‌جای اینکه هر مدیر سه کلید جدا برای سه طبقه داشته باشد، به نگهبانی می‌گوید و یک کارت یک‌بارمصرف می‌گیرد. هویت همان حساب تلگرام است؛ هیچ رمز عبوری جابه‌جا نمی‌شود که لو برود. هر کارت یک‌بار مصرف است و به‌طور پیش‌فرض ۱۰ دقیقه اعتبار دارد. اگر سیستم صدور کارت برای یک سامانه خراب شود، نگهبان همان مسیر ساده را نشان می‌دهد تا کار مدیر لنگ نماند. نتیجه برای شما: ورود سریع‌تر، بدون رمز مشترک بین ادمین‌ها و بدون قطعی کامل دسترسی.

قبل و بعد

همان فرآیند، در دو وضعیت: پیش از پیاده‌سازی و پس از آن.

قبل

چند آدرس، چند نام کاربری و ورودهای تکراری برای هر سامانه.

بعد

یک ربات، یک کلیک، توکن یکبارمصرف و زمان‌دار.

قبل

ریسک دائمی افشای رمز عبور به‌خاطر اشتراک‌گذاری بین ادمین‌ها.

بعد

هیچ رمزی جابه‌جا نمی‌شود؛ هویت همان حساب تلگرام است و توکن پس از یک بار مصرف باطل می‌شود.

قبل

خرابی مکانیزم ورود یک سامانه یعنی توقف کامل کار مدیر.

بعد

عقب‌نشینی ایمن: اگر تولید توکن شکست بخورد، مدیر همچنان وصل می‌شود.

عدد و اندازه

این اعداد از روی کد همین پروژه شمرده شده‌اند، نه تخمین زده.

۳سامانه در یک نقطه ورود
۱۰mعمر پیش‌فرض توکن
۳۴۸خط کد در یک فایل
۲معیار فیلتر ادمین
۱بار مصرف هر توکن
۰پاسخ به کاربر غیرمجاز

لایه‌های معماری

دروازهربات تلگرام با فیلتر سخت‌گیرانه بر اساس شناسه و نام کاربری
توکنتولید توکن متناسب با هر سامانه و ابطال در لحظه مصرف
تنظیماتمتغیرهای محیطی اعتبارسنجی‌شده با Pydantic Settings
پایداریعقب‌نشینی به لینک ساده در صورت خطای تولید توکن
اجراFastAPI با وظیفه پس‌زمینه برای واکشی پیام‌ها

پشته فناوری

PythonFastAPIAiogram 3httpxPydantic SettingsSQLiteDocker

عقب‌نشینی ایمن به‌جای قطع دسترسی

اگر هر سامانه‌ای در دسترس نباشد یا تولید توکن شکست بخورد، ربات به لینک ساده همان سامانه برمی‌گردد. دسترسی مدیر هیچ‌وقت به خاطر خرابی یک جزء قطع نمی‌شود.

پروژه مشابهی دارید؟

در یک جلسه ۱۵ دقیقه‌ای رایگان بررسی می‌کنیم این الگو برای فرآیند شما هم جواب می‌دهد یا نه.

رزرو مشاوره رایگان