鍵情報の取得 (GET /v1/{tenant_id}/secrets/{resource_id})

指定した鍵情報を取得する。

{tenant_id}: 鍵情報を取得するプロジェクトのID

{resource_id}: 取得する鍵情報のリソースID

Request Headers

X-Auth-Token

認証トークンIDを指定する。

Data Type Cardinality
String 1..1

Accept

鍵情報を取得するときの型を指定する。

text/plain、application/octet-stream、application/jsonのいずれか。

  • Accept: text/plainを指定した場合

    payloadの値を平文で返す。

    ただし、"payload_content_type": "application/octet-stream"で鍵情報が登録されている場合、エラー(406)となり参照不可。

  • Accept: application/octet-streamを指定した場合

    payloadの値をbase64で復号された状態で返す。

  • Accept: application/jsonを指定した場合

    指定されたSecretのメタデータを返す

Data Type Cardinality
String 1..1

Request Parameter

なし

Request Body

なし

Response Headers

ステータス

リクエストのステータスを返却する。

以下の値を返却する。

200:
正常終了
401:
認証エラー(認証トークン無し、認証トークン誤り等)
400:
不正なアクセス(パラメーター不正等)
403:
アクセス不可(権限がない)
404:
該当資源なし
406:
サポートされていないAcceptが指定されている
500:
予期せぬエラー
Data Type Cardinality
int 1..1

Response Elements

(secret) ※json上のElement nameは無し

鍵情報のエンベロープ

Accept: application/jsonを指定した場合のみ取得

Data Type Cardinality Parent Element Child Element(s)
Element 0..1 secrets name

status

algorithm

mode

bit_length

content_types

expiration

secret_ref

updated

created

name

鍵情報の名前

Data Type Cardinality Parent Element Child Element(s)
String 1..1 (secret) None

status

鍵情報の状態

Data Type Cardinality Parent Element Child Element(s)
Enum(ACTIVE,ERROR) 1..1 (secret) None

algorithm

鍵情報生成時に利用するアルゴリズム

Data Type Cardinality Parent Element Child Element(s)
String 1..1 (secret) None

mode

鍵情報に関連づいたアルゴリズムのモード

Data Type Cardinality Parent Element Child Element(s)
String 1..1 (secret) None

bit_length

鍵情報のビットレンジ

Data Type Cardinality Parent Element Child Element(s)
int 1..1 (secret) None

content_types

payloadの参照に必要なAcceptヘッダー値

Data Type Cardinality Parent Element Child Element(s)
String 0..1 (secret) None

expiration

鍵情報の有効期限。ISO-8601で規定された値。期限が過ぎると鍵情報は自動的に削除される。nullの場合、期限なし(自動で削除されない)

Data Type Cardinality Parent Element Child Element(s)
String 1..1 (secret) None

secret_ref

鍵情報リソースURI

Data Type Cardinality Parent Element Child Element(s)
String 1..1 (secret) None

updated

最終更新時のタイムスタンプ(UTC)

Data Type Cardinality Parent Element Child Element(s)
datetime 1..1 (secret) None

created

作成時のタイムスタンプ(UTC)

Data Type Cardinality Parent Element Child Element(s)
datetime 1..1 (secret) None

payload

登録されている鍵情報ペイロード

Accept: text/plainまたはAccept: application/octet-streamを指定した場合のみ取得

Data Type Cardinality Parent Element Child Element(s)
String 0..1 None None

Example of Request


GET /v1/a759452216fd41cf8ee5aba321cfbd49/secrets/96e86d87-6602-4b99-ae41-5b737fe1288d
X-Auth-Token: "JpZCI6ICJjM2VlNzA4YTZhZTI0ZGRmOTJjMDc4..."
Accept: "text/plain"
     

Example of Response

  • Accept: application/jsonを指定した場合
    
    Status Code: 200 OK
    Content-Length: 377
    Content-Type: application/json; charset=UTF-8
    
    {
      "status": "ACTIVE",
      "secret_ref": "http://<host>:9311/v1/a759452216fd41cf8ee5aba321cfbd49/secrets/96e86d87-6602-4b99-ae41-5b737fe1288d",
      "updated": "2014-07-15T06:17:08.082912",
      "name": "key1",
      "algorithm": "aes",
      "created": "2014-07-15T06:17:08.070916",
      "content_types": {
        "default": "text/plain"
      },
      "mode": "cbc",
      "bit_length": 256,
    "expiration": "2015-02-28T19:14:44.180394"
    }           
              

  • Accept: text/plainを指定した場合
    
    Status Code: 200 OK
    Content-Length: 1626
    Content-Type: text/plain; charset=UTF-8
    
    -----BEGIN XXXX-----MIIEow・・・(中略)・・・Rwg7Jp-----END XXXX-----           
             

  • Accept: application/octet-streamを指定した場合
    
    Status Code: 200 OK
    Content-Length: 1626
    Content-Type: text/plain; charset=UTF-8
    
    登録時に、"payload_content_type": "text/plain"を指定した場合
    -----BEGIN XXXX-----MIIEow・・・(中略)・・・Rwg7Jp-----END XXXX-----
    
    登録時に、"payload_content_type": "application/octet-stream", "payload_content_encoding": "base64"を指定した場合
    ?}??"?ZG=Iu?^axwM)198?}????(PEM形式のpayloadを復号したバイナリデータ)