我在postgres db中创建了一个用户/角色,并将默认的search_path设置为特定的模式。现在我想要实现的是使用新用户/角色连接到数据库,并且能够对该模式处理所有对数据库的查询。
CREATE ROLE ltv_dev WITH PASSWORD '<some password>';
所以我希望我能使用Npgsql从.net核心Web客户端使用连接字符串连接到数据库。
我之前的连接字符串是。
"NpgsqlConnectionStringOptions": {
"Server": "server_location",
"Port": 5432,
"Database": "db_name",
"UserId": "original_user_id",
"Password": "pwd"
}
我尝试将UserId从之前的连接字符串更改为新用户/角色和密码。
我的新连接字符串
"NpgsqlConnectionStringOptions": {
"Server": "server_location",
"Port": 5432,
"Database": "db_name",
"UserId": "ltv_dev",
"Password": "password_for_the_role"
}
但它没有用。
我是否可以使用Npgsql从.net客户端使用自定义用户/角色连接到数据库,还是有另一种方法可以解决此问题?感谢
答案 0 :(得分:2)
您创建了一个没有LOGIN特权的角色,默认情况下NOLOGIN选项在CREATE ROLE中,或者您可以使用CREATE USER:
CREATE USER ltv_dev PASSWORD '<some password>';
你可以在文档中看到它