mysql - 使用 Node、Express、Knex 和 Bookshelf 控制对 MySQL 中数据的访问

标签 mysql node.js express bookshelf.js knex.js

我对数据库设计和结构非常陌生 - 我没有接受过正式培训并且纯粹是自学,所以如果这是一个平淡的问题,我提前道歉。

我正在设计一个网络应用程序,并且正在考虑 future ,因为用户必须能够彼此交互并共享部分数据。我想知道是否有一个标准约定来控制对 MySQL 中表的访问,以及我通常应该如何使用 NodeJS、ExpressJS、KnexJS 和 BookshelfJS 编写的代码来解决这个问题。

例如:一个用户将与另一个用户匹配,两个用户都可以看到位置、最喜欢的书等,但看不到姓氏、出生日期。等等

我该如何控制它?

如果有人能给我指出一些他们认为有用的资源,那就太好了。

最佳答案

您似乎已经了解了一些 MySQL 及其访问控制功能。嗯,现代应用程序不使用数据库用户级访问控制——这可能会使资源管理(如连接池)很难实现。 通常支持 Web 应用程序的 SQL 数据库只有一个或最多两个用户:一个用于一般数据访问,另一个用于管理目的。

您提到的访问控制类型必须由您的应用程序代码(您的代码)处理。有一些库可以帮助处理身份验证(例如 passport )和授权,但最终这是您的代码的责任。

所以我对您的“我如何控制这个?”问题的回答是:

With YOUR code.

这就是软件开发的全部要点。

关于mysql - 使用 Node、Express、Knex 和 Bookshelf 控制对 MySQL 中数据的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40045215/

相关文章:

node.js - Node 。根据访问的 IP 服务提供不同的自签名证书

node.js - EJS - 包含返回找不到包含文件 "header.ejs"

mongodb - everyauth,第一次登录有效,第二次失败

mysql - MySQL 中 JSON 字段的总和

mysql - 我怎样才能在 gnu make makefile 中转义反引号

php 登录脚本 - 记住我

javascript - 如何在nodeJs中将id(字符串)存储到objectId

mysql - Ruby on Rails/MySQL : how do I do a search on an array using OR?

javascript - 如何使用 webpack 模块打包器实现 react-date-range picker?

node.js - 避免使用 localhost 来解析 mocha 中的测试