简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

对象存储 API

提供者

本节提供用于管理对象存储,对象存储用户和对象存储组的 API 。

对象存储工作流包括以下任务:

  • 创建对象存储帐户。

  • 创建对象存储组。

  • 创建对象存储用户。

  • 为用户创建 S3 密钥。

对象存储组

使用下表中列出的方法检索,创建或修改对象存储组。

HTTP 方法 路径 Description

获取

` /v2.1/objectiam/ 组`

检索对象存储组。

获取

` /v2.1/objectiam/groups/ { id }`

按 ID 检索对象存储组。

发布

` /v2.1/objectiam/ 组`

创建对象存储身份访问管理组。

PUT

` /v2.1/objectiam/groups/ { id }`

修改由 ID 标识的对象存储组。

d删除

` /v2.1/objectiam/groups/ { id }`

删除由 ID 标识的对象存储组。

对象存储组属性

下表列出了对象存储属性。

属性 Type Description

id

string

对象存储组的唯一标识符。

名称

string

对象存储组名称。

s子租户

string

组所属子租户的名称。

ssubtenant_id

string

组所属子租户的标识符。

租户

string

组所属租户的名称。

tenant_id

string

组所属租户的标识符。

s 3_policy

S3 策略,例如:

"s3_policy": {
    "Statement": [
      {
        "Effect": "Allow",
        "Action": "s3:*",
        "Resource": "arn:aws:s3:::*"
      }
    ]
  }

检索对象存储组

使用下表中列出的方法检索所有对象存储组或部分对象存储组。指定 ssubtenant_id 将仅返回属于该子租户的对象存储组。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectiam/ 组`

检索所有对象存储组。或者,指定子租户 ID 以仅检索与子租户关联的对象存储组。

ssubtenant_id (字符串) :与身份和访问管理( IAM )用户 / 组关联的子租户 ID 。offsetlimit —请参见 "通用分页"

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "total_records": 1,
    "sort_by": "created",
    "order_by": "desc",
    "offset": 0,
    "limit": 20,
    "records": [
      {
        "id": "5eb1eff8bc5c0300011c989c",
        "name": "MyGroup",
        "tenant_id": "5e7c3af7aab46c00014ce877",
        "tenant": "MyTenant",
        "subtenant_id": "5e7c3af8aab46c00014ce878",
        "subtenant": "MySubtenant",
        "s3_policy": {
          "Statement": [
            {
              "Action": [
                "s3:*"
              ],
              "Effect": "Allow",
              "Resource": "arn:aws:s3:::*"
            }
          ]
        }
      }
    ]

按 ID 检索对象存储组

使用下表中列出的方法按 ID 检索对象存储组。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectiam/groups/ { id }`

按 ID 检索对象存储组。

id ( string ) :对象存储组的唯一标识符。

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5eb1eff8bc5c0300011c989c",
        "name": "MyGroup",
        "tenant_id": "5e7c3af7aab46c00014ce877",
        "tenant": "MyTenant",
        "subtenant_id": "5e7c3af8aab46c00014ce878",
        "subtenant": "MySubtenant",
        "s3_policy": {
          "Statement": [
            {
              "Action": [
                "s3:*"
              ],
              "Effect": "Allow",
              "Resource": "arn:aws:s3:::*"
            }
          ]
        }
      }
    ]
  }

创建对象存储组

使用以下列出的方法创建对象存储组。

HTTP 方法 路径 Description Parameters

发布

` /v2.1/objectiam/groups/`

创建新的对象存储组服务以托管对象存储用户。

所需请求正文属性: namessubtenant_ids3Policy

  • 请求正文示例: *

