问题标签 [laravel-authentication]
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.
reactjs - ReactJS 基于认证的展示组件
我有一个与 Laravel 后端应用程序混合的 ReactJS 前端应用程序。
我遇到了身份验证问题。我正在使用 Laravel auth 对用户进行身份验证,但在显示组件时遇到了一些麻烦。我有一些帖子(/posts/1 或 /posts/2 等...),当用户访问该页面时,如果他是作者,他可以修改帖子。
我将用户的 ID 作为状态存储并进行如下检查:
但这确实不安全,因为任何人都可以使用开发工具修改状态。通过修改状态,即使他不是作者,用户也可以修改帖子,因为他可以访问所有显示的管理编辑的组件。
有没有“神奇”的技巧来防止它?
laravel - 将默认 Laravel 身份验证电子邮件字段更改为 user_email
email
当我将字段从数据库更改为时,Laravel 错误user_email
Illuminate\Database\QueryException SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'where clause' (SQL: select * from
ns_users
where
有谁知道我必须在默认身份验证中更改什么才能使用user_email
字段而不是email
?
laravel - laravel 5.7中的自定义密码重置api
默认情况下,通过电子邮件发送到电子邮件的密码重置令牌与保存到数据库的密码重置令牌不同。我已经使用Hasher::make()
andhash_hmac('sha256', $token, env('APP_KEY'))
对其进行哈希处理,然后将该令牌与数据库进行比较,但无济于事。我应该怎么做才能将电子邮件令牌转换为数据库令牌或比较它们?我也试过
php - Laravel 5.8 使用自定义表和字段开发身份验证
我正在创建一个 Laravel 5.8 应用程序,并且我有一个现有应用程序,其用户在 SQL 表中注册。我能够连接到 sql,因此 .env 文件是正确的,但我需要在身份验证过程中使用自定义字段。我检查了在线指南,但从指南中使用的 5.6 或更早版本到 5.8 似乎发生了很多变化。谁能帮我弄清楚如何首先将用户名字段更改为“用户名”而不是“电子邮件”,我已经尝试覆盖 app\Controllers\Auth\LoginController.php 中的函数,但这只是一直说“这些凭据可以不符合我们的记录。” 在错误部分。我当前名为“users_custom”的表包含以下字段:
- id(唯一,int(5))
- 用户名 (varchar(100))
- 密码 (varchar(100)) 注意:这是一个较旧的 md5 编码密码。我也需要 Laravel 哈希格式的帮助,如果可能的话,不需要用户重新输入密码。
- passphrase (varchar(200)) //这是在早期版本中为 DialogFlow 制作的。这不需要由 laravel 访问/检查。
我的应用程序不适用于用户的电子邮件,因此我的用户表中不存在该字段。我protected $table='users_custom';
在用户模型中定义。
编辑:解决
不知道如何,但是当我重新开始使用默认的 Auth 控制器和 User 模型时,我只是将表名更改为protected $table = users_custom
并添加public function username() { return 'username'; }
到 LoginController 中,它现在可以工作了。
php - 在 Laravel 中使用自定义字段创建用户
我正在尝试使用 laravel 自己的身份验证功能在 laravel 中创建一个用户。我已启用它并希望将一些我自己的值添加到用户表中的字段中。
现在我得到这个错误,但不知道如何解决它。有任何想法吗?:
数组到字符串的转换(SQL:插入users
( name
, email
, password
, activation_token
, is_active
, is_expert
, is_flag
, is_subscriber
, profile_img
, updated_at
, created_at
) 值 (Henrik Tobiassen, tarzan@hotmail.com, $2y$10$.xmKCnSdC8vogY47mbwRVOVehXJIedLMJ/gpfNgluPR9QpOtgyJ1m, 4633, 0, 0, 0, 0 , 上传/profile_pics/default.jpg, 2019-03-10 21:12:29, 2019-03-10 21:12:29)
应用程序/用户.php
注册控制器
laravel - 用户登录帐户时如何更改表前缀?
我在新的 laravel 中,在我的应用程序中当用户登录他的帐户时,我想更改 env 文件中的默认数据库前缀。我为每个用户设置通配符子域。当每个用户登录时,我想根据子域更改数据库前缀。
那么如果用户登录 Laravel,是否可以全局更改 laravel 前缀?如果有任何解决方案,请建议我。谢谢是提前。
laravel - 带有 sqlsrv 的 Laravel 电子邮件验证 5.8
我实现了 Laravel 开箱即用的电子邮件验证,但目前在单击通过电子邮件发送的验证链接时出现问题。它带来了错误:数据丢失
Carbon
此错误在更新列时引发email_verified_at
,并且仅在 SQLSRV 实现上。我切换到一个测试 MySQL 数据库,这很有效,尽管我需要它与 SQLSRV 一起工作。我没有检查是否有任何其他数据库实现遇到这个问题。
php - Laravel 5.7 身份验证
我是新手,正在学习 laravel 5.7。注册已完成,但在登录期间进行身份验证时出现问题,Auth::attempt 始终返回 false
我尝试使用Hash::check('plain-text','Hashed password)
它返回 true 问题Auth::attempt
总是返回 false
用户控制器.php:
用户.php:
auth.php:
迁移:
login.blade.php:
笔记
我很肯定我得到了正确的输入
php - Git Branch结帐后未将Laravel 5.8会话写入cookie
我有一个团队正在开发 Laravel 应用程序。我们处于早期阶段,所以几乎没有编写任何代码。我的一位队友在他的分支上运行了“php artisan make:auth”命令来激活身份验证,该身份验证工作正常并继续在他们的机器上工作。
然而,一旦我在这个分支上进行了结帐,我会尝试登录并得到一个“419-page expired”错误,尽管它在我的队友机器上工作。经过一番研究,我发现没有为会话保存 cookie。相反,每次发出页面请求时,都会在 storage/frameworks/sessions 中创建一个新文件。
我的项目有以下细节:
- storage 文件夹具有正确的读写权限
- 所有 csrf 令牌都在 auth 文件中。
- Session.php 没有从默认被触及
任何有关可能导致此问题的建议将不胜感激。