×ðÁú¿­Ê±¹ÙÍøµÇ¼

ThinkPHP6ÖÐÔõÑù¾ÙÐÐRBACȨÏÞÖÎÀí£¿

Ëæ×Å»¥ÁªÍøµÄÒ»Ö±Éú³¤ºÍÓ¦ÓõÄÆÕ±éÔËÓã¬Ô½À´Ô½¶àµÄÍøÕ¾ºÍÓ¦ÓóÌÐòÒªÇóʵÏÖ»á¼ûȨÏ޵ĿØÖÆ£¬ÒÔÈ·±£Ãô¸ÐÐÅÏ¢ºÍ×ÊÔ´µÄÇå¾²ÐÔ¡£¶øËæ×ÅÏîÄ¿µÄÒ»Ö±Éú³¤ºÍ¹¦Ð§µÄÒ»Ö±ÔöÌí£¬rbacȨÏÞÖÎÀíϵͳÒѾ­³ÉΪÁËÒ»ÖÖºÜÊÇÊ¢ÐкͳÉÊìµÄ½â¾ö¼Æ»®¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃǽ«ÏÈÈÝÔõÑùÔÚthinkphp6¿ò¼ÜÖÐʹÓÃrbac¾ÙÐÐȨÏÞÖÎÀí¡£

ʲôÊÇRBACȨÏÞÖÎÀí£¿

RBAC£¨Role-Based Access Control£©È¨ÏÞÖÎÀíÄ£×ÓÊÇÒ»ÖÖÒÔ½ÇɫΪÖÐÑëµÄ»á¼û¿ØÖÆÄ£×Ó¡£Ëü½«Óû§·ÖÅɵ½²î±ðµÄ½ÇÉ«ÖУ¬²¢Í¨¹ý½ÇÉ«À´¿ØÖÆÓû§¶Ô×ÊÔ´µÄ»á¼û¡£Í¨¹ýÕâÖÖ·½·¨£¬ÖÎÀíÔ±¿ÉÒÔ¸üÀû±ãµØÖÎÆÊÎö¼ûȨÏÞ£¬¶ø²»±ØÕë¶Ôÿ¸öÓû§¾ÙÐÐȨÏÞµÄÉèÖúÍÖÎÀí¡£

RBACȨÏÞÖÎÀíµÄ×é³É²¿·Ö

RBACȨÏÞÖÎÀíÄ£×ÓÖ÷ÒªÓÉÒÔÏÂËĸö×é³É²¿·Ö×é³É£º

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

1.½ÇÉ«£¨Role£©£º½ÇÉ«ÊÇÒ»×éÓû§È¨ÏÞµÄÜöÝÍ£¬¿ÉÒÔ½«Ò»Ð©ÏàËƵÄȨÏÞ¹éΪһ¸ö½ÇÉ«£¬²¢Í¨¹ý¸Ã½ÇÉ«À´¿ØÖÆÓû§¶Ô×ÊÔ´µÄ»á¼û¡£

2.Óû§£¨User£©£ºÓû§ÊÇָʹÓÃϵͳµÄÖ°Ô±£¬Ã¿¸öÓû§¶¼¿ÉÒÔÓµÓÐÒ»¸ö»ò¶à¸ö½ÇÉ«¡£

3.ȨÏÞ£¨Permission£©£ºÈ¨ÏÞÖ¸µÄÊÇÓû§»ò½ÇÉ«¶Ô×ÊÔ´µÄ²Ù×÷ÐÐΪ£¬¿ÉÒÔÊÇϵͳÄÚÖõIJÙ×÷£¬Ò²¿ÉÒÔÊÇÓû§×Ô½ç˵µÄ²Ù×÷¡£

4.×ÊÔ´£¨Resource£©£º×ÊÔ´ÊÇÖ¸ÐèÒªÊܵ½»á¼û¿ØÖƵŤ¾ß£¬ÀýÈçϵͳÖеÄij¸öÒ³Ãæ¡¢Îļþ»òÊý¾Ý¿â¼Í¼µÈ¡£

