尊龙凯时人生就是搏

ThinkPHP6ÖÐÔõÑùʹÓÃAuthÈÏ֤ȨÏÞ²Ù×÷ £¿

Ëæ×Å»¥ÁªÍøÓ¦ÓõÄÉú³¤ £¬È¨ÏÞÖÎÀíÒѾ­³ÉΪÁËÓ¦Óÿª·¢Öв»¿É»òȱµÄÒ»²¿·Ö¡£ÔÚ¿ª·¢Àú³ÌÖÐ £¬ÎÒÃÇÐèÒª¶Ô²î±ðµÄÓû§·ÖÅɲî±ðµÄȨÏÞ £¬ÒÔµÖ´ïÊý¾ÝÇå¾²ºÍ²Ù×÷ȨÏÞ¿ØÖƵÄÄ¿µÄ¡£¶øthinkphp6¿ò¼ÜÖеÄauthÈÏ֤ȨÏÞ²Ù×÷ £¬ÎªÎÒÃÇÌṩÁËÒ»ÖÖ¼òÆÓÒ×ÓõĽâ¾ö¼Æ»®¡£

ʲôÊÇAuthÈÏ֤ȨÏÞ²Ù×÷ £¿

AuthÊÇThinkPHP6¿ò¼ÜÖеÄÒ»¿îȨÏÞÖÎÀí²å¼þ £¬Ëüͨ¹ý¶Ô½ÇÉ«¡¢Óû§¡¢È¨ÏÞ¡¢¹æÔòµÈ¾ÙÐнç˵ÓëÖÎÀí £¬ÊµÏÖÁËÒ»Ì׸ßЧ¿É¿ØµÄȨÏÞÖÎÀí»úÖÆ¡£ËüµÄÓŵãÔÚÓÚ²Ù×÷¼òÆÓ¡¢Ë³Ó¦ÐÔÇ¿¡¢¿É¿ØÐԸߡ¢¿ÉÀ©Õ¹ÐԺõÈÌصã £¬ÔÚÆóÒµ¼¶Ó¦ÓÃÖÐÓ¦ÓÃÆձ顣

ÔÚÕâÀïÎÒÃǽâ˵һÏÂThinkPHP6ÖÐÔõÑùʹÓÃAuthʵÏÖȨÏÞÖÎÀí¡£

ÈÏ֤ȨÏÞ»úÖÆ

Á¬Ã¦Ñ§Ï°¡°PHPÃâ·ÑѧϰÌõ¼Ç£¨ÉîÈ룩¡±£»

ÔÚʹÓÃAuthÇ° £¬ÎÒÃÇÐèÒªÏàʶһÏÂËüµÄÈÏ֤ȨÏÞ»úÖÆ¡£ËüµÄ½ÇÉ«¡¢Óû§¡¢È¨ÏÞ¡¢¹æÔòµÈ¿´·¨µÄ½ç˵ÈçÏ£º

½ÇÉ«£¨Role£©£ºÊÇָΪһ¸ö»ò¶à¸öÓû§·ÖÅÉȨÏÞµÄÒ»ÖÖÔÊÐíµ¥Î»¡£

Óû§£¨User£©£ºÏµÍ³ÖеÄÒ»¸ö¸öÌå £¬¿ÉÒÔÊÇÒ»¸öÕæÊÊÓû§ £¬Ò²¿ÉÒÔÊÇÒ»¸öϵͳÕË»§¡£

ȨÏÞ£¨Permission£©£ºÖ¸ÎªÓû§£¨»ò½ÇÉ«£©ÊÚȨµÄ²Ù×÷ÐÐΪ £¬ÀàËÆÓÚÊý¾Ý¿âÖеÄȨÏÞÉèÖá£

¹æÔò£¨Rule£©£ºÖ¸ÎªÈ¨ÏÞÉèÖÃһЩÏÞÖÆÌõ¼þ £¬ÀýÈ磺ʱ¼ä¶ÎÏÞÖÆ¡¢ÏÞÖÆIPµÈ¡£

ÏêϸÀ´Ëµ £¬ÎÒÃÇ¿ÉÒÔ½«Ò»Ð©³£¼ûµÄȨÏÞ½ç˵ÈçÏ£º

²Ëµ¥È¨ÏÞ£ºÖ¸¶ÔÓ¦ÓõÄij¸ö²Ëµ¥¾ÙÐлá¼û¿ØÖÆ £¬¿ÉÒÔÈòî±ðµÄÓû§¿´µ½²î±ðµÄ²Ëµ¥Ïî¡£

²Ù×÷ȨÏÞ£ºÖ¸¶ÔÓ¦ÓõÄij¸ö²Ù×÷ÐÐΪ¾ÙÐлá¼û¿ØÖÆ £¬¿ÉÒÔÈòî±ðµÄÓû§ÓµÓвî±ðµÄ²Ù×÷ȨÏÞ¡£

