问题标签 [cartalyst-sentry]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
900 浏览

php - Sentry 2 与 Laravel 4,记住身份验证

我正在使用帮助Sentry::authenticateAndRemember($credentials);程序对用户进行身份验证,但过了一会儿(几天)我就断开了连接。使用的会话驱动程序是数据库驱动程序。

我调查了这个问题并试图了解 Sentry 如何记住用户的身份验证。首先,在会话表中,有人知道有效载荷代表什么吗?我检查了创建的 cookie,但我不明白为什么,但到期日期设置为一个月后(而在源代码中,它看起来像是设置为 5 年后)。此外,我尝试在不记住用户的情况下登录用户(Sentry::authenticate($credentials, false);),并且创建了完全相同的 cookie,因此退出浏览器时不会断开连接。

有没有人有任何线索解释我所说的?

0 投票
1 回答
10238 浏览

php - 如何在 Laravel 4 中使用 Sentry 2

我的 laravel4 应用程序中有一个 Personcontroller 和一个 Festivalcontroller。这些控制器中的操作只能由管理员访问。

如果我的数据库只有 test@hotmail.com 的用户,该用户可以访问这 2 个控制器的路由。如果我的数据库没有 test@hotmail.com 的用户,但它有其他用户,则其他用户无法访问这 2 个控制器的路由。当我的数据库有一个用户 test@hotmail.com 并且有其他用户时,每个人都可以访问这两个控制器的路由。

我只希望使用电子邮件 test@hotmail.com 的用户访问这些控制器的路由。

我通过这样做安装了 Sentry2:

在 composer.json 文件中需要:

在应用 > 配置 > app.php 中:

'Cartalyst\Sentry\SentryServiceProvider',=> 到提供者数组

'Sentry' => 'Cartalyst\Sentry\Facades\Laravel\Sentry',=> 到别名数组

安装后我制作了 SentrySeeder 文件:

在我的 PersonController

LoginController 中的登录操作

在数据库中存储用户

0 投票
1 回答
1363 浏览

laravel - 如何为 Laravel Facade 指定 Partial Mockup?

首先我试过这个

但它给了我

所以后来我发现 Laravel Facades 已经实现了 Mockery,所以我直接在外观上进行了尝试。

但现在的问题是它没有找到该对象的其他函数,我需要在这里部分模型的行为,但我不知道如何告诉它。

这就是我需要的

0 投票
0 回答
179 浏览

php - Laravel 4,Sentry 2:可能的权限级别?

哨兵权限在数据库表中如下所示:

有没有办法不仅使用布尔值而且使用级别?如 0、1、2、3、4。

默认情况下,Sentry 似乎不支持此功能。不知道为什么。权限系统令我失望,没有权限级别我无法使用它。

任何解决方法的想法?为了测试,我重构了一些 Sentry 代码,因此部分权限级别现在可以正常工作,但我不想更改供应商代码。我可以扩展诸如 Cartalyst\Users\Eloquent\User 之类的类吗?

0 投票
1 回答
363 浏览

laravel-4 - 如何使用哨兵 laravel 4 设置所有者的权限

我正在为我的应用程序使用哨兵。

但是,我仍然对实现哨兵权限来声明对象的所有者感到困惑。

例如:任何作者写一篇文章。

我的问题:文章所有者如何设置权限?

0 投票
3 回答
3735 浏览

laravel-4 - Laravel 4.1 - Sentry 2 用户组访问/权限

我正在使用 Laravel 4.1 和 Sentry 2 作为授权和身份验证包来构建我的项目。
我已经设法让用户登录、注册并分配适当的用户组。
我有 3 个用户组:

  • 行政人员
  • 主持人
  • 挂号的

我想实现两件事:

  1. 管理员演示者可以访问管理面板。用户没有。
  2. 限制演示者管理面板中的视图。我希望他们只看到很少的视图(链接),例如只有Schedule

我以前从未使用过角色,这是我第一次使用 Sentry 2。这就是我想寻求帮助的原因。一些点,如何开始。我怎样才能实现两者?

0 投票
1 回答
109 浏览

laravel - Laravel Sentry 将编辑权限限制为 Creator

我正在使用 Laravel 构建一个简单的电影管理系统。

当用户在我的数据库中创建电影时,我使用以下内容

这成功地传递了用户 id 并在其中存储了 creator_id 字段

我想限制用户编辑他们没有创建的电影。 所以在编辑功能中我有

但是,这似乎不起作用。movie.edit在我的哨兵用户 db 中拥有权限的任何人仍然可以看到该视图。

0 投票
1 回答
413 浏览

php - 如何根据请求的控制器操作过滤 laravel 中的分组路由?

我的Laravel 4应用程序中有一堆分组的资源控制器,如下所示:

上面提到的两个是在Cartalysts Sentry 2包的帮助下实现的用于管理用户和组的控制器。

现在我想要一个过滤器来检查当前 Sentry 用户是否有权调用控制器操作。由于过滤器包裹在路由组周围,我不知道封闭的路由会导致什么控制器或操作。据我所知,过滤器是设置在BaseController 方法中filters.php还是设置在 BaseControllerbeforeFilter()方法中没有区别,因为问题是我不知道如何确定路由最终通向何处。

是否可以确定将在(基本)控制器beforeFilter()方法中调用的控制器操作?

0 投票
2 回答
3764 浏览

database - 如何获取属于用户 Cartalyst Sentry 2 的组

在 Laravel 4.1 中获取我的USER模型所属的哨兵组的最佳方法是什么?

我在文档中找不到任何关于此的内容。

0 投票
1 回答
643 浏览

php - Laravel 4 & Sentry 2 扩展了哨兵类

在尝试扩展 Sentry 2 中的哨兵类时遇到一些问题。这是我所做的以及我正在尝试做的事情:

创建了一个新的门面:

扩展哨兵类(所有使用命名空间都刚刚删除以在帖子中清理它)。显然还有很多事情要做,只是试图让它在这一点上工作:

在 app.php 内部,我将别名更改为:

问题:当我使用我的别名时,除了实际的 Sentry 类正在启动之外,它几乎什么都没有。如您所见,我正在尝试查看是否启用了节流。使用我的别名(总是返回 true),它不使用 config.php 文件,但如果我将它改回使用普通别名,它就可以正常工作(返回 false,因为我在配置中将其设置为 false)。

关于我做错了什么的任何提示?我找不到任何人试图扩展实际的 Sentry 类。我发现的唯一一件事是在哨兵 2 论坛上,其中一位管理员推荐某人创建一个新外观,然后扩展哨兵,但仅此而已。

我可以提供的任何其他信息只是让我知道需要什么。谢谢!