ÔÚRBACȨÏÞÖÎÀíÄ£×ÓÖУ¬Óû§Í¨¹ý½ÇÉ«À´»ñȡȨÏÞ£¬Í¨¹ýȨÏÞÀ´»á¼û×ÊÔ´£¬¶øÖÎÀíÔ±¿ÉÒÔͨ¹ý½ÇÉ«ºÍȨÏÞµÄÉèÖÃÀ´¿ØÖÆÓû§¶Ô×ÊÔ´µÄ»á¼û¡£

ÔÚThinkPHP6¿ò¼ÜÖÐʵÏÖRBACȨÏÞÖÎÀí

ÔÚThinkPHP6¿ò¼ÜÖУ¬ÎÒÃÇ¿ÉÒÔͨ¹ý´î½¨Ò»¸ö¼òÆÓµÄRBACȨÏÞÖÎÀíϵͳÀ´Ñ§Ï°ºÍʹÓÃRBACȨÏÞÖÎÀíÄ£×Ó¡£

ÒÔÏÂÊÇÔÚThinkPHP6¿ò¼ÜÖÐʵÏÖRBACȨÏÞÖÎÀíµÄ´óÖ°취£º

1.½¨ÉèÊý¾Ý¿â

½¨ÉèÊý¾Ý±í²¢ÌîÈëһЩÊý¾Ý£¬°üÀ¨½ÇÉ«¡¢Óû§¡¢È¨ÏÞºÍ×ÊÔ´µÈÐÅÏ¢¡£ÀýÈç¿ÉÒÔ½¨ÉèÒÔÏÂËĸö±í£º

½ÇÉ«±í£¨role£©£º°üÀ¨½ÇÉ«IDºÍ½ÇÉ«Ãû³ÆµÈ×ֶΡ£

Óû§±í£¨user£©£º°üÀ¨Óû§ID¡¢Óû§ÃûºÍÃÜÂëµÈ×ֶΡ£

ȨÏÞ±í£¨permission£©£º°üÀ¨È¨ÏÞIDºÍȨÏÞÃû³ÆµÈ×ֶΡ£

×ÊÔ´±í£¨resource£©£º°üÀ¨×ÊÔ´IDºÍ×ÊԴ·¾¶µÈ×ֶΡ£

2.×°ÖÃRBACȨÏÞÖÎÀí×é¼þ

ʹÓÃcomposer×°ÖÃRBACȨÏÞÖÎÀí×é¼þ£¬ÔÚÖÕ¶ËÖÐÊäÈëÒÔÏÂÏÂÁ

composer require jiaminglu/rbac

3.¾ÙÐÐÉèÖÃ

¾ÙÐÐÏà¹ØȨÏÞ¿ØÖÆ¡¢Â·ÓɺÍÖÐÑë¼þµÄÉèÖá£

ÔÚconfig/auth.phpÎļþÖоÙÐÐÈÏÖ¤µÄÉèÖ᣶Ô×ÊÔ´µÄ¿ØÖÆ¿ÉÒÔʹÓÃÖÐÑë¼þµÄ·½·¨£¬ÔÚconfig/middleware.phpÎļþÖоÙÐÐÏà¹ØÉèÖá£

4.±àдÏìÓ¦µÄÄ£×Ó¡¢¿ØÖÆÆ÷ºÍÊÓͼ

±àд½ÇÉ«¡¢Óû§¡¢È¨ÏÞºÍ×ÊÔ´µÈÄ£×Ó£¬ÔÚ¿ØÖÆÆ÷Öд¦ÀíȨÏÞ¿ØÖƵÄÏà¹ØÂß¼­£¬ÔÚÊÓͼÖÐÕ¹Êլû§²Ù×÷µÄЧ¹ûºÍ״̬¡£

