1

我支持建立在 symfony 上的网站。关于某种“管理页面”存在问题。

虽然通过阅读日志和比较最近的备份对整个事情了解不多,但我认为我能够解决这个问题(一些开发人员删除了一条路线,但没有修复一个模板)。

我没有该站点的管理员密码,但具有对服务器的 root 访问权限和对数据库的超级访问权限(在本例中为 postgres)。

您能帮我在不知道当前密码的情况下如何创建自己的帐户吗?

免责声明:我对 PHP 的 OOP 接口了解不多,因为我不是程序员,而是系统管理员。

编辑

symfony version 1.0.16
4

2 回答 2

4

尝试登录服务器并切换到 Symfony 项目的根目录。那里可能有一个“symfony”脚本/链接(详细信息取决于您的操作系统以及 Symfony 的设置方式;您可能只能运行./symfony而不是需要php symfony)。运行此命令以查看这些基础知识是否有效:

php symfony

如果可行,您应该获得一份可以执行的任务列表。如果您使用的是 sfGuardPlugin,您应该会看到一些任务,例如guard:create-user.

要获取有关任务的更多信息,请尝试以下操作:

php symfony help guard:create-user

但基本上,假设一个相当现代的 Symfony 安装和插件,尝试类似:

php symfony guard:create-user --env=prod newusername newpassword

( --env=prod 选项在生产环境中创建用户,这可能是您想要的。)

如果您想要执行仅限超级用户的任务,请尝试执行以下操作:

php symfony guard:promote newusername

这将赋予新用户超级管理员权限。

您可能还会发现一项guard:change-password任务,该任务将简单地重置给定用户的密码。

于 2011-02-23T15:34:21.987 回答
1

我最终编辑了名为:

plugins/sfGuardPlugin/lib/validator/sfGuardUserValidator.class.php

这是进行身份验证的地方。我添加了几行来绕过对已创建用户的实际密码检查。

于 2011-02-23T14:49:22.957 回答