91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

yii2.0權限控制 ACF權限--登錄驗證

發布時間:2020-03-04 02:18:40 來源:網絡 閱讀:431 作者:daydaydream 欄目:web開發

ACF是一種通過yii\filters\AccessControl類來實現的簡單授權

一般在控制器中我們調用如下:
打開backend\controller\SiteController.php 我們看到這樣一段代碼

public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['login', 'error'],
'allow' => true,
],
[
'actions' => ['logout', 'index'],
'allow' => true,
'roles' => ['@'],
],
],
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['post'],
],
],
];
}

幾個必須到配置:
1、配置驗證類User

'user' => [
'identityClass' => 'common\models\Usermember',
'enableAutoLogin' => true,
'identityCookie' => ['name' => '_identity-frontend', 'httpOnly' => true],
'loginUrl'=>'/public/login'
],

2、繼承IdentityInterface接口
一般來說,從數據庫查找數據,只需要繼承AR類即可,但是,我們這個是用戶登錄模型,核心是驗證,所以自然需要實現核心的驗證功能,就像LoginForm模型提到的validatePassword一樣,實際的驗證邏輯是在當前的User模型完成的。一般來說,實現IdentityInterface接口,需要實現以下方法:

public static function findIdentity($id); //①

public static function findIdentityByAccessToken($token, $type = null);   //②

public function getId();    //③

public function getAuthKey();   //④

public function validateAuthKey($authKey);    //⑤

3、登錄到login()做相關調用驗證:

public function login()
{
if ($this->validate()) {
if($this->rememberMe)
{
$this->_user->generateAuthKey();//③
}
return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 36002430 : 0);
}
return false;
}

4、對用到控制器類做配置

/**

  • {@inheritdoc}
    */
    public function behaviors()
    {
    return [
    'access' => [
    'class' => AccessControl::className(),
    'only' => ['userhome', 'signup'],
    'rules' => [
    [
    'actions' => ['','signup'],
    'allow' => true,
    'roles' => ['?'],
    ],
    [
    'actions' => ['userhome'],
    'allow' => true,
    'roles' => ['@'],
    ],
    ],
    ],
    'verbs' => [
    'class' => VerbFilter::className(),
    'actions' => [
    'logout' => ['post'],
    ],
    ],
    ];
    }
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阜宁县| 广宗县| 平罗县| 泸西县| 肇东市| 康马县| 宁强县| 韩城市| 壶关县| 靖州| 鲁山县| 呼伦贝尔市| 南雄市| 呼图壁县| 长泰县| 阿图什市| 抚顺市| 五莲县| 大关县| 米林县| 香港| 班玛县| 息烽县| 邢台市| 青田县| 澄城县| 高安市| 鸡西市| 宜黄县| 农安县| 深水埗区| 丘北县| 绥江县| 宜良县| 兴国县| 江源县| 炉霍县| 黔江区| 丽水市| 双峰县| 镇坪县|