本地系统帐户下嵌入的Firebird权限问题

发布于 2024-12-04 21:56:20 字数 232 浏览 0 评论 0原文

我正在创建一个使用嵌入式 Firebird 数据库的 NTService 应用程序。当我配置以管理员帐户运行的服务时,它工作正常。但是当我作为默认本地系统帐户运行服务时,出现以下错误。

没有对 TABLE XXXX 进行读取/选择访问的权限

这是为什么?我相信 Firebird 单个 sql 文件中没有系统表等。而且Windows xp没有类似linux的文件权限。请帮忙。

问候

J

I am creating a NTService Application which use an Embeded Firebird database. When i configure the service run as Administrator account, It works ok. But when i run service as default Local System Account, I get below error.

no permission for read/select access to TABLE XXXX

Why is that ? I belive there is no system tables or etc in Firebird single sql file. And Windows xp dont have linux like file permissions. Please help.

Regards

J

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

無心 2024-12-11 21:56:20

虽然嵌入式版本不会对用户进行身份验证(不会根据 security2.fdb 检查用户名和密码),但它仍然会检查用户的 SQL 权限。这意味着您仍然必须为访问数据库时使用的用户名和/或角色授予适当的用户权限。它可能适用于管理员帐户,因为在版本 2.1 中,管理 Windows 组的成员默认映射到 SYSDBA(因此拥有所有数据库的所有权限)。这在版本 2.5 中发生了变化,您现在必须手动配置它(请参阅 发行说明)。

While the embedded version doesn't authenticate users (doesn't check the username and password against security2.fdb) it still checks the SQL privileges of the user. This means that you still have to grant proper user rights to the username and/or role you're using when accessing the database. It probably worked for the Administrator account because in version 2.1, members of administrative Windows groups were mapped to SYSDBA by default (and thus had all rights on all databases). This changed in version 2.5, you now have to manually configure this (see release notes).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文