Better Auth 1.7 اومد: OAuth جدیتر از همیشه
خلاصهٔ کاملتر
تیم Better Auth نسخهٔ 1.7 این کتابخانهٔ احراز هویت رو منتشر کرده و خودشون میگن یکی از بزرگترین ریلیزهاشونه. تمرکز روی چهار حوزهست: OAuth و OpenID Connect، هویت سازمانی، مجوزدهی MCP و دسترسی دستگاههای کمورودی. نکتهٔ مهم اینه که چند بخش بدون کار مهاجرت اصلاً بالا نمیآد، مخصوصاً OAuth Provider و MCP و SSO و SAML و SCIM و هویت اکانتها، پس این آپدیت یک ارتقای خودکار نیست.
قلب این نسخه همون OAuth Provider هست. حالا هر API محافظتشده میتونه دسترسیها، طول عمر توکن، claimها و سیاست امضای خودش رو داشته باشه و Better Auth بررسی میکنه که توکن اصلاً برای همون API صادر شده باشه (RFC 8707). با DPoP هم توکن به کلاینتی که درخواستش کرده گره میخوره، یعنی فقط کپیکردن توکن برای استفاده ازش کافی نیست (RFC 9449). خروج back-channel، اجبار به لاگین تازه با max_age و چرخش کلید کلاینت هم اضافه شده.
احراز هویت MCP از هسته جدا شده و به پکیج @better-auth/mcp رفته که پروفایل مجوزدهی MCP نسخهٔ 2026-07-28 و نسخهٔ 2 از SDK رسمی تایپاسکریپت رو پشتیبانی میکنه. مرز مسئولیتها روشنه: لاگین و رضایت کاربر و توکن دست Better Auth، و رد و بدل پیام بین کلاینت و سرور MCP دست خود SDK. کنارش گرنت RFC 8628 اضافه شده تا یک CLI یا تلویزیون هوشمند یا کنسول بازی کدی نشون بده و کاربر توی مرورگر دسترسی رو تأیید کنه.
سرویس SCIM (همون پروتکلی که دایرکتوری سازمان باهاش کارمندها رو توی محصول تو میسازه و غیرفعال میکنه) از پایه بازنویسی شده. Group به شکل کلاس اول اومده، عضویت مستقیم کاربرها پشتیبانی میشه، میشه یک گروه دایرکتوری رو به نقشی مثل admin یا billing نگاشت کرد و پروفایل کارمند فیلدهایی مثل دپارتمان، مدیر، شمارهٔ پرسنلی و آدرس گرفته. Cloudflare D1 پشتیبانی نمیشه، چون تراکنشهای لازم این جریان رو نمیده.
مدل هویت اکانتهای خارجی هم یکدست شده: OpenID از sub، SAML از NameID امضاشده و OAuth ساده از شناسهٔ اعلامی خودش استفاده میکنه، پس تنظیمات مختلفی که به یک provider و subject مشترک میرسن یک هویت واحد میسازن. از بقیهٔ تغییرات میشه به پل صریح بین هویت SCIM و هویت تأییدشدهٔ SSO، چرخش گواهی SAML بدون داونتایم، خاموشبودن پیشفرض ورود شروعشده از سمت IdP، 22 زبان توی @better-auth/i18n و ساخت ادمین با npx auth create-admin اشاره کرد.
نکات کلیدی:
- هر API محافظتشده دسترسی، طول عمر توکن و سیاست امضای مستقل داره و توکن یک API روی API دیگه قبول نمیشه (RFC 8707).
- DPoP توکن رو به کلاینت درخواستکننده گره میزنه (RFC 9449) و سرورهای MCP هم میتونن ازش استفاده کنن.
- پلاگین قدیمی oidcProvider حذف شده و باید به @better-auth/oauth-provider مهاجرت کنی.
- SCIM راهاندازی و مدل دیتابیس قبلی رو کنار گذاشته: باید دوباره همهٔ کاربرها و گروهها از دایرکتوری فرستاده بشن.
- گرنت RFC 8628 دسترسی OAuth رو به دستگاههای کمورودی مثل CLI، تلویزیون هوشمند و کنسول بازی میده.




