Heim >PHP-Framework >Denken Sie an PHP >Zuweisung von Modulberechtigungen in thinkphp

Zuweisung von Modulberechtigungen in thinkphp

尚
nach vorne
2020-05-23 09:06:253201Durchsuche

Zuweisung von Modulberechtigungen in thinkphp

Verwendet die Authority-Berechtigungsklasse, die mit ThinkPHP geliefert wird! Die ThinkPHP-Version ist 3.1.3

Was ich erreichen möchte, ist die Zuweisung von Berechtigungen basierend auf dem Modulnamen. Dies kann natürlich auf den Operationsnamen erweitert werden.

Wenn ich diese Moduldateien habe:

Zuweisung von Modulberechtigungen in thinkphp

Dann sollte der Inhalt der think_auth_rule-Tabelle fast so aussehen:

Zuweisung von Modulberechtigungen in thinkphp

Zum Beispiel die UID meines angemeldeten Benutzers = 7.

Die Tabelle think_auth_group_access hat die ID = 9, die Gruppe = 6;

Die Tabelle think_auth_group hat die ID = 6, title=" Universe Administrator", Rules="4,5,8";

Dann muss ich nur noch Folgendes hinzufügen:

class CommAction extends Action{
    public function __construct(){
        parent::__construct();
        $this->assign('waitSecond',2);
        $this->checkRight();
    }


    private function checkRight(){
        import('ORG.Util.Authority');
        $auth=new Authority();
        $r = $auth->getAuth(MODULE_NAME,session('S_USER_ID'));
        if(!$r){
            $this->error('没有权限!');
        }
    }
}

zur Moduldatei CommAction.class.php und dann let other Die Moduldatei erbt diese Datei, zum Beispiel ActivityAction.class.php:

<?php
class activityAction extends CommAction{
//操作方法
}
?>

Auf diese Weise kann ich normal darauf zugreifen, wenn ich auf die Module mit den IDs 4, 5 und 8 in think_auth_rules zugreife ;

Wenn Sie auf Module mit den IDs 10, 11, 12 und 13 zugreifen, springt es zu einer Seite, die fehlschlägt und Sie auffordert, dass keine Berechtigung vorliegt~

Jetzt das Problem, auf das ich stoße Die Verwendung dieser Berechtigungsklasse lautet: think_auth_rule table. Ich muss den Inhalt manuell hinzufügen. Es wäre großartig, wenn er automatisch generiert werden könnte.

Empfohlenes Tutorial: „TP5

Das obige ist der detaillierte Inhalt vonZuweisung von Modulberechtigungen in thinkphp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:oschina.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen