Страница 1 из 1
Как добавить еще один useridentity?
Добавлено: 2018.07.02, 20:44
ninzzo
В проекте есть авторизация
Код: Выделить всё
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => false,
'enableSession' => false,
],
Мне нужнаотдельная авторизация и регистрация для Driver еще.
Как это грамотно добавить ?
Что бы я мог сделать логин в одной форме и во второй.
И иметь:
Код: Выделить всё
\Yii::$app->user->identity.
и
\Yii::$app->driver->identity.
Re: Как добавить еще один useridentity?
Добавлено: 2018.07.02, 21:05
zelenin
ninzzo писал(а): ↑2018.07.02, 20:44
И иметь:
Код: Выделить всё
\Yii::$app->user->identity.
и
\Yii::$app->driver->identity.
добавить в конфиг driver в дополнение к user
Re: Как добавить еще один useridentity?
Добавлено: 2018.07.02, 21:11
ninzzo
Добавил.
Теперь как изменить авторизацию в REST API контроллере
Код: Выделить всё
public function behaviors()
{
...
unset($behaviors['authenticator']);
$behaviors['authenticator'] = [
'class' => HttpBearerAuth::className(),
];
...
Он авторизируется через User, а я хочу через Driver
Мой конфиг для api
Код: Выделить всё
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => false,
'enableSession' => false,
],
'driver' => [
'class' => 'yii\web\User',
'identityClass' => 'common\models\Driver',
'enableAutoLogin' => false,
'enableSession' => false,
],
'urlManager' => [
'enablePrettyUrl' => true,
'enableStrictParsing' => true,
'showScriptName' => false,
'rules' => [
'' => 'site/index',
'login' => 'profile/login',
'register' => 'profile/createq',
'facebook' => 'profile/facebook',
'retailer' => 'retail/retailer',
['class' => 'yii\rest\UrlRule', 'controller' => 'user', ],
],
],
нужyо что бы в retail/retailer авторизировался через User
а в driver/all (новый контроллер driver) через Driver
Re: Как добавить еще один useridentity?
Добавлено: 2018.07.02, 21:15
zelenin
ninzzo писал(а): ↑2018.07.02, 21:11
Теперь как изменить авторизацию в REST API контроллере
Код: Выделить всё
public function behaviors()
{
...
unset($behaviors['authenticator']);
$behaviors['authenticator'] = [
'class' => HttpBearerAuth::className(),
];
...
Он авторизируется через User, а я хочу через Driver
установить компонент driver в поле user. В код-то не стесняйся заглядывать.
https://github.com/yiisoft/yii2/blob/ma ... Method.php
Re: Как добавить еще один useridentity?
Добавлено: 2018.07.02, 21:43
ninzzo
Код: Выделить всё
unset($behaviors['authenticator']);
$behaviors['authenticator'] = [
'class' => HttpBearerAuth::className(),
'user'=>'driver'
];
ну точно не так)
А как?)
Re: Как добавить еще один useridentity?
Добавлено: 2018.07.02, 21:45
urichalex
'user' => Yii::$app->driver
Re: Как добавить еще один useridentity?
Добавлено: 2018.07.02, 21:50
ninzzo
Благодарю! Все работает)