yii 2 rbac設計

766 ワード

  • tbl_auth_itemはtypeストレージ認証項目に基づいて...role.task.operation
  •   ...            
    
          ..biz_rule..            true,      
    
           ..biz_rule..    
    
    a  
    
    b  
    
    c  
    
    
  • tbl_auth_item_child認証プロジェクトの関係...a b
  • を含む
           a  b  
    
           a  b  c  
    
    
  • tbl_auth_assignmentとユーザーidが関係を結ぶ..
  • 	        id          .bizRule..         ,     
    
    

    まずはtbl_auth_itemのbizRuleそしてtbl_auth_assignmentのbizRuleユーザーログイン後..
  • 1.getAssignmentsを使用してロール名を取得し、ユーザーidに基づいてtbl_を検索します.auth_assignment取得itemname検索tbl_auth_item.id
  • を取得
  • 2.getItemChildrenを使用して、ユーザーが使用できるモジュールをcacheに読み込み、tbl_を検索します.auth_item_childすべてのサブクラス..
  • 3.checkAccessを上書き..モジュールに基づいてtureを返すかfalse
  • を返すかを変更します.