{
  "name": "MyNewGroup",
  "subtenant_id": "5e7c3af8aab46c00014ce878",
  "s3_policy": {
    "Statement": [
      {
        "Effect": "Allow",
        "Action": "s3:*",
        "Resource": "arn:aws:s3:::*"
      }
    ]
  }
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed5fa312c356a0001a73841",
        "action": "create",
        "job_summary": "Create request is successfully submitted",
        "created": "2020-06-02T07:05:21.130260774Z",
        "updated": "2020-06-02T07:05:21.130260774Z",
        "object_id": "5ed5fa312c356a0001a73840",
        "object_type": "sg_groups",
        "object_name": "MyNewGroup",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}

修改对象存储组

使用下表中列出的方法修改对象存储组。

HTTP 方法 路径 Description Parameters

PUT

` /v2.1/objectiam/groups/ { id }`

修改对象存储组。

id ( string ) :对象存储组的唯一标识符。

所需请求正文属性: namessubtenant_ids3Policy

  • 请求正文示例: *

{
  "s3_policy": {
    "Statement": [
        {
        "Action": [
            "s3:ListAllMyBuckets",
            "s3:ListBucket",
            "s3:ListBucketVersions",
            "s3:GetObject",
            "s3:GetObjectTagging",
            "s3:GetObjectVersion",
            "s3:GetObjectVersionTagging"
        ],
        "Effect": "Allow",
        "Resource": "arn:aws:s3:::*"
        }
    ]
  }
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed5fe822c356a0001a73859",
        "action": "update",
        "job_summary": "Update request is successfully submitted",
        "created": "2020-06-02T07:23:46.43550235Z",
        "updated": "2020-06-02T07:23:46.43550235Z",
        "object_id": "5ed5fa312c356a0001a73840",
        "object_type": "sg_groups",
        "object_name": "MyNewGroup",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}

按 ID 删除对象存储组

使用下表中列出的方法按 ID 删除对象存储组。

HTTP 方法 路径 Description Parameters

d删除

` /v2.1/objectiam/groups/ { id }`

按 ID 删除对象存储组。

id ( string ) :对象存储组的唯一标识符。

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5eb1eff8bc5c0300011c989c",
        "name": "MyGroup",
        "tenant_id": "5e7c3af7aab46c00014ce877",
        "tenant": "MyTenant",
        "subtenant_id": "5e7c3af8aab46c00014ce878",
        "subtenant": "MySubtenant",
        "s3_policy": {
          "Statement": [
            {
              "Action": [
                "s3:*"
              ],
              "Effect": "Allow",
              "Resource": "arn:aws:s3:::*"
            }
          ]
        }
      }
    ]
  }

对象存储用户

使用下表中列出的方法执行以下任务:

  • 检索,创建或修改对象存储用户。

  • 创建 S3 密钥,检索用户的 S3 密钥或按密钥 ID 检索密钥。

HTTP 方法 路径 Description

获取

` /v2.1/objectiam/ 用户`

检索对象存储用户。

获取

` /v2.1/objectiam/users/ { id }`

按 ID 检索对象存储用户。

发布

` /v2.1/objectiam/ 用户`

创建对象存储用户。

PUT

` /v2.1/objectiam/users/ { id }`

修改由 ID 标识的对象存储用户。

d删除

` /v2.1/objectiam/users/ { id }`

按 ID 删除对象存储用户。

获取

` /v2.1/objectiam/users/ { user_id } /s3keys`

获取映射到用户的所有 S3 密钥。

发布

` /v2.1/objectiam/users/ { user_id } /s3keys`

创建 S3 密钥。

获取

` /v2.1/objectiam/users/ { user_id } /s3keys/{ key_id }`

按密钥 ID 获取 S3 密钥。

d删除

` /v2.1/objectiam/users/ { user_id } /s3keys/{ key_id }`

按密钥 ID 删除 S3 密钥。

对象存储用户属性

下表列出了对象存储用户属性。

属性 Type Description

id

string

对象存储用户的唯一标识符。

display_name

string

用户的显示名称。

s子租户

string

用户所属子租户的名称。

ssubtenant_id

string

用户所属子租户的标识符。

