php - 使用 API Rest 和双重 mysql 身份验证创建 Angular 应用程序

标签 php mysql angularjs json authentication

这是我的第一个 Angular 项目:

一个 Angular 规划应用程序,提供存储在 mysql 数据库中的数据并以 json 格式发送。 有一个用户系统。每个用户都会获得一个 ID 和密码,以访问存储在自己数据库中的自己的数据。 此结构无法编辑,因为原始数据是从现有软件中检索并发送到每个用户的这些数据库。

我的问题是:从应用程序的主登录页面,如何使该特定用户登录到他的数据库?

我的想法:
- 使用 ID、密码和用户的数据库连接创建一个“登录”数据库,以允许我的应用程序连接到正确的数据库
- 在服务器上创建一种“路由器”,以将用户直接正确重定向到他的数据

我有点迷失,任何提示将不胜感激!

米凯尔

最佳答案

这并不是一个真正的答案

出于安全原因,最好不要将密码存储在数据库中:如果黑客以读者身份访问数据库,他可以连接任何帐户,包括管理员...

存储连接数据的最佳方法是根据登录名和密码创建哈希,例如使用 sha1 算法。这会创建一个无法逆转的签名。

程序如下:

登录时:

  • 获取新用户提供的登录名和密码
  • 检查登录名是否已存在于数据库中
  • 连接登录名、密码和一些盐,并计算连接的 sha 签名
  • 将登录名和哈希值存储在数据库中

登录时:

  • 获取用户提供的登录名和密码
  • 连接登录名、密码和相同的盐,并计算连接的 sha 签名
  • 检查数据库中是否存在该对(登录名、哈希值)

PHP 中的哈希示例:

$login = 'toto';
$password = '123456789';
$salt = '$!*%';
$hash = sha1($salt.$login.$password);

关于php - 使用 API Rest 和双重 mysql 身份验证创建 Angular 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37566481/

相关文章:

Angularjs >1.3 $validator 导致 modelValue 未定义

php - 重新加载 <div> 是否被视为页面的重新加载? PHP

php - PHP 中的 MySQL UNION 运算符错误

php - 从MySql中的子查询中获取多行

mysql - 如何在 SQL 中表示浮点值

javascript - 类型错误 : Cannot read property 'username' of undefined from Form Submit

php - 将多个值插入数据库、php、sql

php - 费率结构的数据库/算法

mysql - MariaDB - 无法以 root 身份登录

angularjs - Angular 中的 Controller 代码组织