شرح صفوف ومحتوى الفقرة
تتيح مكتبة Sanctum تخصيص صلاحيات دقيقة للرمز تُعرف بالقدرات عبر الوسيط الثاني في دالة createToken على غرار نطاقات OAuth. داخل المتحكمات، يمكنك استدعاء دالة tokenCan على كائن المستخدم للتحقق مما إذا كان الرمز الحالي يمتلك صلاحية تنفيذ العملية المطلوبة.
- تحديد قدرات الرمز (Defining Token Abilities): مرر مصفوفة قدرات نصية مثل ['posts:read', 'posts:write'] عند استدعاء دالة createToken.
- الفحص بدالة tokenCan (Checking with tokenCan): استدع دالة tokenCan على المستخدم للتحقق من صلاحية الرمز الحالي داخل إجراءات المتحكم.
- وسيط القدرات (Abilities Middleware): سجل الاسمين المستعارين abilities و ability في ملف bootstrap/app.php لحماية المسارات تصريحياً.
PHP
// Issue scoped token:
$token = $user->createToken('cli', ['posts:write']);
// Verify ability inside controller:
if (! $request->user()->tokenCan('posts:write')) {
abort(403, 'Token lacks write ability.');
}