ÆäÖУ¬ÎªÁËÀû±ãÑÝʾ£¬ÎÒÃÇ¿ÉÒÔʹÓÃÒÔÏ¿ØÖÆÆ÷£º

RoleController£¨½ÇÉ«ÖÎÀí£©£º°üÀ¨Éó²é½ÇÉ«¡¢Ìí¼Ó½ÇÉ«¡¢Ð޸ĽÇÉ«ºÍɾ³ý½ÇÉ«µÈ²Ù×÷¡£ÔÚÐ޸ĽÇɫʱ¿ÉÒÔÉèÖÃÆäÓµÓеÄÓû§ºÍȨÏÞ¡£

UserController£¨Óû§ÖÎÀí£©£º°üÀ¨Éó²éÓû§¡¢Ìí¼ÓÓû§¡¢ÐÞ¸ÄÓû§ºÍɾ³ýÓû§µÈ²Ù×÷¡£ÔÚÐÞ¸ÄÓû§Ê±¿ÉÒÔΪÆä·ÖÅɽÇÉ«¡£

PermissionController£¨È¨ÏÞÖÎÀí£©£º°üÀ¨Éó²éȨÏÞ¡¢Ìí¼ÓȨÏÞ¡¢ÐÞ¸ÄȨÏÞºÍɾ³ýȨÏ޵ȲÙ×÷¡£

ResourceController£¨×ÊÔ´ÖÎÀí£©£º°üÀ¨Éó²é×ÊÔ´¡¢Ìí¼Ó×ÊÔ´¡¢ÐÞ¸Ä×ÊÔ´ºÍɾ³ý×ÊÔ´µÈ²Ù×÷¡£

ÒÔÉÏÊÇÔÚThinkPHP6¿ò¼ÜÖоÙÐÐRBACȨÏÞÖÎÀíµÄÖ÷Òª°ì·¨¡£ÔÚÏÖʵ¿ª·¢Àú³ÌÖУ¬ÎÒÃÇÐèҪƾ֤ÏÖʵÐèÇóÀ´¾ÙÐÐ×é¼þµÄÉèÖúʹúÂëµÄ±àд£¬ÒÔʵÏÖÔ½·¢ÍêÕûºÍÇå¾²µÄȨÏÞÖÎÀíϵͳ¡£

×ܽá

RBACȨÏÞÖÎÀíÄ£×ÓÊÇÒ»ÖÖºÜÊÇÊ¢ÐкͳÉÊìµÄȨÏÞÖÎÃ÷È·¾ö¼Æ»®£¬¿ÉÒÔ×ÊÖúÖÎÀíÔ±¸üÀû±ãµØÖÎÆÊÎö¼ûȨÏÞ£¬ÔÚÈ·±£ÏµÍ³Çå¾²ÐÔµÄͬʱ£¬Ìá¸ßϵͳʹÓõÄЧÂʺͱã½ÝÐÔ¡£

ÔÚ±¾ÎÄÖУ¬ÎÒÃÇÏÈÈÝÁËÔÚThinkPHP6¿ò¼ÜÖÐʵÏÖRBACȨÏÞÖÎÀíµÄÖ÷Òª°ì·¨ºÍÏà¹ØÄ£×Ó¡¢¿ØÖÆÆ÷ºÍÊÓͼµÄ±àд¡£Í¨¹ý±¾ÎĵÄÏÈÈݺÍÏÖʵ²Ù×÷£¬ÐÅÍжÁÕß¿ÉÒÔ¸üÇåÎúµØÃ÷È·ºÍʹÓÃRBACȨÏÞÖÎÀíÄ£×Ó£¬´Ó¶øΪ×Ô¼ºµÄÏîÄ¿¿ª·¢ÖÐÔöÌí¸ü¶àµÄÇå¾²ÐԺ͸ßЧÐÔ¡£

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

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

Ïà¹ØÐÂÎÅ

ÁªÏµ×ðÁú¿­Ê±¹ÙÍøµÇ¼

18523999891

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

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

QR code
ÍøÕ¾µØͼ