Elastic IP Address (EIP) APIとVirtual Private Cloud (VPC) APIは同じエンドポイントを共有します。 EIP APIを呼び出すには、HTTPまたはHTTPS GETリクエストをEIP APIのエンドポイントに送信する必要があります。 呼び出す API に対応するリクエストパラメーターを追加する必要があります。 API操作を呼び出した後、システムは応答を返します。 要求および応答は、UTF-8で符号化される。

リクエスト構造

EIP API操作はRPCプロトコルを使用します。 HTTPまたはHTTPS GETリクエストを送信して、EIP API操作を呼び出すことができます。

リクエストは次の構文を使用します。
http(s):// Endpoint/?Action=xx&Parameters
場所:
  • Endpoint: EIP APIのエンドポイント。 エンドポイントがvpc.aliyuncs.comされます。
  • Action:実行中の操作の名前を設定します。 たとえば、EIPを作成するには、ActionパラメーターをAllocateEipAddressに設定する必要があります。
  • Version: 呼び出すAPIのバージョン。 現在のEIP APIのバージョンは2016-04-28です。
  • Parameters:API のリクエストパラメーターを設定します。 複数のパラメーターを指定する場合は、アンパサンド (&) で区切ります。

    リクエストパラメータには、共通リクエストパラメータとAPI操作固有パラメータの両方が含まれます。 共通パラメータには、APIのバージョン番号や認証情報などの情報が含まれます。 詳細については、「共通パラメーター」をご参照ください。

次の例は、AllocateEipAddress操作を呼び出してEIPを申請する方法を示しています。
説明 読みやすさを向上させるために、次のコードが編集されました。
https://vpc.aliyuncs.com/?Action=AllocateEipAddress
&Format=xml
&バージョン=2016-04-28
&署名=xxxx % xxxx % 3D
&SignatureMethod=HMAC-SHA1
&SignatureNonce=15215528852396
&SignatureVersion=1.0
&AccessKeyId=キーテスト
&タイムスタンプ=2012-06-01T12:00:00Z
...

API権限付与

アカウントのセキュリティを確保するために、APIをResource Access Management (RAM) ユーザーとして呼び出すことを推奨します。 EIP APIをRAMユーザーとして呼び出すには、必要なアクセス許可を含むアクセス許可ポリシーを作成し、そのポリシーをRAMユーザーにアタッチする必要があります。

RAMユーザーに許可できるEIPリソースとAPI操作の詳細については、「RAM の権限付与」をご参照ください。

署名:

リクエストがHTTPまたはHTTPSを使用するかどうかのセキュリティを確保するために、すべてのAPIリクエストに署名する必要があります。 Alibaba Cloud はリクエストの署名を使用して、API の呼び出し元を確認します。

EIPは、AccessKeyペアで対称暗号化を実装して、リクエスト送信者のIDを検証します。 AccessKeyペアは、Alibaba CloudアカウントとRAMユーザーに発行されるID認証情報です。 ユーザー名とパスワードのペアと同様に、AccessKeyペアはAccessKey IDとAccessKeyシークレットで構成されます。 AccessKey IDはユーザーの ID を検証するために使用され、AccessKey secret は署名文字列を暗号化して検証するために使用されます。 AccessKey Secret は、機密情報として厳密に取り扱う必要があります。

次の形式でRPC APIリクエストに署名を追加する必要があります。

https:// endpoint/?SignatureVersion=1.0&SignatureMethod=HMAC-SHA1&Signature=XXXX % 3D&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e 0axxxxxxxx

例としてAllocateEipAddressを取り上げます。 AccessKey IDはtestidで、AccessKey secretはtestsecretです。 リクエストが署名される前のURLは次のとおりです。

http://vpc.aliyuncs.com/?Action=AllocateEipAddress
&タイムスタンプ=2016-05-23T12:46:24Z
&フォーマット=XML
&AccessKeyId=testid
&SignatureMethod=HMAC-SHA1
&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0axxxxxxxx
&バージョン=2016-04-28
&SignatureVersion=1.0
署名を計算するには、次の操作を実行します。
  1. リクエストパラメーターを使用して、文字列記号を作成します。
    GET&% 2F&AccessKeyId % 3Dtestid&Action % 3DAllocateEipAddress&Format % 3DXML&SignatureMethod % 3DHMAC-SHA1&SignatureNonce % 3D3ee8c1b8-83d3-44af-a94f-4e0axxxxxxxx&SignatureVersion % 3D1.0&TimeStamp % 3D2016-02-23T12% 253A46% 253A24Z&バージョン % 3D2004-28
  2. 署名する文字列のHMAC値を計算します。

    HMAC値を計算するキーとして、AccessKey secretにアンパサンド (&) を追加します。 この例のキーは、testsecret&とします。

    CT9X0VtwR86fNWS********juE=
  3. リクエストに署名文字列を追加します。
    http://vpc.aliyuncs.com/?Action=AllocateEipAddress
    &タイムスタンプ=2016-05-23T12:46:24Z
    &フォーマット=XML
    &AccessKeyId=testid
    &SignatureMethod=HMAC-SHA1
    &SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0axxxxxxxx
    &バージョン=2016-04-28
    &SignatureVersion=1.0
    &署名=CT9X0VtwR86fNWS ******** juE=