我需要为两种类型的用户,客户和员工创建一个身份验证系统。我想使用两个单独的领域对它们进行身份验证(通过Catalyst::Plugin::Authentication),但是我想限制客户端只能看到客户端控制器,而工作人员可以自由查看客户端控制器和工作人员控制器。过去,每当我只需要验证一种类型的用户时,我都会使用CatalystX::SimpleLogin,因为这使得验证用户非常简单,以及记住用户必须登录时将用户重定向到哪个 URL 之类的事情访问页面等。但是,我无法找到一种方法来使用CatalystX::SimpleLogin
. 以前有没有人这样做过,或者任何人都可以想到一种方法来做到这一点?还是我最好直接使用Catalyst::Plugin::Authentication
来完成我想要的?谢谢!
问问题
89 次
1 回答
2
你想要的是通过Catalyst::Plugin::Authorization::Roles
. 这使您可以轻松区分不同的用户类型。这是Catalyst::Plugin::Authentication
文档中的一个示例:
use Catalyst qw/
...
Authorization::Roles
/;
sub edit : Local {
my ( $self, $c ) = @_;
$c->detach("unauthorized") unless $c->check_user_roles("edit");
# do something restricted here
}
于 2013-05-17T04:29:19.837 回答