使用OSS API恢复被冻结的文件

如果您设置了OSS违规检测1.0的文件冻结功能导致部分文件被冻结,可以通过调用OSS API恢复此类文件。本文介绍如何恢复被冻结的文件。

OSS产品计费说明

恢复被冻结的文件是通过调用OSS API实现的,关于OSS API的收费信息,请参见计费概述

步骤一:获取被冻结文件Object

在恢复误冻结文件之前,您需要先获取被冻结文件的Object。本文提供以下两种获取文件Object的方式。

方式一:通过Callback方式获取

如果您在配置扫描任务之前,配置了消息通知中的回调地址。您可以通过Callback获取检测结果,检测结果包含文件Object。示例如下:

{
    "bucket": "oss-bucket",
    "freezed": false,
    "object": "2f6aa79ac1ff.jpeg",
    "region": "cn-shenzhen",
    "scanResult":
    {
        "code": 200,
        "dataId": "64C35B4244A95E3436025A57",
        "extras":
        {},
        "msg": "OK",
        "results":
        [
            {
                "extras":
                {},
                "label": "normal",
                "rate": 99.87,
                "scene": "terrorism",
                "suggestion": "pass"
            }
        ],
        "taskId": "img6g5D5eDXH1l7NNdX6DE1Ck-2ypIsw"
    },
    "stock": false
}

方式二:通过控制台文件导出方式获取

  1. 登录内容安全控制台

  2. 在左侧导航栏,选择OSS 违规检测V1.0 > 增量扫描或者OSS 违规检测V1.0 > 存量扫描

  3. 定位需要导出数据的任务,点击操作列的扫描结果,设置搜索条件,单击导出

    说明

    增量扫描任务最多可导出5000条。存量扫描任务如果总数少于50万条则全部导出,总数超过50万条只导出违规和疑似的结果。

步骤二:恢复被冻结的文件

您需要根据配置扫描任务时设置的冻结方式来选择恢复文件的方式,具体请参见下表说明。

文件冻结方式

说明

恢复操作

修改权限

如果您之前配置扫描任务时,设置文件的冻结方式为修改权限,即将您Bucket中public-read和public-read-write权限的违规文件设置为private访问权限。因为互联网用户无法读取private权限的文件,但您可以通过文件URL将私有文件分享给您的合作伙伴访问。更多信息,请参见签名版本1

调用设置Object ACL接口恢复文件的访问权限为非私有。

移动文件

如果您之前配置扫描任务时,设置文件的冻结方式为移动文件,即将您Bucket中违规的文件移动到Bucket中的备份目录(位置:${bucket}/aligreen_freeze_backup/),并删除原路径下的文件。移动到备份目录冻结方案会在您对应Bucket下创建一个aligreen_freeze_backup名称的文件夹,对应文件会被移动到该目录。

调用拷贝文件接口恢复文件到冻结前的路径。