租户

string

用户所属租户的名称。

tenant_id

string

用户所属租户的标识符。

objectiam_user_urn

string

URN 。

sg_group_membership

string

NetApp StorageGRID 组成员资格。例如: "SG_group_membership : " 5d2fb0fb4f47df00015274e3" ]

检索对象存储用户

使用下表中列出的方法检索所有对象存储用户或部分对象存储用户。指定 ssubtenant_id 将仅返回属于该子租户的对象存储组。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectiam/ 用户`

检索所有对象存储用户。

ssubtenant_id (字符串) :与 IAM 用户 / 组关联的子租户 ID 。offsetlimit —请参见 "通用分页"

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "total_records": 1,
    "sort_by": "created",
    "order_by": "desc",
    "offset": 0,
    "limit": 20,
    "records": [
      {
        "id": "5eb2212d1cbe3b000134762e",
        "display_name": "MyUser",
        "subtenant": "MySubtenant",
        "subtenant_id": "5e7c3af8aab46c00014ce878",
        "tenant_id": "5e7c3af7aab46c00014ce877",
        "tenant": "MyTenant",
        "objectiam_user_urn": "urn:sgws:identity::96465636379595351967:user/myuser",
        "sg_group_membership": [
          "5eb1eff8bc5c0300011c989c"
        ]
      }
    ]
  }
}

按 ID 检索对象存储用户

使用下表中列出的方法按 ID 检索对象存储使用情况。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectiam/users { id }`

按 ID 检索对象存储用户。

id :对象存储帐户 ID 。

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5eb2212d1cbe3b000134762e",
        "display_name": "MyUser",
        "subtenant": "MySubtenant",
        "subtenant_id": "5e7c3af8aab46c00014ce878",
        "tenant_id": "5e7c3af7aab46c00014ce877",
        "tenant": "MyTenant",
        "objectiam_user_urn": "urn:sgws:identity::96465636379595351967:user/myuser",
        "sg_group_membership": [
          "5eb1eff8bc5c0300011c989c"
        ]
      }
    ]
  }
}

创建对象存储用户

使用下表中列出的方法创建对象存储用户。

HTTP 方法 路径 Description Parameters

发布

` /v2.1/objectiam/ 用户`

创建新的对象存储用户。

所需请求正文属性: display_namessubtenant_idsg_group_membership

  • 请求正文示例: *

{
  "display_name": "MyUserName",
  "subtenant_id": "5e7c3af8aab46c00014ce878",
  "sg_group_membership": [
    "5ed5fa312c356a0001a73840"
  ]
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed603712c356a0001a7386c",
        "action": "create",
        "job_summary": "Activate request is successfully submitted",
        "created": "2020-06-02T07:44:49.647815816Z",
        "updated": "2020-06-02T07:44:49.647815816Z",
        "object_id": "5ed603712c356a0001a7386d",
        "object_type": "sg_users",
        "object_name": "MyUserName",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}

修改对象存储用户

使用下表中列出的方法修改对象存储用户。

HTTP 方法 路径 Description Parameters

PUT

` /v2.1/objectiam/users/ { id }`

修改由 ID 标识的对象存储用户。

id :对象存储用户 ID 。

所需请求正文属性: display_namessubtenant_idsg_group_membership

  • 请求正文示例: *

{
  "display_name": "MyModifiedObjectStorageUser",
  "subtenant_id": "5e57a465896bd80001dd4961",
  "sg_group_membership": [
    "5e60754f9b64790001fe937b"
  ]
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed604002c356a0001a73880",
        "action": "update",
        "job_summary": "Update request is successfully submitted",
        "created": "2020-06-02T07:47:12.205889873Z",
        "updated": "2020-06-02T07:47:12.205889873Z",
        "object_id": "5ed603712c356a0001a7386d",
        "object_type": "sg_users",
        "object_name": "MyUserName",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}

将所有 S3 密钥映射到对象存储用户

