すべてのプロダクト
Search
ドキュメントセンター

Cloud Control API:PrivateLink 経由での Cloud Control API の呼び出し

最終更新日:Aug 21, 2026

PrivateLink 経由で Cloud Control API を呼び出すことで、トラフィックをパブリックインターネットに公開することなく、サービスにプライベートにアクセスできます。

概要

PrivateLink とは

PrivateLink は、VPC と Alibaba Cloud サービス間にプライベート接続を確立し、トラフィックをパブリックインターネットから分離することで、セキュリティと安定性を向上させます。

ユースケース

PrivateLink は、本番環境から Cloud Control API を呼び出す場合に推奨されます。一般的なユースケースは次のとおりです:

  • 高いセキュリティとコンプライアンス要件:企業のセキュリティポリシーで、パブリックインターネットへのアクセスが禁止または制限されている場合。

  • コスト最適化:パブリックデータ転送料金を削減し、総所有コスト (TCO) を低減したい場合。

  • クロスリージョンデプロイ:統一されたネットワークアーキテクチャで、複数のリージョンにまたがってアプリケーションをデプロイする必要がある場合。

メリット

メリット

説明

低レイテンシー

ダイレクトなプライベート接続により、パブリックインターネット経由のアクセスと比較して、ネットワークレイテンシーが 30% から 50% 削減されます。

高い安定性

パブリックインターネットの変動性の影響を受けません。

安全な隔離

トラフィックはパブリックインターネットを経由しません。

前提条件

権限要件

PrivateLink エンドポイントを設定するには、以下の権限が必要です:

  • AliyunVPCFullAccess:VPC へのフルアクセス権限。

  • AliyunPrivateLinkFullAccess:PrivateLink へのフルアクセス権限。

リソース要件

呼び出す Cloud Control API サービスのリージョンで、以下のリソースが利用可能であることを確認してください:

API サービスリージョン

ドメイン名

VPC リージョン

国内サービス

cloudcontrol.aliyuncs.com

cn-zhangjiakou (中国 (張家口))

国際サービス

cloudcontrol.ap-southeast-1.aliyuncs.com

ap-southeast-1 (シンガポール)

リソースのチェックリスト:

  • 対象リージョンに VPC インスタンスがあること。

  • VPC 内に利用可能な vSwitch が少なくとも 1 つあること。

  • vSwitch に十分な利用可能な IP アドレスがあることを確認してください。

サービスリージョン

Cloud Control API は、以下のリージョンで利用可能です。ビジネスニーズに基づいてリージョンを選択してください。

国内サービス (cn-zhangjiakou)

  • エンドポイントサービス:com.aliyuncs.privatelink.cn-zhangjiakou.cloudcontrol-api

  • パブリックドメイン名:cloudcontrol.aliyuncs.com

  • プライベートドメイン名:cloudcontrol.vpc-proxy.aliyuncs.com

国際サービス (ap-southeast-1)

  • エンドポイントサービス:com.aliyuncs.privatelink.ap-southeast-1.cloudcontrol

  • パブリックドメイン名:cloudcontrol.ap-southeast-1.aliyuncs.com

  • プライベートドメイン名:cloudcontrol-vpc.ap-southeast-1.aliyuncs.com

重要

PrivateLink の設定後、対応するプライベートドメイン名を使用するよう、アプリケーションコードを更新してください。

手順

同一リージョン内の設定

アプリケーションが Cloud Control API サービスと同じリージョン (cn-zhangjiakou または ap-southeast-1) にデプロイされている場合、そのリージョンで直接エンドポイントを作成できます。

ステップ1:コンソールへのログイン

  1. VPC コンソールにログインします。

  2. 左側のナビゲーションペインで、[エンドポイント] をクリックします。

  3. [Interface Endpoint] タブで、 [Enable PrivateLink] をクリックします。

ステップ2:リージョンの選択

[Region] ドロップダウンリストから、リージョンを選択します:

  • 国内サービスにアクセスするには、[中国(張家口)] を選択します。

  • 国際サービスにアクセスするには、[シンガポール]を選択します。

ステップ3:基本情報の設定

パラメーター

説明

例

Endpoint Name

エンドポイントのわかりやすい名前を入力します。

ep-cloudcontrol-prod

Endpoint Type

[Interface Endpoint] を選択します。

Interface Endpoint

Resource Type

[Alibaba Cloud Service] を選択します。

Alibaba Cloud Service

ステップ4:エンドポイントサービスの選択

  1. [エンドポイントサービス] 検索ボックスには、対象のサービスに応じてサービス名を入力します:

    • 国内サービス:com.aliyuncs.privatelink.cn-zhangjiakou.cloudcontrol-api

    • 国際サービス:com.aliyuncs.privatelink.ap-southeast-1.cloudcontrol

  2. 検索結果からエンドポイントサービスを選択します。

ステップ5:カスタムドメイン名の有効化

[カスタムドメイン名を有効化] を選択します。システムが自動的にプライベートドメイン名を割り当てます。

  • 国内サービスのドメイン名:cloudcontrol.vpc-proxy.aliyuncs.com

  • 国際サービスのドメイン名:cloudcontrol-vpc.ap-southeast-1.aliyuncs.com

ステップ6:ネットワーク設定

