
# 新增或更新存储目录访问权限自定义策略 - CreateOrUpdateStoragePolicyStatement
#### 功能介绍
新增或更新存储目录访问权限自定义策略(已存在自定义策略时会对已有策略更新)。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/WorkspaceApp/doc?api=CreateOrUpdateStoragePolicyStatement)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-workspace/workspace_09_0128.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                            | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | workspace:storagePolicy:create | Write | storage \*  | -   | -  | -      |
     
  
 
#### URI
PUT /v1/{project_id}/storages-policy/actions/create-statements
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述    |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|:---|
| X-Auth-Token | 否    | String | 用户Token。 通过调用IAM服务获取用户Token接口获取（响应消息头中X-Subject-Token的值）。 |
   
表3请求Body参数 
| 参数           | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| actions      | 否    | Array of strings | 客户端访问存储可操作的权限合集 允许为空，为空时配置了该策略的用户，通过云办公客户端接入后仅可查看文件列表，不可上传下载。 - *PutObject* - 上传、修改、重命名、移动。   - *DeleteObject* - 删除。   - *GetObject* - 下载。    注：PutObject和DeleteObject必须同时设置,不支持仅设置其中一个。 |
| roam_actions | 是    | Array of strings | 云端访问存储可操作的权限合集，不允许为空。 - *PutObject* - 上传、修改、重命名、移动。   - *DeleteObject* - 删除。   - *GetObject* - 下载 。    注：PutObject和DeleteObject必须同时设置,不支持仅设置其中一个。                                                                                                |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数                  | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| policy_statement_id | String           | 支持的访问策略，内置如下四种策略: - *DEFAULT_1* ：*客户端访问存储* - 上传、下载; *云端访问存储* - 读写。 - action: PutObject、DeleteObject、GetObject   - roam_action: PutObject、DeleteObject、GetObject     - *DEFAULT_2* ：*客户端访问存储* - 下载; *云端访问存储* - 读写。 - action: GetObject   - roam_action: PutObject、DeleteObject、GetObject     - *DEFAULT_3* ：*客户端访问存储* - 上传; *云端访问存储* - 读写。 - action: PutObject、DeleteObject   - roam_action: PutObject、DeleteObject、GetObject     - *DEFAULT_4* ：*客户端访问存储* - 仅可查看列表,不允许上传下载; *云端访问存储* - 只读。 - action:   - roam_action: GetObject      |
| actions             | Array of strings | 客户端访问存储可操作的权限合集。 - *PutObject* - 上传、修改、重命名、移动。   - *GetObject* - 下载。   - *DeleteObject* - 删除。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| roam_actions        | Array of strings | 云端访问存储可操作的权限合集。 - *PutObject* - 上传、修改、重命名、移动。   - *GetObject* - 下载。   - *DeleteObject* - 删除。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   
**状态码：400**
表5响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
**状态码：401**
表6响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
**状态码：403**
表7响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
**状态码：404**
表8响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
**状态码：405**
表9响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
**状态码：500**
表10响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
**状态码：503**
表11响应Body参数 
| 参数         | 参数类型   | 描述         |
|:---|:---|:---|
| error_code | String | 错误码，失败时返回。 |
| error_msg  | String | 错误描述。      |
   
#### 请求示例
```
POST /v1/a4da8115c9d8464ead3a38309130523f/storages-policy/actions/create-statements
{
  "actions" : [ "GetObject" ],
  "roam_actions" : [ "PutObject" ]
}
```
#### 响应示例
**状态码：200**
成功响应。
```
{
  "policy_statement_id" : "DEFAULT_1",
  "actions" : [ "PutObject", "DeleteObject", "GetObject" ],
  "roam_actions" : [ "PutObject", "DeleteObject", "GetObject" ]
}
```
#### 状态码
| 状态码 | 描述                      |
|:---|:---|
| 200 | 成功响应。                   |
| 400 | 由于包含语法错误，当前请求无法被服务器理解。  |
| 401 | 鉴权失败。                   |
| 403 | 没有操作权限。                 |
| 404 | 找不到资源。                  |
| 405 | 请求中指定的方法不被允许。           |
| 500 | 服务内部错误，具体返回错误码请参见错误码说明。 |
| 503 | 服务不可用。                  |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-workspace/ErrorCode_0.html)。
