0

在我正在帮助开发的 Symfony 2.0 Web 应用程序中,我们使用自定义编写的服务进行用户身份验证,该服务与应用程序本身分开使用。我需要使用此服务为应用程序实施身份验证\授权。

我已经阅读了 Symfony 2 书中的“安全”一章,以及有关创建自定义用户和身份验证提供程序的食谱条目。不幸的是,我似乎不能只创建自定义用户提供程序,因为我无法使用该服务通过登录来检索用户数据。我只能提交用户的登录名/密码,看看服务是否对他进行了身份验证。

这就是为什么我想编写一个自定义身份验证提供程序的原因。问题是,在阅读了说明书条目之后,我不完全确定如果我编写一个根本不使用用户提供程序的身份验证提供程序,那么使用身份验证提供程序的框架代码将不会尝试创建 - 并制作使用 - 用户提供者(我想如果可以的话,它只会实例化并使用一些默认的?)。

有人对这个问题有任何想法吗?

4

1 回答 1

1

听起来你在正确的轨道上。您将创建自定义 Authentication Provider并创建自定义 User Provider。由于您的用户提供者似乎实际上不需要访问任何数据源,因此它将是相当空的。可能只是返回一个带有给定用户名的新用户对象。

public function loadUserByUsername($username)
{
    return new User($username);
}
于 2012-06-27T20:45:05.633 回答