我在一个环境中工作,由于审计要求的最新发展,有必要在用户访问数据时记录所有Jupyter Notebook输入,即创建审计跟踪。最低要求是记录用户读取,写入或显示数据的所有实例。目前,审计跟踪对于数据库来说是可靠的,但是在那里停止,因为每个用户都可以在本地访问数据库并读取,写入或操作笔记本中的数据。
Python的标准日志记录工具似乎适合于进行日志记录而不是审计。 IPython确实包含一个记录工具,用于记录所有用户输入(例如,通过魔术%logstart),但用户可以直接控制日志记录并可以将其转义(%logstop)。
我已经探索过的一个选项是使用JupyterHub,在启动时使用IPython脚本可以确保启动日志记录。但是,用户可能仍然可以随时停止记录。
有没有办法在访问数据时阻止这种情况或以其他方式记录所有Jupyter笔记本输入?