使用下表中列出的方法将所有 S3 密钥映射到对象存储用户。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectiam/users/ { user_id } /s3keys`

为对象存储用户创建 S3 密钥。

user_id (字符串) :对象存储用户标识符。

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5e66de2509a74c0001b895e7",
        "display_name": "****************HNDE",
        "subtenant_id": "5e57a465896bd80001dd4961",
        "subtenant": "BProject",
        "objectiam_user_id": "5e66c77809a74c0001b89598",
        "objectiam_user": "MyNewObjectStorageUser",
        "objectiam_user_urn": "urn:sgws:identity::09936502886898621050:user/mynewobjectstorageuser",
        "expires": "2020-04-07T10:40:52Z"
      }
    ]

为对象存储用户创建 S3 密钥

使用以下方法为对象存储用户创建 S3 密钥。

HTTP 方法 路径 Description Parameters

发布

` /v2.1/objectiam/users/ { user_id } /s3keys`

为对象存储用户创建 S3 密钥。

user_id (字符串) :对象存储用户标识符。

所需的请求正文属性: expires (字符串)

注 密钥到期日期 / 时间以 UTC 格式设置,必须在将来设置。
  • 请求正文示例: *

{
  "expires": "2020-04-07T10:40:52Z"
}
  • 响应正文示例: *

  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "total_records": 1,
    "records": [
      {
        "id": "5e66de2509a74c0001b895e7",
        "display_name": "****************HNDE",
        "subtenant_id": "5e57a465896bd80001dd4961",
        "subtenant": "BProject",
        "objectiam_user_id": "5e66c77809a74c0001b89598",
        "objectiam_user": "MyNewObjectStorageUser",
        "objectiam_user_urn": "urn:sgws:identity::09936502886898621050:user/mynewobjectstorageuser",
        "expires": "2020-04-07T10:40:52Z",
        "access_key": "PL86KPEBN6XT4T7UHNDE",
        "secret_key": "FlD/YWAM7JMr9gG8pumU8dzvcTLMzLYtUe2lNzcA"
      }
    ]
  }
}

按密钥 ID 为对象存储用户获取 S3 密钥

使用下表中列出的方法按密钥 ID 为对象存储用户获取 S3 密钥。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectiam/users/ { user_id } /s3keys/{ key_id }`

按密钥 ID 获取 S3 密钥。

  • user_id (字符串) :对象存储用户 ID 。例如: 5e66c77809a74c0001b89598

  • key_id ( string ) : S3 密钥,例如: 5e66de2509a74c0001b895e7

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ecc7bb9b5d2730001f798fb",
        "display_name": "****************XCXD",
        "subtenant_id": "5e7c3af8aab46c00014ce878",
        "subtenant": "MySubtenant",
        "objectiam_user_id": "5eb2212d1cbe3b000134762e",
        "objectiam_user": "MyUser",
        "objectiam_user_urn": "urn:sgws:identity::96465636379595351967:user/myuser",
        "expires": "2020-05-27T00:00:00Z"
      }
    ]
  }
}

按密钥 ID 删除 S3 密钥

使用下表中列出的方法按密钥 ID 删除 S3 密钥。

HTTP 方法 路径 Description Parameters

d删除

` /v2.1/objectiam/users/ { user_id } /s3keys/{ key_id }`

按密钥 ID 删除 S3 密钥。

  • user_id (字符串) :对象存储用户 ID 。例如: 5e66c77809a74c0001b89598

  • key_id ( string ) : S3 密钥,例如: 5e66de2509a74c0001b895e7

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

No content to return for succesful execution

对象存储帐户

使用下表中列出的方法执行以下任务:

  • 检索,激活或修改对象存储帐户。

  • 创建 S3 存储分段。

HTTP 方法 路径 Description

获取

` /v2.1/objectstorage/accounts`

检索对象存储帐户。

获取

