Один и тот же скрипт использует несколько клиентов, какая именно база данных используется - определяется через субдомен. Список субдоменов и их баз данных хранится в служебной базе данных.
$engine = $container->get('app\components\SearchEngineInterface');
// Эквивалентно $engine = new \app\components\SearchEngine($apiKey, $apiSecret, ['type' => 1]);
<code />
Если вам нужно передавать какой-то параметр при создании сервиса, то
<code lang="php">
$factory = $container->get('app\components\SearchEngineFactory');
$engine = $factory->getEngine(['type' => 1]);
<code />
Как это сделать на симфони - по ссылке
`security.always_authenticate_before_granting`
Выставите в true и будет работать. (в профайлере будет показывать неверные роли, но при обращении к методу isGranted - роли будут верные)