Êý¾ÝȨÏÞ£ºÖ¸¶ÔÓ¦ÓÃÖÐij¸öÊý¾Ý»á¼û¾ÙÐпØÖÆ £¬¿ÉÒÔÏÞÖÆÓû§Ö»ÄÜ¿´µ½»òÐÞ¸Ä×Ô¼ºËù¹ØÁªµÄÊý¾Ý¡£

×Ö¶ÎȨÏÞ£ºÖ¸¶ÔÓ¦ÓÃÖÐij¸ö×ֶξÙÐлá¼û¿ØÖÆ £¬¿ÉÒÔÏÞÖÆÓû§Ö»ÄÜ¿´µ½»òÐÞ¸Ä×Ô¼ºËù¹ØÁªµÄ×ֶΡ£

ÈÏ֤ȨÏÞ²Ù×÷ʵÏÖ

ÓÐÁËÈÏ֤ȨÏÞ»úÖƵĻù±¾¿´·¨ £¬ÎÒÃǾͿÉÒÔ×îÏÈThinkPHP6ÖеÄAuthÈÏ֤ȨÏÞ²Ù×÷ÁË¡£

×°ÖÃAuth²å¼þ

Ê×ÏÈÎÒÃÇÐèҪȷ±£ÔÚÓ¦ÓÃÖÐÒѾ­×°ÖÃAuth²å¼þ £¬¿ÉÒÔͨ¹ýÒÔÏÂÏÂÁî×°Öãº

composer require topthink/think-auth

µÇ¼ºó¸´ÖÆ

ÒýÈëAuthÖÐÐļþ

ÔÚÓ¦ÓÃÖÐʹÓÃAuthÐèҪʹÓÃÖÐÐļþ £¬ÔÚconfig/middleware.phpÖоÙÐÐÉèÖãº

return [
    //È«¾ÖÖÐÐļþÁбí
    'global' => [
            hinkmiddlewareSessionInit::class,
            hinkmiddlewareLoadLangPack::class,
            hinkmiddlewareCheckRequestCache::class,
            hinkmiddlewareSendFile::class,
    ],
    //ÖÐÐļþÓÖÃû
    'alias' => [
        'auth' =>     hinkmiddlewareAuth::class,
    ],
];

µÇ¼ºó¸´ÖÆ

½ç˵ȨÏÞ¹æÔò

ÔÚÓ¦Óóõʼ»¯Ê± £¬ÎÒÃÇÐèÒª½ç˵һЩȨÏÞ¹æÔò £¬ÕâЩ¹æÔò½«±»ÓÃÓÚȨÏÞÈÏÖ¤ £¬ÀýÈ磺

use thinkacadeAuth;

//½ç˵¹æÔò
Auth::rule('admin.user/index', 'checkAdmin');
Auth::rule('admin.user/add', 'checkAdmin');
Auth::rule('admin.user/edit', 'checkAdmin');
Auth::rule('admin.user/del', 'checkAdmin');

µÇ¼ºó¸´ÖÆ

ÔÚÉÏÃæµÄ´úÂëÖÐ £¬ÎÒÃǽç˵ÁË»ù±¾µÄÓû§ÖÎÀíȨÏÞ¹æÔò £¬ÈôÊÇûÓÐÕâЩȨÏÞÔòÎÞ·¨»á¼û¶ÔÓ¦µÄ¿ØÖÆÆ÷²Ù×÷¡£

½ÇÉ«ºÍÓû§ÊÚȨ

ÎÒÃÇÐèÒªÔÚÓ¦ÓÃÖÐΪ½ÇÉ«ºÍÓû§¾ÙÐÐÊÚȨ £¬¿ÉÒÔÔÚÓ¦Óóõʼ»¯Ê±¾ÙÐÐÊÚȨ£º

//½ç˵½ÇÉ«
Auth::group('admin', function () {
    //ÉèÖýÇɫȨÏÞ
    Auth::setRule([
        'admin.user/index',
        'admin.user/add',
        'admin.user/edit',
        'admin.user/del',
    ]);
});

//½ç˵Óû§²¢ÊÚȨ
Auth::user('admin', function () {
    Auth::addToGroup('admin')//Ìí¼Ó½ÇÉ«
        ->addPermission(['admin.user/add'])//Ìí¼ÓȨÏÞ
        ->removePermission(['admin.user/del']);//ÒƳýȨÏÞ
});

µÇ¼ºó¸´ÖÆ

ÔÚÉÏÃæµÄ´úÂëÖÐ £¬ÎÒÃǽç˵һ¸öÃûΪadminµÄ½ÇÉ« £¬²¢ÉèÖöÔÓ¦µÄȨÏÞ¹æÔò¡£È»ºóÎÒÃÇÓÖ½ç˵һ¸öÃûΪadminµÄÓû§ £¬¸ÃÓû§ÓµÓÐÁËadmin½ÇÉ« £¬²¢¶Ôadmin.user/addȨÏÞ¾ÙÐÐÁËÊÚȨ £¬¶Ôadmin.user/delȨÏÞ¾ÙÐÐÁËÒƳý¡£

¾ÙÐÐÈÏÖ¤