` /v2.1/objectstorage/accounts/ { id }`

按 ID 检索对象存储帐户。

发布

` /v2.1/objectstorage/accounts`

创建对象存储帐户。

PUT

` /v2.1/objectstorage/accounts/ { id }`

修改由 ID 标识的对象存储帐户。

d删除

` /v2.1/objectstorage/accounts/ { id }`

修改由 ID 标识的对象存储帐户。

获取

` /v2.1/objectstorage/b桶`

获取 S3 存储分段。

发布

` /v2.1/objectstorage/b桶`

创建 S3 存储分段。

对象存储帐户属性

下表列出了对象存储帐户属性。

属性 Type Description

id

string

对象存储用户的唯一标识符。

ssubtenant_id

string

子租户对象实例的标识符。

quota_GB

整型

共享或磁盘的大小。

检索所有对象存储帐户

使用下表中列出的方法检索所有对象存储帐户或部分对象存储帐户。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectstorage/accounts`

检索所有对象存储用户。

offset and limit – .请参见 "通用分页"

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例 *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "total_records": 19,
    "sort_by": "created",
    "order_by": "desc",
    "offset": 3,
    "limit": 1,
    "records": [
      {
        "id": "5ec6119e6344d000014cdc41",
        "name": "MyTenant - MySubtenant",
        "subtenant": " MySubtenant",
        "subtenant_id": "5ea8c5e083a9f80001b9d705",
        "tenant": "E- MyTenant",
        "tenant_id": "5d914499869caefed0f39eee",
        "sg_account_id": "29420999312809208626",
        "quota_gb": 100,
        "sg_instance_name": "NSE StorageGRID Dev1",
        "sg_instance_id": "5e3ba2840271823644cb8ab6"
      }
    ]
  }
}

按 ID 检索对象存储帐户

使用下表中列出的方法按 ID 检索对象存储帐户。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectstorage/accounts/ { id }`

按 ID 检索对象存储帐户。

id :对象存储帐户 ID 。

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ec6119e6344d000014cdc41",
        "name": "MyTenant - MySubtennant",
        "subtenant": " MySubtennant",
        "subtenant_id": "5ea8c5e083a9f80001b9d705",
        "tenant": " MyTenant",
        "tenant_id": "5d914499869caefed0f39eee",
        "sg_account_id": "29420999312809208626",
        "quota_gb": 100,
        "sg_instance_name": "NSE StorageGRID Dev1",
        "sg_instance_id": "5e3ba2840271823644cb8ab6"
      }
    ]
  }

激活对象存储帐户

使用下表中列出的方法激活对象存储帐户。

HTTP 方法 路径 Description Parameters

发布

` /v2.1/objectstorage/accounts`

激活对象存储服务。

所需的请求正文属性: ssubtenant_id , quota_GB

  • 请求正文示例: *

{
  "subtenant_id": "5ecefbbef418b40001f20bd6",
  "quota_gb": 20
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed608542c356a0001a73893",
        "action": "create",
        "job_summary": "Activate request for Sub Tenant MyNewSubtenant is successfully submitted",
        "created": "2020-06-02T08:05:40.017362022Z",
        "updated": "2020-06-02T08:05:40.017362022Z",
        "object_id": "5ed608542c356a0001a73894",
        "object_type": "sg_accounts",
        "object_name": "MyTenant - MyNewSubtenant",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}

修改对象存储帐户

使用下表中列出的方法修改对象存储帐户。

HTTP 方法 路径 Description Parameters

PUT

` /v2.1/objectstorage/accounts/ { id }`

修改对象存储服务(例如,更改配额)。

id (字符串) :对象存储帐户 ID 。

所需的请求正文属性: namessubtenant_idquota_GB

  • 请求正文示例: *

