接口介绍
设置Bucket的防盗链(Referer)访问白名单,支持设置是否允许Referer字段为空以及是否允许截断QueryString的请求访问媒体存储。
接口约束
无
请求URI
POST /v1/resourceObject/bucket/Referer
路径参数
无
Query参数
无
请求参数
请求头header参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
content-type | 是 | String | 请求header参数,默认为application/x-www-form-urlencoded。 | application/x-www-form-urlencoded |
请求体body参数
字段 | 类型 | 必填 | 含义 | 示例 | 下级对象 |
---|---|---|---|---|---|
regionCode | String | 是 | 区域编码。 | 00001 | |
bucketName | String | 是 | 桶名。 | bucket1 | |
userName | String | 否 | 用户名。 | test1 | |
statement | Json | 是 | 访问控制规则。 | statement |
表 statement
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
Effect | 是 | String | 效力,描述产生的结果是允许还是拒绝,只能是"Allow"或"Deny"两种情况。效力属于必填项。 | Allow | |
Action | 是 | String | 操作,描述语句中赋予的权限,必填项。 | s3:GetObject | |
Principal | 是 | String | 委托人,描述策略赋权的实体,例如用户、用户组等。如果指定某用户如'AWS': ['arn:aws:iam:::user/bssUser0001'],或者传 *。 | 'AWS': ['arn:aws:iam:::user/bssUser0001'] | |
Resource | 是 | String | 资源,描述具体资源。资源采用六段式描述,段与段之间使用冒号分隔,目前天翼对象存储s3接口的资源描述方式前三段为固定格式,最后一段位描述存储空间和对象资源,如arn:aws:s3:::{BucketName}/{ObjectName}。资源属于必填项。 | arn:aws:s3:::eoptest/* | |
Condition | 是 | Object | 条件,描述生效的约束条件,非必填项。 | StringNotLike |
表 StringNotLike
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
StringNotLike | 是 | Array of Objects | 限制或允许的域名组。 | aws:Referer |
表 aws:Referer
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
aws:Referer | 是 | Array of Strings | 相关域名组。 | ["http://www.example.ctyun.cn"] |
响应参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
statusCode | 是 | Integer | 本次请求的结果码。 | 0 | |
error | 是 | String | 错误码,创建成功时,不返回该字段。 | ||
message | 是 | String | 错误文本信息,创建成功时,为空字符串。 | ||
returnObj | 是 | String of Object | 返回结果。 | returnObj |
表 returnObj
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
code | 是 | String | 业务返回码。 | 0 | |
data | 是 | String | 业务返回数据。 | ||
message | 是 | String | 业务消息。 |
请求示例
POST /v1/resourceObject/bucket/Referer
请求头header
application/x-www-form-urlencoded
请求体body
regionCode=0001&bucketName=eoptest&statement=[{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::eoptest/*",
"Condition": {
"StringNotLike": [{
"aws:Referer": ["http://example1.ctyun.cn*"]
}, {
"aws:Referer": ["https://example2.ctyun.cn*"]
}, {
"aws:Referer": ["https://example3.ctyun.cn*"]
}]
}
}]
返回示例
{
"statusCode": "0",
"message": "",
"returnObj": {
"code": "0",
"data": "",
"message": ""
}
}
状态码
状态码 | 描述 |
---|---|
0 | 表示业务成功 |
400 | 请求参数有误 |
403 | 用户鉴权失败,用户无操作权限 |
404 | 请求的资源不存在,输入错误的URL |
500 | 业务执行异常 |