我必须在Firebird中执行一些查询,但是我需要在mon $语句或任何其他数据库登录中隐藏“查询源”。
那是因为查询有一些我无法向其他人公开的业务规则。
有什么办法吗?或者我可以使用的一些“技巧”?
答案 0 :(得分:5)
没有办法做到这一点。但是MON$STATEMENT
仅显示您自己的查询,除非您是SYSDBA
,数据库的所有者或具有RDB$ADMIN
角色的用户(然后您可以查看所有查询)。除MON$STATEMENT
之外,还有跟踪工具,允许有足够访问权限的人查看查询(在服务器上或通过服务API)。如果能够查看应用程序和数据库服务器之间的网络流量,那么对数据库访问不足的人仍然可以看到查询。
唯一的方法是不向不应该看到查询的人提供任何形式的数据库服务器访问权限。这可以通过将应用程序托管为web应用程序,或者在数据库和实际应用程序之间放置Web服务或其他形式的中间件来完成。