我已经在我的PostgreSQL.conf中启用了日志记录,目前我的配置如下
log_directory = ''
log_filename = ''
log_min_messages = info
log_min_error_statement = error
log_min_duration_statement = -1
log_checkpoints = on
log_connections = on
log_disconnections = on
log_duration = on
log_line_prefix = '%t [%p-%l] %q%u@%d '
log_statement = 'all'
当前正在生成日志,但也正在记录敏感数据。 如何阻止这种情况发生?
数据库服务器日志被认为是安全的。默认情况下,只有数据库管理员和超级用户可以读取它。
如果您试图对数据库管理员保留数据库的内容,那将是困难的(我会说不可能(。
尝试从 DBA 隐藏数据通常是一个失败的原因,除非您在将数据发送到数据库之前对其进行加密。 并且没有其他人(或至少没有不受信任的人(有权访问数据库日志文件。
但是,您可以通过设置log_error_verbosity = terse
来减少记录参数的"表面积"。 仅当以扩展语句或预准备语句发送数据,而不是硬编码到查询文本中时,这才有效。 这可能很难保证,因为无论您使用什么连接库,都可能绕过您的努力。