edit-icon download-icon

概要

最終更新日: May 05, 2018

リクエスト構造

VPC API は RPC 型属します。HTTP リクエストを送信して VPC API を呼び出すことができます。

リクエスト構造は以下の通りです。

http://endpoint/?Action=xx&Parameters

場所:

  • エンドポイント は、Alibaba Cloud サービスが呼び出すエントリです。VPC のエンドポイントは vpc.aliyuncs.comです。

  • アクションは実行するアクションです。たとえば、作成された VPC を照会するには、DescribeVpcsAPI を使用します。

  • バージョン は API のバージョンです。VPC API のバージョンは2016-04-28です。

  • パラメータ あるリクエストのパラメータアンパサンド(&)で区切られています。

    リクエストパラメータは、共通パラメータと API 固有パラメータで構成されます。一般的なパラメータには、VPI バージョン、資格情報などが含まれます。

    VPC の API バージョンは 2016-04-28 です。

以下は、作成された VPC を照会するためにDescribeVpcsAPI を使用する例です。

http://vpc.aliyuncs.com/?Action=DescribeVpcs&AccessKeyId=key-test&Format=JSON&SecureTransport=true&SignatureMethod=HMAC-SHA1&SignatureNonce=15215528852396&SignatureVersion=1.0&SourceIp=1xxxx6&Timestamp=2018-03-02Txxxxxxx&Version=2016-04-28&Signature=xxxx%xxxx%3D

読みやすいように、API リクエストはドキュメントに次の形式で表示されます。

  1. https://vpc.aliyuncs.com/?Action=DescribeVpcs
  2. &Format=xml
  3. &Version=2016-04-28
  4. &Signature=xxxx%xxxx%3D
  5. &SignatureMethod=HMAC-SHA1
  6. &SignatureNonce=15215528852396
  7. &SignatureVersion=1.0
  8. &AccessKeyId=key-test
  9. &Timestamp=2018-06-01T12:00:00Z

API 権限

アカウントのセキュリティを確保するため、RAM ユーザーを使用してAPIを呼び出すことをお勧めします。RAM ユーザーを使用して API を呼び出す前に、許可ポリシーを作成して RAM ユーザーにポリシーを添付することによって、RAM ユーザーに API を呼び出すための対応する権限を与える必要があります。

詳細については、RAM authentication を参照してください。

API 署名

API のセキュリティを確保するには、API リクエスト署名する必要があります。Alibaba Cloud は、リクエストの署名を使用して、API を呼び出す人物の身元を確認します。

手動で API を呼び出すたびに、AccessKey シークレットを使用して、RFC 2104 で定義されたエンコードされソートされたリクエスト文字列の HMAC 値を計算する必要があります。計算された HMAC 値がsignatureでリクエストしたパラメータの値であります 。

注意: Alibaba Cloud は、複数の SDK とサードパーティの SDK を提供して、手作業による署名プロセスを効率化します。

API リクエストに次の形式で署名を追加します。

https://vpc.aliyuncs.com/?Action=XXX&SignatureVersion=1.0&SignatureMethod=HMAC-SHA1&Signature=CT9X0VtwR86fNWSnsc6v8YGOjuE%3D&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf

DescribeVpcsを例に挙げてください。アクセスキー ID はtestidで、アクセスキーの秘密はtestsecret、オリジナルであればリクエスト URL は次のとおりです。

http://vpc.aliyuncs.com/?TimeStamp=2016-02-23T12:46:24Z&Format=XML&AccessKeyId=testid&Action=DescribeVpcs&SignatureMethod=HMAC-SHA1&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf&Version=2016-04-28&SignatureVersion=1.0

署名を計算するには、次の手順に従います。

  1. リクエストパラメータを使用して、署名する正規化されたクエリ文字列を作成します。

    署名する作成された文字列は次のとおりです。

    1. GET&%2F&AccessKeyId%3Dtestid&Action%3DDescribeVpcs&Format%3DXML&SignatureMethod%3DHMAC-SHA1&SignatureNonce%3D3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf&SignatureVersion%3D1.0&TimeStamp%3D2016-02-23T12%253A46%253A24Z&Version%3D2016-04-28
  2. 署名する文字列の HMAC 値を計算します。

    HMAC 値を計算するためのキーとして AccessKey の秘密にアンパサンドを追加します。この例では、キーは testsecret&です。

    この例の計算された署名は次のとおりです。

    CT9X0VtwR86fNWSnsc6v8YGOjuE=

  3. リクエスト URLに署名を追加します。

    最後のリクエスト URL は次のとおりです。

    http://vpc.aliyuncs.com/?Action=DescribeVpcs &SignatureVersion=1.0 SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf &Version=2016-04-28 &AccessKeyId=testid &Signature=CT9X0VtwR86fNWSnsc6v8YGOjuE%3D &SignatureMethod=HMAC-SHA1&TimeStamp=2014-02-23T12%3A46%3A24Z &Format=XML&