【问题标题】:Firebird DDL for user and privileges用于用户和权限的 Firebird DDL
【发布时间】:2022-02-03 01:06:40
【问题描述】:

我有 Firebird 2.5,我需要将所有用户和权限提取为 DDL 以导出到另一个 Firebird 数据库。

例如,我需要获取用户 max 的脚本

"Create user max  FIRSTNAME 'Max' LASTNAME 'Power' Grant admin option";

我使用 IB Expert,但没有找到提取 DDL 的选项。

【问题讨论】:

  • 用户本身不在数据库中维护,他们是 Firebird 服务器安装的安全数据库的一部分。

标签: firebird firebird2.5 ibexpert


【解决方案1】:

工具 -> 授权/权限管理器 -> 工具栏 -> 保存 -> 到脚本执行者

或者,转到工具 -> 提取元数据 -> 设置,然后在此处选中“提取授权”复选框。


您还必须记住,用户本身不存在于数据库中(只有授权存在),用户存在于服务器中,而不是数据库中。

how to display and set user rights in firebird database

另请参阅 GSEC 文档:

gsec -user sysdba -password <password> -database <databasename> -display - 类似的命令应该显示在用于连接数据库的服务器上注册的所有用户。获取用户列表并将create user 命令添加到每个用户列表将是微不足道的。


还有一个小众案例,即 Firebird 可能没有任何用户,从主机操作系统借用它们。它被称为“可信认证”模式。如果 GSEC 不显示用户或显示用户太少 - 请检查相关 firebird.conf 中的身份验证设置,也许您必须从​​ Windows 中转储用户列表,而不是从 Firebird 中转储。

【讨论】:

  • 谢谢你很有启发性的回复。作为替代方案,我找到了 Firebird Maestro 工具,然后我可以提取所有 SQL 以创建用户并授予权限。
猜你喜欢
  • 1970-01-01
  • 2011-03-24
  • 2023-03-18
  • 1970-01-01
  • 2013-07-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-14
相关资源
最近更新 更多