Делаю аутентификацию через HttpBearerAuth на YII2.
Если указываю БЕЗ 'optional' - выкидывает ошибку. Your request was made with invalid credentials.
public function behaviors()
{
return [
'authenticator' => [
'class' => HttpBearerAuth::className(),
],
Если указываю С 'optional' - то все ок.
public function behaviors()
{
return [
'authenticator' => [
'class' => HttpBearerAuth::className(),
'optional' => ['*'],
],
Вопрос:
Почему не работает значение по дефолту - брать все actions?
На сколько я понял в доке написано, что, если это свойство не установлено,
то фильтр применяется ко всем действиям. Или я что то неверно понял?
/**
* @var array list of action IDs that this filter will be applied to, but auth failure will not lead to error.
* It may be used for actions, that are allowed for public, but return some additional data for authenticated users.
* Defaults to empty, meaning authentication is not optional for any action.
* Since version 2.0.10 action IDs can be specified as wildcards, e.g. `site/*`.
* @see isOptional()
* @since 2.0.7
*/
public $optional = [];