{
  "name": "MyTenant - MyNewSubtenant",
  "subtenant_id": "5ecefbbef418b40001f20bd6",
  "quota_gb": 30
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed609162c356a0001a73899",
        "action": "update",
        "job_summary": "Update request is successfully submitted",
        "created": "2020-06-02T08:08:54.841652098Z",
        "updated": "2020-06-02T08:08:54.841652098Z",
        "object_id": "5ed608542c356a0001a73894",
        "object_type": "sg_accounts",
        "object_name": "MyTenant - MyNewSubtenant",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}

删除对象存储帐户

在删除对象存储帐户之前,必须先删除所有关联的组,用户和分段。使用下表中列出的方法删除对象存储帐户。

注 使用与 S3 兼容的实用程序删除存储分段。无法从 NetApp 服务引擎中删除存储分段。
HTTP 方法 路径 Description Parameters

d删除

` /v2.1/objectstorage/accounts/ { id }`

删除对象存储帐户。

id (字符串) :对象存储帐户 ID 。

所需的请求正文属性: none

  • 请求正文示例: *

{
  "name": "MyTenant - MyNewSubtenant",
  "subtenant_id": "5ecefbbef418b40001f20bd6",
  "quota_gb": 30
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "string",
    "verbose_message": "string",
    "code": "string"
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5d2fb0fb4f47df00015274e3",
        "action": "string",
        "object_id": "5d2fb0fb4f47df00015274e3",
        "object_type": "string",
        "status": "string",
        "status_detail": "string",
        "last_error": "string",
        "user_id": "5d2fb0fb4f47df00015274e3",
        "link": "string"
      }
    ]
  }
}

对象存储分段

使用下表中的 API 创建和检索对象存储分段。

HTTP 方法 路径 Description

获取

` /v2.1/objectstorage/b桶`

检索对象存储分段。

发布

` /v2.1/objectstorage/b桶`

创建对象存储分段。

对象存储分段属性

下表列出了对象存储分段属性。

属性 Type Description

id

string

对象存储用户的唯一标识符。

名称

string

存储分段名称。

ssubtenant_id

string

存储分段所属子租户的标识符。

检索 S3 存储分段

使用下表中列出的方法检索 S3 存储分段。

HTTP 方法 路径 Description Parameters

获取

` /v2.1/objectstorage/b桶`

检索 S3 存储分段。

ssubtenant_id :拥有存储分段的子租户。

所需的请求正文属性: none

  • 请求正文示例: *

none
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Returned 1 record.",
    "verbose_message": "",
    "code": 200
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "creationTime": "2020-06-02T08:13:25.695Z",
        "name": "mybucket"
      }
    ]
  }
}

创建 S3 存储分段

使用下表中列出的方法创建 S3 存储分段。

注 在创建存储分段之前,必须存在子租户的对象存储帐户。
HTTP 方法 路径 Description Parameters

发布

` /v2.1/objectstorage/b桶`

创建 S3 存储区。

所需的请求正文属性:

  • name (字符串): S3 存储分段名称(仅限小写或数字字符)

  • ssubtenant_id (字符串): S3 存储分段所属子租户的 ID

  • 请求正文示例: *

{
  "name": "mybucket",
  "subtenant_id": "5ecefbbef418b40001f20bd6"
}
  • 响应正文示例: *

{
  "status": {
    "user_message": "Okay. Accepted for processing.",
    "verbose_message": "",
    "code": 202
  },
  "result": {
    "returned_records": 1,
    "records": [
      {
        "id": "5ed60a232c356a0001a7389e",
        "action": "create",
        "job_summary": "Create request is successfully submitted",
        "created": "2020-06-02T08:13:23.105015108Z",
        "updated": "2020-06-02T08:13:23.105015108Z",
        "object_id": "5ed60a232c356a0001a7389f",
        "object_type": "sg_buckets",
        "object_name": "mybucket",
        "status": "pending",
        "status_detail": "",
        "last_error": "",
        "user_id": "5ec626c0f038943eb46b0af1",
        "job_tasks": null
      }
    ]
  }
}