登录奏鸣曲系统用户

Posted

技术标签:

【中文标题】登录奏鸣曲系统用户【英文标题】:Log in Sonata system user 【发布时间】:2018-11-08 06:40:09 【问题描述】:

我有一个 Sonata 应用程序,我正在尝试从 csv 导入一些数据。

当尝试从通过 CLI 命令调用的服务中持久化数据时,我收到以下异常:

[Symfony\Component\Security\Core\Exception\AuthenticationCredentialsNotFoundException] 令牌存储不包含身份验证令牌。一种可能 原因可能是没有为此 URL 配置防火墙。

如何从我的程序中登录系统用户?

【问题讨论】:

【参考方案1】:

我在发布后不久发现了这个。

private function loginAsSystemUser()

    $userRepository = $this->entityManager->getRepository(User::class);
    $user = $userRepository->getUserByUsername('system');
    $token = new PreAuthenticatedToken($user, null, 'main', $user->getRoles());
    $this->tokenStorage->setToken($token);

【讨论】:

以上是关于登录奏鸣曲系统用户的主要内容,如果未能解决你的问题,请参考以下文章

Sonata Admin - 只允许显示登录用户创建的内容

在 Sonata symfony 4 中创建管理员用户

未显示受奏鸣曲管理中的角色实体块限制

用户组的奏鸣曲验证不起作用

编辑奏鸣曲用户数据

配置文件编辑时奏鸣曲用户捆绑错误