mysql - 撤销对未在 mysql 活动数据库连接上应用的数据库的访问权限
问题描述
我只想问如何在活动连接上申请授权?目前我正在尝试撤销对活动连接上特定数据库的用户的访问权限,但它不起作用。例如,如果我在数据库foo上撤销 fooUser 的所有权限,如果用户已经有一些活动连接,他仍然可以在数据库上插入/更新/选择,直到他建立新连接......我认为撤销所有权限会杀死活动连接,但似乎没有。
我希望如果我撤销对已连接用户或使用特定数据库的用户的访问权限,他应该以某种方式被“弹出”,但事实并非如此。
解决方案
在 src/main/resources/application.properties 文件中列出以下行以及用于创建与数据库的新连接的数据库 URL、用户名和密码。
spring.jpa.hibernate.ddl-auto=更新
您必须从 create 或 update 开始,因为您还没有数据库结构。当您想对数据库结构进行一些更改时,请使用更新。H2 和其他嵌入式数据库的默认设置是 create-drop。对于其他数据库,例如 MySQL,默认值为 none。
一旦您的数据库处于生产状态,请将其设置为 none,撤销连接到 Spring 应用程序的 MySQL 用户的所有权限,并仅授予 MySQL 用户 SELECT、UPDATE、INSERT 和 DELETE。
推荐阅读
- ios - SwiftUI 中 ViewModel + View 之间的通信
- python - 如何使用已发布的 Web api 打包“python38.dll”
- ruby-on-rails - 头像图像未从 React 客户端传递到 Rails API
- php - 如何在移动设备的重定向页面上传递 PHP 会话值?
- rxjs - API 返回一个我需要解析的数组;每个项目一个请求
- c++ - iter++->empty() 和 ++iter->empty() 有什么区别?
- location - 我有一个只有 x,y 坐标和 x' 和 y 值的数据集通过另一种算法传给我
- php - Wordpress - 如何使用 URL 中的搜索查询参数“标签”注册自定义分类并使其工作?
- node.js - 不确定为什么在使用 express-session 时没有 cookie 被发送回我的 localhost 客户端
- node.js - 在 Node.js 应用程序中格式化 JSON 内容的最佳方式