Archive Storage API
    • PDF

    Archive Storage API

    • PDF

    記事の要約

    Classic/​VPC環境で利用できます。​

    OpenStack Swift APIと互換するArchive Storage APIのサポート情報を確認して、API共通呼び出しと認証方法を確認します。 Archive Storageは、サポートしているバージョンが2.15.1(Pike)なので、このガイドでは2.15.1(Pike)に基づいて説明します。

    サポートAPI

    Archive Storage APIは、ストレージの管理と使用に必要な様々な機能を制御できます。 サポートするオペレーションリストは、Archive Storage APIガイドで確認してください。

    API呼び出し

    Archive Storage API呼び出しの段階は、以下のとおりです。

    1. 認証キーの作成
    2. 呼び出しドメインの確認
    3. トークンの作成
    4. トークンの削除

    1. 認証キーの作成

    Archive Storage APIを使用するための認証キーを作成する方法は、Ncloud APIの認証キーの作成方法と同じです。 Ncoud APIの1. 認証キーの作成を参考にしてください。

    2. 呼び出しドメインの確認

    HTTPとHTTPSプロトコルの両方をサポートしていますが、データ保護のため、HTTPSのご使用をお勧めします。 リージョン別の呼び出しドメイン情報は、以下のとおりです。

    リージョン認証URLサービスURL
    韓国https://kr.archive.ncloudstorage.com:5000https://kr.archive.ncloudstorage.com

    3. トークンの作成

    NAVERクラウドプラットフォームのArchive Storageは、OpenStack Keystone V3 APIを利用して認証を行い、トークンを作成することができます。 作成されたトークンは、アカウント、コンテナ、オブジェクトオペレーションを使用する時に、X-Auth-Tokenヘッダ値として入力して使用します。

    参考

    OpenStack Keystone V3 APIに関する詳細は、https://developer.openstack.org/api-ref/identity/v3/を参考にしてください。

    password認証方式を使用してトークンを作成し、NAVERクラウドプラットフォームポータルのマイページ > アカウントの管理 > 認証キーの管理で作成したAPI認証キー情報のうち、Access Key IDはユーザー名、Secret Keyはユーザーパスワードとして使用します。
    トークンを作成する場合、Projectの範囲に限定(scope)が必須であり、プロジェクトIDとドメインIDは、Archive Storageコンソールで利用申し込みをした後、**[API利用情報の確認]**ボタンをクリックして確認できます。
    トークンの有効時間は24時間で、トークンの削除をリクエストして利用を停止できます。

    構文

    構文は以下のとおりです。

    POST /v3/auth/tokens
    

    リクエスト

    リクエストパラメータは次のとおりです。

    NameInTypeDescription
    authbodyobjectAuthオブジェクト
    identitybodyobjectIdentityオブジェクト
    methodsbodyarray認証方式、パスワード認証方式を使用
    passwordbodyobjectPasswordオブジェクト
    userbodyobjectUserオブジェクト、ID、パスワード、ドメイン入力必須
    domainbodyobjectDomainオブジェクト、IDを入力して使用し、ドメインIDはArchive Storageコンソールの**[API利用情報の確認]**ボタンをクリックして確認
    scopebodyobjectScopeオブジェクト、 トークンの使用範囲をProjectで指定して使用
    projectbodyobjectProjectオブジェクト、IDを入力して使用し、プロジェクトIDはArchive Storageコンソールの**[API利用情報の確認]**ボタンをクリックして確認

    リクエスト例は以下のとおりです。

    curl -i -X POST -H "Content-Type: application/json" https://kr.archive.ncloudstorage.com:5000/v3/auth/tokens -d '
    {
        "auth": {
            "identity": {
                "methods": [
                    "password"
                ],
                "password": {
                    "user": {
                        "name": "{access_key_id}",
                        "password": "{secret_key}",
                        "domain": {
                            "id": "{domain_id}"
                        }
                    }
                }
            },
            "scope": {
                "project": {
                    "id": "{project_id}"
                }
            }
        }
    }'
    

    レスポンス

    リスポンスパラメータは次のとおりです。

    NameInTypeDescription
    X-Subject-Tokenheaderstring作成されたトークン。 トークン値はリクエストボディではなくヘッダに伝達
    tokenbodyobjectTokenオブジェクト
    methodsbodyarray認証方式、パスワード認証方式を使用
    rolesbodyarrayロール情報リスト、ID、Name情報を含む
    expires_atbodystringトークン終了日時。 YYYY-MM-DDThh:mm:ss.sssZ (ISO 8601). トークン終了日時がnullの場合、終了になりません
    issued_atbodystringトークン作成日時。 YYYY-MM-DDThh:mm:ss.sssZ (ISO 8601)
    projectbodyobjectProjectオブジェクト、ドメイン、ID、Name情報を含む
    catalogbodyarrayCatalogオブジェクト
    endpointsbodyarrayEndpoint情報リスト
    region_idbodystringサービスEndpointが属するリージョン情報
    urlbodystringendpoint URL.
    interfacebodystringインターフェースタイプ。Adminタイプは、Admin権限を持つユーザーのみ使用可能
    typebodystringEndpointタイプ
    audit_idsbodyarrayランダムに作成される固有の値で、トークン情報を照会するときに使用

    リスポンス例は以下のとおりです。

    HTTP/1.1 201 Created
    Date: Mon, 17 Sep 2018 23:46:11 GMT
    Server: Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.1e-fips mod_wsgi/3.4 Python/2.7.5
    X-Subject-Token: gAAAAABboDzDOzds2V_2uzR9xn-AQkg5RRejRkGD9L5NuhwezSqqxpmY8ZNl48vYnC1GCn21AiffNtRrDedbvVq2usnPDH2qIp-Cq2Rx54fnH406NhhW9OiaKMzFwRzS7-js3j4xGMvEk2bPErmolAT4E1Du0vsF2azycC6sNcIMsVWcvd
    Vary: X-Auth-Token
    x-openstack-request-id: req-40a163b1-1fcc-423d-8ec3-3f40fd413ab6
    Content-Length: 1759
    Content-Type: application/json
    
    {
        "token": {
            "is_domain": false,
            "methods": [
                "password"
            ],
            "roles": [
                {
                    "id": "488fac210a714fcc91b61a32525b5693",
                    "name": "user"
                }
            ],
            "expires_at": "2018-09-18T23:46:11.000000Z",
            "project": {
                "domain": {
                    "id": "default",
                    "name": "Default"
                },
                "id": "0a11d053d4804b4c86d26ae1ff48dc1e",
                "name": "ncp-test-0"
            },
            "catalog": [
                {
                    "endpoints": [
                        {
                            "region_id": null,
                            "url": "https://kr.archive.ncloudstorage.com:5000/v3",
                            "region": null,
                            "interface": "public",
                            "id": "3bf62632266c4be0880cd7170ca90f55"
                        },
                        {
                            "region_id": null,
                            "url": "https://kr.archive.ncloudstorage.com:35357/v3",
                            "region": null,
                            "interface": "admin",
                            "id": "a29ce505b6cb429ea9ca15cb126251f7"
                        },
                        {
                            "region_id": null,
                            "url": "https://kr.archive.ncloudstorage.com:35357/v3",
                            "region": null,
                            "interface": "internal",
                            "id": "e524bcde8c5a4eec8750acf3e5819d69"
                        }
                    ],
                    "type": "identity",
                    "id": "ae1a92e6b64f4e9886517aaca2540b26",
                    "name": "keystone"
                },
                {
                    "endpoints": [
                        {
                            "region_id": "RegionOne",
                            "url": "https://kr.archive.ncloudstorage.com/v1/AUTH_0a11d053d4804b4c86d26ae1ff48dc1e",
                            "region": "RegionOne",
                            "interface": "internal",
                            "id": "80773860110449b9b78dc3a05f3f6360"
                        },
                        {
                            "region_id": "RegionOne",
                            "url": "https://kr.archive.ncloudstorage.com/v1/AUTH_0a11d053d4804b4c86d26ae1ff48dc1e",
                            "region": "RegionOne",
                            "interface": "public",
                            "id": "40f7102a57024603a53f41c4d8cb7cf3"
                        },
                        {
                            "region_id": "RegionOne",
                            "url": "https://kr.archive.ncloudstorage.com",
                            "region": "RegionOne",
                            "interface": "admin",
                            "id": "5297ae442163478e82f6f9630919b93f"
                        }
                    ],
                    "type": "object-store",
                    "id": "fb4cbd0bf18f4beb9ac29b09f0862ce2",
                    "name": "swift"
                }
            ],
            "user": {
                "password_expires_at": null,
                "domain": {
                    "id": "default",
                    "name": "Default"
                },
                "id": "ac1eca9c1b9f4900a0b1c4a82be49686",
                "name": "qQXiRLju7XHMXpmEskHn"
            },
            "audit_ids": [
                "U-O5n4rBSoO5jBykNXYNsw"
            ],
            "issued_at": "2018-09-17T23:46:11.000000Z"
        }
    }
    

    4. トークンの削除

    作成したトークンを削除できます。

    構文

    構文は以下のとおりです。

    DELETE /v3/auth/tokens
    

    リクエスト

    リクエストパラメータは次のとおりです。

    NameInTypeDescription
    X-Auth-Tokenheaderstring認証のための有効なトークン
    X-Subject-Tokenheaderstring削除対象のトークン。 リクエストが成功するとすぐに利用できなくなる

    リクエスト例は以下のとおりです。

    curl -i -X DELETE -H "X-Auth-Token: $token" -H "X-Subject-Token: $token_to_delete" https://kr.archive.ncloudstorage.com:5000/v3/auth/tokens
    

    レスポンス

    リクエストが成功すると、No Content(204)のステータスコードを返します。 リスポンス例は以下のとおりです。

    HTTP/1.1 204 No Content
    Date: Tue, 18 Sep 2018 05:44:00 GMT
    Server: Apache/2.4.6 (Red Hat Enterprise Linux) OpenSSL/1.0.1e-fips mod_wsgi/3.4 Python/2.7.5
    Vary: X-Auth-Token
    x-openstack-request-id: req-b6e8efbe-c3f2-41bc-8ca5-1067753318d4
    Content-Type: text/plain; charset=UTF-8
    

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.