パラメーター

説明

ベストプラクティス

VPC

アプリケーションがデプロイされている VPC を選択します。

VPC がアプリケーションのデプロイと一致することを確認します。

ゾーンと vSwitch

少なくとも 1 つの vSwitch を選択します。高可用性を確保するために、複数の vSwitch を選択することを推奨します。

本番環境では、2 つから 3 つの異なるゾーンにある vSwitch を選択します。

セキュリティグループ

アクセス元を制限するためのセキュリティグループを選択します。

アプリケーションのセキュリティグループからのみアクセスを許可するルールを設定します。

複数ゾーン設定の例:

ゾーン A:vsw-xxxxx 
ゾーン B:vsw-yyyyy 


ステップ7:エンドポイントポリシーの設定

エンドポイントポリシーは、どのアカウントまたは RAM ユーザーがエンドポイント経由でサービスにアクセスできるかを定義します。

説明

最小権限の原則に基づき、必要なアカウントにのみアクセスを許可してください。

デフォルトポリシー (すべてを許可):

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "*",
      "Resource": "*"
    }
  ]
}

推奨ポリシー (現在のアカウントのみを許可):

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Aliyun": [
          "acs:ram::YOUR_ACCOUNT_ID:root"
        ]
      },
      "Action": "*",
      "Resource": "*"
    }
  ]
}

ステップ8:作成と検証

  1. [OK] をクリックしてエンドポイントを作成します。

  2. エンドポイントのステータスが [アクティブ] になるまで 2〜5 分待ちます。

  3. 接続ステータスが [接続済み]に変わります。

ステータスの説明:

  • 作成中:エンドポイントが作成されています。

  • アクティブ:エンドポイントが使用可能な状態です。

  • 異常:作成に失敗したか、接続が機能していません。設定を確認してください。
    エンドポイントが作成された後、その詳細ページで以下を確認します:[Basic Information] セクションで、[Status] が アクティブ であり、[Connection Status] が 接続済み であること、[Endpoint Service Domain Name] セクションで、[Custom Domain Name] が有効になっており、想定されるドメインが表示されていることを確認します。



クロスリージョン設定

cn-zhangjiakou または ap-southeast-1 以外のリージョンから接続するには、CEN を使用してリージョン間接続を確立する必要があります。

ステップ1:ターゲットリージョンでのエンドポイント作成

  • cn-zhangjiakou または ap-southeast-1 にエンドポイントを作成します。詳細については、「同一リージョン設定」をご参照ください。

  • エンドポイントが配置されている VPC の ID を記録します。

ステップ2:CEN を使用したリージョン間接続

CEN の設定方法については、「リージョン間での VPC 接続」をご参照ください。

検証とテスト

接続性の検証

アプリケーションを実行する ECS またはコンテナインスタンスにログインし、次のコマンドを実行します:

国内サービスの検証:

curl -v cloudcontrol.vpc-proxy.aliyuncs.com

国際サービスの検証:

curl -v cloudcontrol-vpc.ap-southeast-1.aliyuncs.com

成功の指標:

接続に成功すると、HTTP レスポンスに x-acs-request-id ヘッダーが含まれます。出力例:

< HTTP/1.1 401 Unauthorized
< date: Thu, 09 Oct 2025 10:30:00 GMT
< content-type: application/json
< x-acs-request-id: 23C12345-1234-1234-1234-123456789ABC
< x-acs-trace-id: 0b12345678901234567890123456789a
...
説明

リクエストに認証情報が含まれていないため、API は 401 ステータスコードを返します。

x-acs-request-id ヘッダーが存在することにより、リクエストがプライベート接続を介して Alibaba Cloud サービスエンドポイントに到達したことを確認できます。

アプリケーション統合の例

Java の例

import com.aliyun.cloudcontrol20220830.Client;
import com.aliyun.teaopenapi.models.Config;
public class PrivateLinkExample {
    public static void main(String[] args) throws Exception {
        // クライアントを設定します。
        Config config = new Config()
            .setAccessKeyId("<YOUR-ACCESS-KEY-ID>")
            .setAccessKeySecret("<YOUR-ACCESS-KEY-SECRET>")
            // プライベートエンドポイントを使用するようにクライアントを設定します。
            // ご利用のサービスに応じて、以下のいずれかの設定を有効にしてください。

            // --- 国内サービス (cn-zhangjiakou) の場合 ---
            .setEndpoint("cloudcontrol.vpc-proxy.aliyuncs.com")
            .setHost("cloudcontrol.aliyuncs.com")

            // --- 国際サービス (ap-southeast-1) の場合 ---
            // 上記の国内サービス用の設定をコメントアウトし、
            // 以下の2行のコメントを解除してください。
            // .setEndpoint("cloudcontrol-vpc.ap-southeast-1.aliyuncs.com")
            // .setHost("cloudcontrol.ap-southeast-1.aliyuncs.com")
            
            .setProtocol("https");
        Client client = new Client(config);
        // 以降の API 呼び出しにはクライアントオブジェクトを使用します。
        try {
            var response = client.listResources(...);
            System.out.println("Request successful: " + response.getBody().getRequestId());
        } catch (Exception e) {
            System.err.println("Request failed: " + e.getMessage());
        }
    }
}