ÔÚÎÒÃǾÙÐÐȨÏÞÈÏ֤ǰ £¬¿ÉÒÔÔÚ¿ØÖÆÆ÷ÖÐÏȾÙÐнÇÉ«¡¢Óû§¡¢È¨Ï޵ȵÄÅжϣº

use thinkacadeAuth;

class User extends Controller
{
    //¾ÙÐÐÈÏÖ¤
    public function index()
    {
        //ÑéÖ¤Óû§ÊÇ·ñµÇ¼£¬Ã»ÓеǼÔòÌøתµ½µÇ¼ҳÃæ
        if (!Auth::check()) {
            return redirect('admin/auth/login');
        }

        //ÑéÖ¤ÊÇ·ñΪ³¬µÈÖÎÀíÔ±£¬ÊÇÔòÖ±½Ó·ÅÐÐ
        if (Auth::isSuperAdmin()) {
            return $this->view->assign('username', Auth::getUser()['username'])->fetch();
        }

        //ÑéÖ¤ÊÇ·ñΪÖÎÀíÔ±½ÇÉ«£¬ÊÇÔòÑé֤ȨÏÞ£¬²»È»Ìøתµ½ÆäËûÒ³Ãæ
        if (Auth::group('admin')->check()) {
            if (Auth::check('admin.user/index')) {
                return $this->view->assign('username', Auth::getUser()['username'])->fetch();
            } else {
                return redirect('admin/index/model_error');
            }
        } else {
            return redirect('admin/index/role_error');
        }
    }
}

µÇ¼ºó¸´ÖÆ

ÔÚÉÏÃæµÄ´úÂëÖÐ £¬ÎÒÃǾÙÐÐÁËÓû§µÇ¼ÑéÖ¤¡¢³¬µÈÖÎÀíÔ±ÑéÖ¤¡¢ÒÔ¼°½ÇÉ«ºÍȨÏÞÑéÖ¤µÈ²Ù×÷ £¬×îÖÕ·µ»Ø¶ÔÓ¦µÄÒ³Ãæ»ò¾ÙÐÐÌøת¡£

×ܽá

ͨ¹ýÒÔÉϵIJÙ×÷ £¬ÎÒÃÇ¿ÉÒÔʹÓÃThinkPHP6¿ò¼ÜÖеÄAuthÈÏ֤ȨÏÞ²Ù×÷ʵÏÖ¼òÆÓ¡¢¸ßЧ¡¢¿É¿ØµÄÓ¦ÓóÌÐòȨÏÞÖÎÀí £¬°ü¹ÜÊý¾ÝÇå¾²ºÍ²Ù×÷ȨÏÞ¿ØÖÆ¡£ÔÚʹÓÃÀú³ÌÖÐ £¬ÎªÁË°ü¹ÜÓ¦ÓóÌÐòµÄÇå¾²ÐÔ £¬ÎÒÃÇÐèÒª×ÐϸÉèÖÃÖÖÖÖȨÏÞ¹æÔò £¬ÏÞÖƶÔÓ¦µÄÓû§ºÍ½ÇɫȨÏÞ £¬Ìá¸ßÓ¦ÓóÌÐòµÄ¿ÉÀ©Õ¹ÐԺͿɿØÐÔ¡£

ÒÔÉϾÍÊÇThinkPHP6ÖÐÔõÑùʹÓÃAuthÈÏ֤ȨÏÞ²Ù×÷ £¿µÄÏêϸÄÚÈÝ £¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡

ÃâÔð˵Ã÷£ºÒÔÉÏչʾÄÚÈÝȪԴÓÚÏàÖúýÌå¡¢ÆóÒµ»ú¹¹¡¢ÍøÓÑÌṩ»òÍøÂçÍøÂçÕûÀí £¬°æȨÕùÒéÓë±¾Õ¾ÎÞ¹Ø £¬ÎÄÕÂÉæ¼°¿´·¨Óë¿´·¨²»´ú±í尊龙凯时人生就是搏ÂËÓÍ»úÍø¹Ù·½Ì¬¶È £¬Çë¶ÁÕß½ö×ö²Î¿¼¡£±¾ÎĽӴýתÔØ £¬×ªÔØÇë˵Ã÷À´ÓÉ¡£ÈôÄúÒÔΪ±¾ÎÄÇÖÕ¼ÁËÄúµÄ°æȨÐÅÏ¢ £¬»òÄú·¢Ã÷¸ÃÄÚÈÝÓÐÈκÎÉæ¼°ÓÐÎ¥¹«µÂ¡¢Ã°·¸Ö´·¨µÈÎ¥·¨ÐÅÏ¢ £¬ÇëÄúÁ¬Ã¦ÁªÏµ尊龙凯时人生就是搏ʵʱÐÞÕý»òɾ³ý¡£

Ïà¹ØÐÂÎÅ

ÁªÏµ尊龙凯时人生就是搏

18523999891

¿É΢ÐÅÔÚÏß×Éѯ

ÊÂÇéʱ¼ä£ºÖÜÒ»ÖÁÖÜÎå £¬9:30-18:30 £¬½ÚãåÈÕÐÝÏ¢

QR code
sitemap¡¢ÍøÕ¾µØͼ