本文介绍如何在MongoDB控制台上开通日志审计功能,进行日志的查询、在线分析和导出。日志审计功能帮助定位数据修改的操作者身份或时间点等信息,识别是否存在滥用权限、执行非合规命令等内部风险。
前提条件
已开通日志服务SLS,如何开通,请参见开通日志服务。
如果使用RAM用户开通审计日志,需要授予RAM用户以下权限:
AliyunLogFullAccess:该权限为系统策略。授权方法,请参见为RAM用户授权。
dds:CheckServiceLinkedRole:该权限为自定义策略,您需要先在访问控制控制台创建该自定义策略后再授权。通过脚本编辑模式创建自定义权限策略的方法,请参见创建自定义权限策略。授权方法,请参见为RAM用户授权。
dds:CheckServiceLinkedRole策略的脚本如下。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "dds:CheckServiceLinkedRole", "Resource": "*" } ] }
如果使用RAM用户访问审计日志,需要授予RAM用户AliyunLogFullAccess或AliyunLogReadOnlyAccess权限。授权方法,请参见为RAM用户授权。
注意事项
开通审计日志后,系统将记录写操作的审计信息,写入量或审计量可能会对云数据库MongoDB实例造成5%~15%的性能损失及一定的延时抖动。
说明如果您的业务对云数据库MongoDB实例的写入量非常大,建议仅在故障排查或安全审计时开通该功能,以免带来性能损失。
开通审计日志后,默认勾选的审计操作类型只有admin和slow。如果您需要更改审计操作类型,请参见更改审计操作类型。
设置日志保留时长的操作对当前地域下的所有云数据库MongoDB实例生效,其他操作均只对当前实例生效。
如果您已开通免费试用版审计日志,但需要更长的保留时间或用更大的存储空间来存储审计日志,您可以将其升级为正式版审计日志,升级方法请参见升级为正式版审计日志。
费用说明
正式版审计日志根据审计日志的存储用量和保存时长按量收费,不同地域的价格如下。
地域 | 单价(元/GB/小时) |
中国境内 | 0.008 |
中国香港 | 0.018 |
中国境外(除东京和首尔地域外) | |
日本(东京)、韩国(首尔) | 0.0122 |
本文备份费用单价仅供参考,实际购买时可能存在价格变动,请以实际询价和账单生成价格为准。更多信息请参见云数据库MongoDB详细价格信息。
您可以使用以下方法节省审计日志的费用。
方法 | 风险 | 参考文档 |
缩短审计日志保留天数 | 会使可追溯审计的历史时间缩短。 | |
减少审计操作类型 | 取消指定的审计操作类型后,将停止上传该审计操作类型的审计日志。 说明 审计操作类型被取消后,仅保留该审计操作类型在保留时长内的审计日志数据。 例如:您设置的审计日志保留时长为5天,审计操作类型为admin、slow和query。如果您在2022年10月10日00:00:00取消query,则之后不会保存query产生的审计日志,且2022年10月05日00:00:00~2022年10月10日00:00:00时间段内query产生的审计日志也会逐渐过期,并在过期后被自动删除。 | |
关闭审计日志 | 关闭审计日志后,将停止上传该实例的审计日志,不可再追溯审计后续的访问操作行为。 说明 关闭审计日志后,仅保留在保留时长内的审计日志数据。 例如:您设置的审计日志保留时长为5天,如果您在2022年10月10日00:00:00关闭审计日志,则不会保存之后产生的审计日志,且2022年10月05日00:00:00~2022年10月10日00:00:00的审计日志也会逐渐过期,并在过期后被自动删除。 |
操作步骤
登录MongoDB管理控制台。
根据实例类型,在左侧导航栏,单击副本集实例列表或分片集群实例列表。
在页面左上角,选择实例所在的资源组和地域。
单击目标实例ID或目标实例所在行操作列的管理。
在目标实例页面的左侧导航栏,单击 。
在欢迎使用新版审计日志页面,设置日志保留时长。
日志保留时长的取值范围为1~365天,默认30天。
日志保留时长对当前实例所在地域的所有实例生效,建议您在确定好同一地域内所有实例审计日志的保留时长后进行设置。
单击开通服务。
说明开通审计日志服务的同时,云数据库MongoDB会自动获取AliyunServiceRoleForMongoDB角色,以实现日志服务向云数据库MongoDB授权审计日志功能的目的。
在弹出的开通服务对话框中,阅读提示信息后单击确定。