You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
986 B

1 year ago
package UnitTest;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class TestPgRole {
public static void main(String[] args) {
String url = "jdbc:postgresql://10.10.14.71:5432/szjz_db";
String user = "postgres";
String password = "DsideaL147258369";
try (Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement()) {
// 创建新用户
stmt.executeUpdate("CREATE USER newuser WITH PASSWORD 'password';");
// 创建角色并授予权限
stmt.executeUpdate("CREATE ROLE read_only;");
stmt.executeUpdate("GRANT USAGE, SELECT ON ALL TABLES IN SCHEMA public TO read_only;");
// 将角色授予用户
stmt.executeUpdate("GRANT read_only TO newuser;");
} catch (Exception e) {
e.printStackTrace();
}
}
}