通过LoginRoles Vs表在Web应用程序上进行Postgres用户身份验证

czi*_*tas 5 sql security authentication postgresql login

我有一个postgres数据库和一个网络应用程序.

Web应用程序允许用户存在并且他们在webapp上做一些事情.

我是postgres的新手,但我们以前在SQL Server中做的是ActiveDirectory - CreateLogins - CreateRoles等.

现在在这个数据库中是否可以为每个用户创建一个登录?或者是用户(用户名密码)的表更好?还是更糟?

我在考虑在数据库中有一个登录用户,该用户只能执行特定的过程并查看视图,并且只需通过该表对用户进行身份验证.

哪个更好的解决方案?

小智 2

使用具有特定权限的一个或多个角色来访问登录表以及应用程序的其余表。您显然不希望该角色成为数据库/表所有者,以减轻攻击造成的损害。

请务必使用pgcrypto 模块对用户密码进行加盐和哈希处理。